Backend: Error Monitoring
Go
Java
JS
Python
Ruby
Rust
Backend: Logging
Go
JS
Python
Ruby
Java
Rust
Hosting Providers
Backend: Tracing
Go
Node.js
Python
Rust
Native OpenTelemetry
Fullstack Frameworks
Overview
Self Host & Local Dev
Menu
Node.js Error Monitoring
Learn how to set up highlight.io in Node.js.
1
Add `tracingOrigins` to your client Highlight snippet.
This backend SDK requires one of the Highlight frontend SDKs to be installed, so please make sure you've followed the fullstack mapping guide first.
H.init("<YOUR_PROJECT_ID>", {
tracingOrigins: ['localhost', 'example.myapp.com/backend'],
networkRecording: {
enabled: true,
recordHeadersAndBody: true,
},
});
2
Install the relevant Highlight SDK(s).
Install @highlight-run/node with your package manager.
npm install --save @highlight-run/node
3
Initialize the Highlight JS SDK.
Initialize the Highlight JS SDK with your project ID.
import { H } from '@highlight-run/node'
H.init({
projectID: '<YOUR_PROJECT_ID>',
serviceName: '<YOUR_SERVICE_NAME>',
environment: 'production',
})
4
Optionally, report manual errors in your app.
If you need to report exceptions outside of a handler, use the Highlight SDK.
const parsed = H.parseHeaders(request.headers)
H.consumeError(error, parsed?.secureSessionId, parsed?.requestId)
5
Verify that your SDK is reporting errors.
You'll want to throw an exception in one of your Node.js handlers. Access the API handler and make sure the error shows up in Highlight.
const onError = (request, error) => {
const parsed = H.parseHeaders(request.headers)
H.consumeError(error, parsed.secureSessionId, parsed.requestId)
}
const main = () => {
try {
throw new Error('example error!')
} catch (e) {
onError(e)
}
}
6
Set up logging.
With the JS SDKs, your logs are reported automatically from console methods. See the JS logging setup guide for more details.