@sentry/node
Version:
Sentry Node SDK using OpenTelemetry for performance instrumentation
33 lines (32 loc) • 1.58 kB
TypeScript
import { Tracer } from '@opentelemetry/api';
import { BasicTracerProvider } from '@opentelemetry/sdk-trace-base';
import { DynamicSamplingContext, Scope, TraceContext } from '@sentry/core';
import { ServerRuntimeClient } from '@sentry/core';
import { NodeClientOptions } from '../types';
/** A client for using Sentry with Node & OpenTelemetry. */
export declare class NodeClient extends ServerRuntimeClient<NodeClientOptions> {
traceProvider: BasicTracerProvider | undefined;
private _tracer;
private _clientReportInterval;
private _clientReportOnExitFlushListener;
private _logOnExitFlushListener;
constructor(options: NodeClientOptions);
/*Get the OTEL tracer. */
readonly tracer: Tracer;
flush(timeout?: number): Promise<boolean>;
close(timeout?: number | undefined): PromiseLike<boolean>;
/**
* Will start tracking client reports for this client.
*
* NOTICE: This method will create an interval that is periodically called and attach a `process.on('beforeExit')`
* hook. To clean up these resources, call `.close()` when you no longer intend to use the client. Not doing so will
* result in a memory leak.
*/
startClientReportTracking(): void;
/** Custom implementation for OTEL, so we can handle scope-span linking. */
protected _getTraceInfoFromScope(scope: Scope | undefined): [
/*dynamicSamplingContext*/ Partial<DynamicSamplingContext> | undefined,
/*traceContext*/ TraceContext | undefined
];
}
//# sourceMappingURL=client.d.ts.map