Star us on GitHub
Star
Menu

Firebase Error Monitoring

Learn how to set up highlight.io in Firebase Cloud Functions.

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, }, });
Copy
2

Install the relevant Highlight SDK(s).

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

npm install --save @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>', serviceName: '<YOUR_SERVICE_NAME>', environment: 'production', })
Copy
4

Add the Firebase Highlight integration.

Use the Node Highlight SDK in your response handler.

const highlightNode = require('@highlight-run/node') // Callable function wrapper exports.exampleCallable = functions.https.onCall( highlightNode.Handlers.firebaseCallableFunctionHandler( (data, context) => { // ... your handler code here return { result: 'useful result!' } }, { projectID: '<YOUR_PROJECT_ID>', serviceName: 'my-firebase-app', serviceVersion: 'git-sha', environment: 'production' }, ), ) // Http function wrapper exports.exampleHttp = functions.https.onRequest( highlightNode.Handlers.firebaseHttpFunctionHandler( (req, res) => { // ... your handler code here res.json({ result: 'useful result!' }) }, { projectID: '<YOUR_PROJECT_ID>' }, ), )
Copy
5

Verify that your SDK is reporting errors.

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

exports.exampleCallable = functions.https.onCall( highlightNode.Handlers.firebaseCallableFunctionHandler( (data, context) => { throw new Error('example error!') return { result: 'useful result!' } }, { projectID: '<YOUR_PROJECT_ID>', serviceName: 'my-firebase-app', serviceVersion: 'git-sha', environment: 'production' }, ), )
Copy
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.