Star us on GitHub

Native OpenTelemetry Error Monitoring

Learn how to export errors to via one of the OpenTelemetry SDKs.
Export your errors to the collector.

We host an OpenTelemetry collector endpoint at and Configure your OpenTelemetry SDK to send errors via OTLP HTTPS to this endpoint. Your Highlight Project ID should be included as an attribute with the highlight.project_id key. This configuration will depend on which SDK you use in your app.

import { NodeSDK } from '@opentelemetry/sdk-node' import { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-http'; import { Resource } from '@opentelemetry/resources' import type { Attributes } from '@opentelemetry/api' const attributes: Attributes = { 'highlight.project_id': '<YOUR_PROJECT_ID>' } const sdk = new NodeSDK({ resource: new Resource(attributes), traceExporter: new OTLPTraceExporter({ url: '' }) }); const tracer = trace.getTracer('my-service'); sdk.start(); const main = () => { const span = tracer.startSpan('main') span.setAttributes({ ['highlight.session_id']: 'abc123', ['highlight.trace_id']: 'def456', customer: 'vadim', customer_id: 1234 }) try { throw new Error('This is an example error'); } catch (error) { span.recordException(error) } finally { span.end() } }; main();
Verify your errors are being recorded.

Verify that the backend error handling works by triggering the code that reports the error to highlight and visiting the highlight errors portal.