Files
website/server/plugins/log-errors.ts
William Oldham 47c979645f
Some checks failed
Build and Publish Docker Image / Build and Publish (amd64) (push) Has been cancelled
Build and Publish Docker Image / Build and Publish (arm64) (push) Has been cancelled
chore(logs): simplify error logging
2026-08-29 19:22:03 +01:00

19 lines
539 B
TypeScript

import type { H3Error } from 'h3';
export default defineNitroPlugin((nitroApp) => {
nitroApp.hooks.hook('error', (err, { event }) => {
const error = err as Partial<H3Error>;
const statusCode = error.statusCode ?? 500;
// Skip expected client errors (404, 401, 422, redirects, ...).
if (statusCode < 500) {
return;
}
const where = event ? `${event.method} ${event.path}` : 'non-request';
const tag = error.unhandled ? '[unhandled]' : '';
console.error(`[server error] ${tag} ${statusCode} ${where}:`, err);
});
});