Http
Capture spans & breadcrumbs for http requests. (default)
This integration only works inside server environments (Node.js, Bun, Deno).
Import name: Sentry.httpIntegration
This integration is enabled by default. If you'd like to modify your default integrations, read this.
The httpIntegration
does two things:
- It captures breadcrumbs for HTTP requests.
- It captures spans for outgoing HTTP requests.
Type: boolean
If set to false, no breadcrumbs will be captured.
Type: (url: string, request: RequestOptions) => boolean
Allows you to define a method to filter out outgoing requests based on the URL. If the method returns true
, no spans or breadcrumbs will be captured for the outgoing request.
The callback function receives two arguments:
url
: The full URL of the outgoing request, including the protocol, host, port, path and query string. For example:https://example.com/users?name=John
.request
: An object of typeRequestOptions
containing the outgoing request's options. You can use this to filter on properties like the request method or headers.
Type: (urlPath: string, request: IncomingMessage) => boolean
Allows you to define a method to filter out incoming requests based on the URL. If the method returns true
, no span or transaction will be captured for the incoming request.
The callback function receives two arguments:
urlPath
: The URL path of the incoming request, including the query string if available. For example:/users?name=John
.request
: An object of typeIncomingMessage
containing the incoming request. You can use this to filter on properties like the request method or headers.
You can also pass some hooks through to the underlying OpenTelemetry Instrumentation:
httpIntegration({
instrumentation?: {
requestHook?: (span: Span, req: ClientRequest | HTTPModuleRequestIncomingMessage) => void;
responseHook?: (span: Span, response: HTTPModuleRequestIncomingMessage | ServerResponse) => void;
applyCustomAttributesOnSpan?: (
span: Span,
request: ClientRequest | HTTPModuleRequestIncomingMessage,
response: HTTPModuleRequestIncomingMessage | ServerResponse,
) => void;
});
Our documentation is open source and available on GitHub. Your contributions are welcome, whether fixing a typo (drat!) or suggesting an update ("yeah, this would be better").