Skip to main content
ComponentsCode Profiler
Availability8.6.0 or later
This monitoring can collect all types of custom and standard errors (AssertionError, EvalError, SyntaxError, RangeError, ReferenceError, TypeError, URIError) and all system errors including:

System Errors

Unhandled process-level failures

Configuration

Enabling exception monitoring

Handled exceptions

Reporting caught errors manually

Warning Monitoring

Bugs and security warnings

System Errors

Configuration

‼ Unhandled exceptions

Caught by process

If you already catching all unhandled exceptions by listening to the uncaughtException event on the process then you should explicitly collect the exception in your exception handler like this and disable config.monitoring.unhandledExceptions:

Uncaught by process

If you don’t catch unhandled exceptions yet, you have 2 options to use our monitoring to catch them:

Exit on Error

If you set the exitOnError:true then, once the exception caught, we will exit from the process with id 1 (process.exit(1)). Node.js does recommend to exit from the process following an unhandled exception. Correct configuration for this scenario:

Callback on Error

If you set the exitOnError:false but provide a function callback to the callbackOnError then, once the exception is caught, we will execute your callback by passing the Error instance as the only parameter. Node.js doesn’t recommend to proceed with any logic if an unhandled exception occurs. Correct configuration for this scenario:

Disable automatic unhandled exceptions monitoring

You can disable this monitoring through GermainAPMConfiguration:

Handled exceptions

You can collect an exception / an error explicitly by adding the following code to your handled exception logic:

Warning Monitoring

By default GermainUX monitors Node.js warnings (bad coding practices, bugs, or security vulnerabilities). You can disable this monitoring through GermainAPMConfiguration:

Get Help

Contact GermainUX Support

The GermainUX team helps you get up and running faster, empower your team, turn data into actionable insights, and optimize performance to deliver measurable business outcomes.

Can't find what you need?

Search all GermainUX docs with Ctrl + K, or use the feedback buttons at the bottom of this page to tell us what is missing.

The content of this document is proprietary to GERMAIN SOFTWARE.