Skip to main content

Posthog (frontend app tracking)

Exception Tracking

We've enabled automatic exception capturing in PostHog to help monitor and debug errors in the application.

PostHog automatically captures $exception events when errors are thrown by wrapping the window.onerror and window.onunhandledrejection listeners.

Additionally; our ErrorBoundary is configured to capture and log any unhandled exceptions.

Viewing Exceptions

All captured exceptions can be viewed in the PostHog Error Tracking dashboard.

Manual Exception Logging

For cases where you need to manually log exceptions, use the usePosthogExceptions hook:

import { usePosthogExceptions } from "src/utils/hooks/usePosthogExceptions";

const ExampleComponent = () => {
const logException = usePosthogExceptions();

const handleError = () => {
try {
// We want to know if the code here fails
} catch (error) {
logException(error, {
context: "Additional error info",
component: "ExampleComponent",
});
}
};

// ...
};

Exception Parameters

  • error: The Error object to log
  • info (optional): Additional context as key-value pairs

Fallback Behaviour

If PostHog isn't initialised, errors are logged to the console as a fallback.

Best Practices

  • Use for unexpected errors and exceptions
  • Include relevant context in the info parameter
  • Don't log secure information
  • Don't log expected errors