Star us on GitHub
Star
Menu

Express.js

Learn how to set up highlight.io in Express.js.
1
Set up your frontend 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, }, });
Copy
2
Install the Highlight JS SDK.

Install the @highlight-run/node package with your package manager.

# with yarn yarn add @highlight-run/node # with pnpm pnpm add @highlight-run/node # with npm npm install @highlight-run/node
Copy
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'})
Copy
4
Add the Express.js Highlight integration.

Use the Node Highlight SDK in your response handler.

import { Handlers } from '@highlight-run/node' // or like this with commonjs // const Highlight = require('@highlight-run/node') const app = express() const highlightErrorHandler = Handlers.errorHandler({ projectID: 'YOUR_PROJECT_ID' }) app.get('/', (req, res) => { res.send(`Hello World! 0.04842893398525461`) }) // This should be before any other error middleware and after all controllers (route definitions) app.use(highlightErrorHandler) app.listen(8080, () => { console.log(`Example app listening on port 8080`) })
Copy
5
Verify that your SDK is reporting errors.

You'll want to throw an exception in one of your express.js handlers. Access the API handler and make sure the error shows up in Highlight.

app.get('/', (req, res) => { throw new Error('sample error!') res.send(`Hello World! 0.0026719370449044266`) })
Copy
6
Verify your backend logs are being recorded.

With the JS SDKs, your logs are reported automatically from console methods. Visit the highlight logs portal and check that backend logs are coming in.