handleError for Server Error Logging
Catch unexpected server errors and send them to your logging or monitoring service.
handleError for Server Error Logging is a free Sveltejs Academy lesson on CoddyKit — lesson 2 of 4. You can read the complete lesson below for free — then practise it hands-on in the browser with a built-in code editor and a 24/7 AI tutor. It is part of the Sveltejs Academy learning path, one of 4 lessons in the course, and your progress syncs across the web and the CoddyKit app.
Catching Errors
Unexpected errors in load or endpoints can be observed via handleError.
Export handleError
Export from hooks.server.js.
export async function handleError({ error, event }) {
console.error(error);
return { message: "Something went wrong" };
}Returned Object
The returned object is available as $page.error in the error page.
Send to Logging
Forward errors to Sentry, Datadog, or any logging service from this hook.
Avoid Leaking Details
Do not return raw error messages to clients in production. Generic message + tracking ID is safer.
Tracking IDs
Generate a unique ID for each error, return it to the user, and log internally for support.
Client-Side Variant
hooks.client.js also supports handleError for client-only errors.
Differentiating Errors
Expected errors (from error()) skip handleError. Only unexpected errors trigger it.
Async Logging
Logging can be async; do not block the response if your logger is slow.
Stack Traces
Include stack traces in your logs; they are crucial for debugging.
Custom Error Pages
Combine handleError with +error.svelte for a great user-facing experience.
Quick Check
When does handleError fire?
Recap
handleError in hooks.server.js logs unexpected errors centrally and shapes the user-visible message.
Frequently asked questions
Is the “handleError for Server Error Logging” lesson free?
Yes — the full text of “handleError for Server Error Logging” is free to read here on the web, and the Sveltejs Academy course includes 4 lessons in total. To practise it interactively (a built-in code editor and a 24/7 AI tutor) and unlock the rest of the Sveltejs Academy course, upgrade to CoddyKit PRO.
What will I learn in “handleError for Server Error Logging”?
Catch unexpected server errors and send them to your logging or monitoring service. You practise Sveltejs Academy with hands-on code you run directly in the browser, and a 24/7 AI tutor answers your questions as you work through the lesson.
Do I need any experience to start Sveltejs Academy?
No prior experience is required. Sveltejs Academy on CoddyKit is structured for beginners through advanced learners; this is — lesson 2 of 4, so you can start here or from the beginning and move at your own pace.
How long does the “handleError for Server Error Logging” lesson take?
Most CoddyKit lessons take about 5–10 minutes. Each one is bite-sized and interactive, so you make steady progress and pick up exactly where you left off across the web and the app.
Can I write and run code in this Sveltejs Academy lesson?
Yes. Every Sveltejs Academy lesson includes a built-in code editor, so you write and run real code right in your browser and get instant AI feedback — no local setup required.
All lessons in this course
- The handle() Hook: Middleware for Requests
- handleError for Server Error Logging
- The init() Hook
- Sequence() for Composing Hooks