import type * as api from '@opentelemetry/api'; import { InstrumentationConfig } from '@opentelemetry/instrumentation'; export interface SpanConnectionConfig { serviceName?: string; connectString?: string; hostName?: string; port?: number; user?: string; protocol?: string; instanceName?: string; serverMode?: string; pdbName?: string; poolMin?: number; poolMax?: number; poolIncrement?: number; } export interface OracleRequestHookInformation { inputArgs: any; connection: SpanConnectionConfig; } export interface OracleInstrumentationExecutionRequestHook { (span: api.Span, queryInfo: OracleRequestHookInformation): void; } export interface OracleResponseHookInformation { data: any; } export interface OracleInstrumentationExecutionResponseHook { (span: api.Span, resultInfo: OracleResponseHookInformation): void; } export interface OracleInstrumentationConfig extends InstrumentationConfig { /** * If true, an attribute containing the execute method * bind values will be attached the spans generated. * It can potentially record PII data and should be used with caution. * * @default false */ enhancedDatabaseReporting?: boolean; /** * If true, db.statement will have sql which could potentially contain * sensitive unparameterized data in the spans generated. * * @default false */ dbStatementDump?: boolean; /** * Hook that allows adding custom span attributes or updating the * span's name based on the data about the query to execute. * * @default undefined */ requestHook?: OracleInstrumentationExecutionRequestHook; /** * Hook that allows adding custom span attributes based on the data * returned from "execute" actions. * * @default undefined */ responseHook?: OracleInstrumentationExecutionResponseHook; /** * If true, requires a parent span to create new spans. * * @default false */ requireParentSpan?: boolean; /** * Automatic propagation of trace context using V$SESSION.ACTION. * * @default false */ propagateTraceContextToSessionAction?: boolean; } //# sourceMappingURL=types.d.ts.map