agent: Set missing CONTACT_EMAIL_TO environment variable
This commit is contained in:
+20
-1
@@ -106,7 +106,26 @@ export const onRequest = defineMiddleware(async (context, next) => {
|
||||
if (status >= 500) {
|
||||
logger.error('middleware', `SSR error ${status}`, { method, path, status, durationMs });
|
||||
} else if (status === 404) {
|
||||
logger.warn('middleware', `Not found`, { method, path, status, durationMs });
|
||||
// 404s are dominated by bots/scanners probing malformed or garbage paths
|
||||
// (e.g. "/)"), which would otherwise flood warn-level logs and trip alerts.
|
||||
// Treat a 404 as a warning only when it likely originated from our own site
|
||||
// (same-origin referer) — that indicates a real broken internal link worth
|
||||
// fixing. Everything else (no referer / external referer) is logged at info.
|
||||
const referer = context.request.headers.get('referer');
|
||||
let internalNavigation = false;
|
||||
if (referer) {
|
||||
try {
|
||||
internalNavigation = new URL(referer).hostname === context.url.hostname;
|
||||
} catch {
|
||||
// Malformed referer header → treat as external/untrusted
|
||||
}
|
||||
}
|
||||
const notFoundMeta = { method, path, status, durationMs, referer: referer ?? undefined };
|
||||
if (internalNavigation) {
|
||||
logger.warn('middleware', `Not found (broken internal link)`, notFoundMeta);
|
||||
} else {
|
||||
logger.info('middleware', `Not found`, notFoundMeta);
|
||||
}
|
||||
} else if (status >= 400) {
|
||||
logger.warn('middleware', `Client error ${status}`, { method, path, status, durationMs });
|
||||
} else {
|
||||
|
||||
Reference in New Issue
Block a user