@microsoft/opentelemetry 0.1.0-beta.1 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +27 -11
- package/dist/commonjs/a365/configuration/A365Configuration.d.ts +32 -0
- package/dist/commonjs/a365/configuration/A365Configuration.d.ts.map +1 -1
- package/dist/commonjs/a365/configuration/A365Configuration.js +73 -4
- package/dist/commonjs/a365/configuration/A365Configuration.js.map +1 -1
- package/dist/commonjs/a365/configuration/A365ConfigurationOptions.d.ts +49 -0
- package/dist/commonjs/a365/configuration/A365ConfigurationOptions.d.ts.map +1 -1
- package/dist/commonjs/a365/constants.d.ts +1 -1
- package/dist/commonjs/a365/constants.d.ts.map +1 -1
- package/dist/commonjs/a365/hosting/types.d.ts +1 -1
- package/dist/commonjs/a365/hosting/types.d.ts.map +1 -1
- package/dist/commonjs/azureMonitor/index.d.ts +9 -1
- package/dist/commonjs/azureMonitor/index.d.ts.map +1 -1
- package/dist/commonjs/azureMonitor/index.js +13 -18
- package/dist/commonjs/azureMonitor/index.js.map +1 -1
- package/dist/commonjs/azureMonitor/metrics/quickpulse/liveMetrics.js +1 -1
- package/dist/commonjs/azureMonitor/metrics/quickpulse/liveMetrics.js.map +1 -1
- package/dist/commonjs/azureMonitor/metrics/quickpulse/utils.d.ts.map +1 -1
- package/dist/commonjs/azureMonitor/metrics/quickpulse/utils.js +4 -6
- package/dist/commonjs/azureMonitor/metrics/quickpulse/utils.js.map +1 -1
- package/dist/commonjs/distro/distro.d.ts +3 -1
- package/dist/commonjs/distro/distro.d.ts.map +1 -1
- package/dist/commonjs/distro/distro.js +128 -45
- package/dist/commonjs/distro/distro.js.map +1 -1
- package/dist/commonjs/genai/instrumentations/langchain/langchainTraceInstrumentor.d.ts +3 -1
- package/dist/commonjs/genai/instrumentations/langchain/langchainTraceInstrumentor.d.ts.map +1 -1
- package/dist/commonjs/genai/instrumentations/langchain/langchainTraceInstrumentor.js +60 -9
- package/dist/commonjs/genai/instrumentations/langchain/langchainTraceInstrumentor.js.map +1 -1
- package/dist/commonjs/sdkstats/index.d.ts +18 -0
- package/dist/commonjs/sdkstats/index.d.ts.map +1 -0
- package/dist/commonjs/sdkstats/index.js +37 -0
- package/dist/commonjs/sdkstats/index.js.map +1 -0
- package/dist/commonjs/sdkstats/manager.d.ts +31 -0
- package/dist/commonjs/sdkstats/manager.d.ts.map +1 -0
- package/dist/commonjs/sdkstats/manager.js +190 -0
- package/dist/commonjs/sdkstats/manager.js.map +1 -0
- package/dist/commonjs/sdkstats/metrics.d.ts +20 -0
- package/dist/commonjs/sdkstats/metrics.d.ts.map +1 -0
- package/dist/commonjs/sdkstats/metrics.js +84 -0
- package/dist/commonjs/sdkstats/metrics.js.map +1 -0
- package/dist/commonjs/sdkstats/state.d.ts +58 -0
- package/dist/commonjs/sdkstats/state.d.ts.map +1 -0
- package/dist/commonjs/sdkstats/state.js +94 -0
- package/dist/commonjs/sdkstats/state.js.map +1 -0
- package/dist/commonjs/types.d.ts +6 -2
- package/dist/commonjs/types.d.ts.map +1 -1
- package/dist/commonjs/types.js +5 -1
- package/dist/commonjs/types.js.map +1 -1
- package/dist/commonjs/utils/common.js +2 -2
- package/dist/commonjs/utils/common.js.map +1 -1
- package/dist/commonjs/utils/index.d.ts +2 -0
- package/dist/commonjs/utils/index.d.ts.map +1 -1
- package/dist/commonjs/utils/index.js +5 -1
- package/dist/commonjs/utils/index.js.map +1 -1
- package/dist/commonjs/utils/opentelemetryInstrumentationPatcher.d.ts.map +1 -0
- package/dist/commonjs/{azureMonitor/utils → utils}/opentelemetryInstrumentationPatcher.js +13 -11
- package/dist/commonjs/utils/opentelemetryInstrumentationPatcher.js.map +1 -0
- package/dist/commonjs/{azureMonitor/utils → utils}/statsbeat.d.ts +1 -1
- package/dist/commonjs/utils/statsbeat.d.ts.map +1 -0
- package/dist/commonjs/{azureMonitor/utils → utils}/statsbeat.js +8 -8
- package/dist/commonjs/utils/statsbeat.js.map +1 -0
- package/dist/esm/a365/configuration/A365Configuration.d.ts +32 -0
- package/dist/esm/a365/configuration/A365Configuration.d.ts.map +1 -1
- package/dist/esm/a365/configuration/A365Configuration.js +73 -4
- package/dist/esm/a365/configuration/A365Configuration.js.map +1 -1
- package/dist/esm/a365/configuration/A365ConfigurationOptions.d.ts +49 -0
- package/dist/esm/a365/configuration/A365ConfigurationOptions.d.ts.map +1 -1
- package/dist/esm/a365/constants.d.ts +1 -1
- package/dist/esm/a365/constants.d.ts.map +1 -1
- package/dist/esm/a365/hosting/types.d.ts +1 -1
- package/dist/esm/a365/hosting/types.d.ts.map +1 -1
- package/dist/esm/azureMonitor/index.d.ts +9 -1
- package/dist/esm/azureMonitor/index.d.ts.map +1 -1
- package/dist/esm/azureMonitor/index.js +12 -18
- package/dist/esm/azureMonitor/index.js.map +1 -1
- package/dist/esm/azureMonitor/metrics/quickpulse/liveMetrics.js +1 -1
- package/dist/esm/azureMonitor/metrics/quickpulse/liveMetrics.js.map +1 -1
- package/dist/esm/azureMonitor/metrics/quickpulse/utils.d.ts.map +1 -1
- package/dist/esm/azureMonitor/metrics/quickpulse/utils.js +5 -7
- package/dist/esm/azureMonitor/metrics/quickpulse/utils.js.map +1 -1
- package/dist/esm/distro/distro.d.ts +3 -1
- package/dist/esm/distro/distro.d.ts.map +1 -1
- package/dist/esm/distro/distro.js +129 -46
- package/dist/esm/distro/distro.js.map +1 -1
- package/dist/esm/genai/instrumentations/langchain/langchainTraceInstrumentor.d.ts +3 -1
- package/dist/esm/genai/instrumentations/langchain/langchainTraceInstrumentor.d.ts.map +1 -1
- package/dist/esm/genai/instrumentations/langchain/langchainTraceInstrumentor.js +27 -9
- package/dist/esm/genai/instrumentations/langchain/langchainTraceInstrumentor.js.map +1 -1
- package/dist/esm/sdkstats/index.d.ts +18 -0
- package/dist/esm/sdkstats/index.d.ts.map +1 -0
- package/dist/esm/sdkstats/index.js +20 -0
- package/dist/esm/sdkstats/index.js.map +1 -0
- package/dist/esm/sdkstats/manager.d.ts +31 -0
- package/dist/esm/sdkstats/manager.d.ts.map +1 -0
- package/dist/esm/sdkstats/manager.js +186 -0
- package/dist/esm/sdkstats/manager.js.map +1 -0
- package/dist/esm/sdkstats/metrics.d.ts +20 -0
- package/dist/esm/sdkstats/metrics.d.ts.map +1 -0
- package/dist/esm/sdkstats/metrics.js +77 -0
- package/dist/esm/sdkstats/metrics.js.map +1 -0
- package/dist/esm/sdkstats/state.d.ts +58 -0
- package/dist/esm/sdkstats/state.d.ts.map +1 -0
- package/dist/esm/sdkstats/state.js +83 -0
- package/dist/esm/sdkstats/state.js.map +1 -0
- package/dist/esm/types.d.ts +6 -2
- package/dist/esm/types.d.ts.map +1 -1
- package/dist/esm/types.js +5 -1
- package/dist/esm/types.js.map +1 -1
- package/dist/esm/utils/common.js +2 -2
- package/dist/esm/utils/common.js.map +1 -1
- package/dist/esm/utils/index.d.ts +2 -0
- package/dist/esm/utils/index.d.ts.map +1 -1
- package/dist/esm/utils/index.js +2 -0
- package/dist/esm/utils/index.js.map +1 -1
- package/dist/esm/utils/opentelemetryInstrumentationPatcher.d.ts.map +1 -0
- package/dist/esm/{azureMonitor/utils → utils}/opentelemetryInstrumentationPatcher.js +13 -11
- package/dist/esm/utils/opentelemetryInstrumentationPatcher.js.map +1 -0
- package/dist/esm/{azureMonitor/utils → utils}/statsbeat.d.ts +1 -1
- package/dist/esm/utils/statsbeat.d.ts.map +1 -0
- package/dist/esm/{azureMonitor/utils → utils}/statsbeat.js +8 -8
- package/dist/esm/utils/statsbeat.js.map +1 -0
- package/package.json +2 -2
- package/dist/commonjs/azureMonitor/utils/opentelemetryInstrumentationPatcher.d.ts.map +0 -1
- package/dist/commonjs/azureMonitor/utils/opentelemetryInstrumentationPatcher.js.map +0 -1
- package/dist/commonjs/azureMonitor/utils/statsbeat.d.ts.map +0 -1
- package/dist/commonjs/azureMonitor/utils/statsbeat.js.map +0 -1
- package/dist/esm/azureMonitor/utils/opentelemetryInstrumentationPatcher.d.ts.map +0 -1
- package/dist/esm/azureMonitor/utils/opentelemetryInstrumentationPatcher.js.map +0 -1
- package/dist/esm/azureMonitor/utils/statsbeat.d.ts.map +0 -1
- package/dist/esm/azureMonitor/utils/statsbeat.js.map +0 -1
- /package/dist/commonjs/{azureMonitor/utils → utils}/opentelemetryInstrumentationPatcher.d.ts +0 -0
- /package/dist/esm/{azureMonitor/utils → utils}/opentelemetryInstrumentationPatcher.d.ts +0 -0
|
@@ -11,12 +11,15 @@ import { MetricHandler } from "../azureMonitor/metrics/index.js";
|
|
|
11
11
|
import { TraceHandler } from "../azureMonitor/traces/handler.js";
|
|
12
12
|
import { LogHandler } from "../azureMonitor/logs/index.js";
|
|
13
13
|
import { AZURE_MONITOR_OPENTELEMETRY_VERSION } from "../types.js";
|
|
14
|
-
import { patchOpenTelemetryInstrumentationEnable } from "../
|
|
14
|
+
import { patchOpenTelemetryInstrumentationEnable } from "../utils/opentelemetryInstrumentationPatcher.js";
|
|
15
15
|
import { parseResourceDetectorsFromEnvVar } from "../utils/common.js";
|
|
16
|
-
import {
|
|
16
|
+
import { getInstance as getStatsbeatInstance } from "../utils/statsbeat.js";
|
|
17
|
+
import { setupAzureMonitorComponents, hasAzureMonitorConnectionString, validateAzureMonitorConfig, getAzureMonitorStatsbeatFeatures, } from "../azureMonitor/index.js";
|
|
17
18
|
import { isOtlpEnabled, createOtlpComponents } from "../otlp/index.js";
|
|
18
19
|
import { A365Configuration, Agent365Exporter, A365SpanProcessor } from "../a365/index.js";
|
|
19
|
-
import {
|
|
20
|
+
import { configureA365Logger } from "../a365/logging.js";
|
|
21
|
+
import { SdkStatsDistroFeature, SdkStatsManager, setSdkStatsFeature } from "../sdkstats/index.js";
|
|
22
|
+
import { MICROSOFT_OPENTELEMETRY_VERSION, APPLICATIONINSIGHTS_SDKSTATS_DISABLED, StatsbeatFeature, } from "../types.js";
|
|
20
23
|
import { createInstrumentations, createSampler, createViews } from "./instrumentations.js";
|
|
21
24
|
import { Logger } from "../shared/logging/index.js";
|
|
22
25
|
process.env["AZURE_MONITOR_DISTRO_VERSION"] = AZURE_MONITOR_OPENTELEMETRY_VERSION;
|
|
@@ -87,7 +90,9 @@ export function _applyA365InstrumentationDefaults(instrumentationOptions, userIn
|
|
|
87
90
|
* `APPLICATIONINSIGHTS_CONNECTION_STRING` env var is set; explicitly disable
|
|
88
91
|
* with `options.azureMonitor.enabled = false`)
|
|
89
92
|
* - OTLP HTTP (when `OTEL_EXPORTER_OTLP_ENDPOINT` is set)
|
|
90
|
-
* - A365 (when
|
|
93
|
+
* - A365 (when the resolved A365 config has `enabled=true`; the
|
|
94
|
+
* `ENABLE_A365_OBSERVABILITY_EXPORTER` env var is only considered when
|
|
95
|
+
* `options.a365` is provided)
|
|
91
96
|
*
|
|
92
97
|
* @param options - Microsoft OpenTelemetry configuration options
|
|
93
98
|
*/
|
|
@@ -95,18 +100,63 @@ export function useMicrosoftOpenTelemetry(options) {
|
|
|
95
100
|
const config = new InternalConfig(options);
|
|
96
101
|
patchOpenTelemetryInstrumentationEnable();
|
|
97
102
|
const a365Config = new A365Configuration(options?.a365);
|
|
103
|
+
// Apply the resolved A365 log level (programmatic option > env var) so the
|
|
104
|
+
// A365 logger filter reflects user-supplied configuration instead of being
|
|
105
|
+
// pinned to whatever the env var was at module-load time.
|
|
106
|
+
if (a365Config.logLevel !== undefined) {
|
|
107
|
+
configureA365Logger({ logLevel: a365Config.logLevel });
|
|
108
|
+
}
|
|
98
109
|
// Azure Monitor is enabled when configured programmatically or via JSON config.
|
|
99
110
|
// An explicit `enabled: false` always wins, even if a connection string is present.
|
|
100
111
|
// Connection-string validation is delegated to the Azure Monitor module.
|
|
101
112
|
const azureMonitorRequested = options?.azureMonitor?.enabled !== false &&
|
|
102
113
|
(!!options?.azureMonitor || hasAzureMonitorConnectionString(config));
|
|
103
114
|
const azureMonitorEnabled = azureMonitorRequested && validateAzureMonitorConfig(config);
|
|
115
|
+
// ── SDKStats: record distro feature bits for ALL paths ──────────────────
|
|
116
|
+
// ── SDKStats: record distro feature bits for ALL paths ──────────────────
|
|
117
|
+
// These bits are emitted via SDKStats regardless of which exporter is
|
|
118
|
+
// active. When Azure Monitor is enabled the exporter package's own
|
|
119
|
+
// Statsbeat picks them up via `AZURE_MONITOR_STATSBEAT_FEATURES`; when
|
|
120
|
+
// it is not, the standalone `SdkStatsManager` initialised below carries
|
|
121
|
+
// them to the well-known Statsbeat ingestion endpoint.
|
|
122
|
+
const otlpActive = isOtlpEnabled();
|
|
123
|
+
setSdkStatsFeature(StatsbeatFeature.DISTRO);
|
|
124
|
+
if (a365Config.enabled) {
|
|
125
|
+
setSdkStatsFeature(SdkStatsDistroFeature.A365_EXPORT);
|
|
126
|
+
}
|
|
127
|
+
if (otlpActive) {
|
|
128
|
+
setSdkStatsFeature(SdkStatsDistroFeature.OTLP_EXPORT);
|
|
129
|
+
}
|
|
104
130
|
// Reset dispose callback to avoid stale references from a previous initialization
|
|
105
131
|
disposeAzureMonitor = undefined;
|
|
106
132
|
// ── Azure Monitor components (statsbeat, browser SDK loader, etc.) ─
|
|
107
133
|
if (azureMonitorEnabled) {
|
|
108
134
|
disposeAzureMonitor = setupAzureMonitorComponents(config);
|
|
109
135
|
}
|
|
136
|
+
// ── Statsbeat (feature & instrumentation tracking for all paths) ──
|
|
137
|
+
const statsbeatInstrumentations = {
|
|
138
|
+
azureSdk: config.instrumentationOptions?.azureSdk?.enabled,
|
|
139
|
+
mongoDb: config.instrumentationOptions?.mongoDb?.enabled,
|
|
140
|
+
mySql: config.instrumentationOptions?.mySql?.enabled,
|
|
141
|
+
postgreSql: config.instrumentationOptions?.postgreSql?.enabled,
|
|
142
|
+
redis: config.instrumentationOptions?.redis?.enabled,
|
|
143
|
+
bunyan: config.instrumentationOptions?.bunyan?.enabled,
|
|
144
|
+
winston: config.instrumentationOptions?.winston?.enabled,
|
|
145
|
+
};
|
|
146
|
+
const statsbeatFeatures = {
|
|
147
|
+
...(azureMonitorEnabled
|
|
148
|
+
? getAzureMonitorStatsbeatFeatures(config)
|
|
149
|
+
: {
|
|
150
|
+
browserSdkLoader: false,
|
|
151
|
+
aadHandling: false,
|
|
152
|
+
diskRetry: false,
|
|
153
|
+
aksResourceDetectorPopulation: false,
|
|
154
|
+
}),
|
|
155
|
+
a365: a365Config.enabled,
|
|
156
|
+
otlp: otlpActive,
|
|
157
|
+
customerSdkStats: process.env[APPLICATIONINSIGHTS_SDKSTATS_DISABLED]?.toLowerCase() === "true",
|
|
158
|
+
};
|
|
159
|
+
getStatsbeatInstance().setStatsbeatFeatures(statsbeatInstrumentations, statsbeatFeatures);
|
|
110
160
|
// ── Register global providers ─────────────────────────────────────
|
|
111
161
|
// Remove global providers in OpenTelemetry, these would be overridden if present
|
|
112
162
|
metrics.disable();
|
|
@@ -153,7 +203,7 @@ export function useMicrosoftOpenTelemetry(options) {
|
|
|
153
203
|
...(options?.metricReaders || []),
|
|
154
204
|
];
|
|
155
205
|
// ── OTLP HTTP exporters (enabled via OTEL_EXPORTER_OTLP_ENDPOINT) ─
|
|
156
|
-
if (
|
|
206
|
+
if (otlpActive) {
|
|
157
207
|
const otlp = createOtlpComponents();
|
|
158
208
|
if (otlp.spanProcessor) {
|
|
159
209
|
spanProcessors.push(otlp.spanProcessor);
|
|
@@ -165,28 +215,43 @@ export function useMicrosoftOpenTelemetry(options) {
|
|
|
165
215
|
logRecordProcessors.push(otlp.logRecordProcessor);
|
|
166
216
|
}
|
|
167
217
|
}
|
|
168
|
-
// ── A365 exporter (enabled
|
|
169
|
-
|
|
170
|
-
|
|
218
|
+
// ── A365 exporter (enabled when the resolved A365 config has enabled=true;
|
|
219
|
+
// ENABLE_A365_OBSERVABILITY_EXPORTER is only considered when options.a365
|
|
220
|
+
// is provided) ───────────────────────────────────────────────────────────
|
|
221
|
+
if (a365Config.enabled) {
|
|
171
222
|
// A365SpanProcessor copies baggage (tenant, agent, session, etc.) and
|
|
172
|
-
// telemetry.sdk.* attributes to span attributes
|
|
173
|
-
//
|
|
223
|
+
// telemetry.sdk.* attributes to span attributes. Always registered when
|
|
224
|
+
// A365 is enabled, even if the HTTP exporter is suppressed, so downstream
|
|
225
|
+
// exporters (Azure Monitor, OTLP, …) still receive the enriched spans.
|
|
174
226
|
spanProcessors.push(new A365SpanProcessor());
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
227
|
+
if (a365Config.enableObservabilityExporter) {
|
|
228
|
+
const a365Exporter = new Agent365Exporter({
|
|
229
|
+
clusterCategory: a365Config.clusterCategory,
|
|
230
|
+
domainOverride: a365Config.domainOverride,
|
|
231
|
+
authScopes: a365Config.authScopes,
|
|
232
|
+
tokenResolver: a365Config.tokenResolver,
|
|
233
|
+
useS2SEndpoint: a365Config.useS2SEndpoint,
|
|
234
|
+
...(a365Config.maxQueueSize !== undefined && {
|
|
235
|
+
maxQueueSize: a365Config.maxQueueSize,
|
|
236
|
+
}),
|
|
237
|
+
...(a365Config.scheduledDelayMilliseconds !== undefined && {
|
|
238
|
+
scheduledDelayMilliseconds: a365Config.scheduledDelayMilliseconds,
|
|
239
|
+
}),
|
|
240
|
+
...(a365Config.exporterTimeoutMilliseconds !== undefined && {
|
|
241
|
+
exporterTimeoutMilliseconds: a365Config.exporterTimeoutMilliseconds,
|
|
242
|
+
}),
|
|
243
|
+
...(a365Config.httpRequestTimeoutMilliseconds !== undefined && {
|
|
244
|
+
httpRequestTimeoutMilliseconds: a365Config.httpRequestTimeoutMilliseconds,
|
|
245
|
+
}),
|
|
246
|
+
...(a365Config.maxExportBatchSize !== undefined && {
|
|
247
|
+
maxExportBatchSize: a365Config.maxExportBatchSize,
|
|
248
|
+
}),
|
|
249
|
+
...(a365Config.maxPayloadBytes !== undefined && {
|
|
250
|
+
maxPayloadBytes: a365Config.maxPayloadBytes,
|
|
251
|
+
}),
|
|
252
|
+
});
|
|
253
|
+
spanProcessors.push(new BatchSpanProcessor(a365Exporter));
|
|
254
|
+
}
|
|
190
255
|
}
|
|
191
256
|
// Merge views: use Azure Monitor views when available (they cover the same
|
|
192
257
|
// instrumentations as createViews), otherwise fall back to the standalone views.
|
|
@@ -199,17 +264,18 @@ export function useMicrosoftOpenTelemetry(options) {
|
|
|
199
264
|
(options?.metricReaders?.length ?? 0) > 0 ||
|
|
200
265
|
(options?.logRecordProcessors?.length ?? 0) > 0;
|
|
201
266
|
const consoleEnabled = options?.enableConsoleExporters ??
|
|
202
|
-
(!azureMonitorEnabled &&
|
|
267
|
+
(!azureMonitorEnabled &&
|
|
268
|
+
!otlpActive &&
|
|
269
|
+
!(a365Config.enabled && a365Config.enableObservabilityExporter) &&
|
|
270
|
+
!hasCustomProcessors);
|
|
203
271
|
if (consoleEnabled) {
|
|
204
|
-
|
|
205
|
-
if (!a365ConsoleExportFallback) {
|
|
206
|
-
spanProcessors.push(new SimpleSpanProcessor(new ConsoleSpanExporter()));
|
|
207
|
-
}
|
|
272
|
+
spanProcessors.push(new SimpleSpanProcessor(new ConsoleSpanExporter()));
|
|
208
273
|
metricReaders.push(new PeriodicExportingMetricReader({
|
|
209
274
|
exporter: new ConsoleMetricExporter(),
|
|
210
275
|
exportIntervalMillis: config.metricExportIntervalMillis,
|
|
211
276
|
}));
|
|
212
277
|
logRecordProcessors.push(new SimpleLogRecordProcessor(new ConsoleLogRecordExporter()));
|
|
278
|
+
setSdkStatsFeature(SdkStatsDistroFeature.CONSOLE_EXPORT);
|
|
213
279
|
}
|
|
214
280
|
// ── Create and start NodeSDK ──────────────────────────────────────
|
|
215
281
|
const sdkConfig = {
|
|
@@ -235,12 +301,22 @@ export function useMicrosoftOpenTelemetry(options) {
|
|
|
235
301
|
// TODO: Enable auto-attach warning — see autoAttach.ts
|
|
236
302
|
isShutdown = false;
|
|
237
303
|
sdk.start();
|
|
304
|
+
// ── SDKStats: standalone pipeline for non-Azure-Monitor paths ─────
|
|
305
|
+
// When Azure Monitor is enabled the exporter package emits SDKStats
|
|
306
|
+
// itself (reading bits set above via `AZURE_MONITOR_STATSBEAT_FEATURES`).
|
|
307
|
+
// For A365-only / OTLP-only / Console-only customers we spin up our
|
|
308
|
+
// own MeterProvider + AzureMonitorStatsbeatExporter pipeline so the
|
|
309
|
+
// distro feature/instrumentation bits still reach the well-known
|
|
310
|
+
// statsbeat endpoint.
|
|
311
|
+
if (!azureMonitorEnabled) {
|
|
312
|
+
void SdkStatsManager.getInstance().initialize();
|
|
313
|
+
}
|
|
238
314
|
// Initialize GenAI instrumentations after providers are registered so any
|
|
239
315
|
// tracer they capture is backed by the active SDK provider.
|
|
240
316
|
// When A365 defaults were applied, use the resolved config so GenAI
|
|
241
|
-
// instrumentations
|
|
242
|
-
//
|
|
243
|
-
//
|
|
317
|
+
// instrumentations honour any A365-specific overrides. Otherwise pass the
|
|
318
|
+
// caller's original options (GenAI instrumentations are enabled by default
|
|
319
|
+
// unless explicitly disabled).
|
|
244
320
|
initializeGenAIInstrumentations(applyA365Defaults ? config.instrumentationOptions : options?.instrumentationOptions);
|
|
245
321
|
}
|
|
246
322
|
/**
|
|
@@ -250,7 +326,9 @@ export function shutdownMicrosoftOpenTelemetry() {
|
|
|
250
326
|
isShutdown = true;
|
|
251
327
|
disposeAzureMonitor?.();
|
|
252
328
|
const sdkShutdown = sdk?.shutdown() ?? Promise.resolve();
|
|
253
|
-
return sdkShutdown
|
|
329
|
+
return sdkShutdown
|
|
330
|
+
.finally(() => SdkStatsManager.getInstance().shutdown())
|
|
331
|
+
.finally(() => resetGenAIInstrumentations());
|
|
254
332
|
}
|
|
255
333
|
/**
|
|
256
334
|
* Get the internal SDK instance for testing purposes
|
|
@@ -259,14 +337,21 @@ export function shutdownMicrosoftOpenTelemetry() {
|
|
|
259
337
|
export function _getSdkInstance() {
|
|
260
338
|
return sdk;
|
|
261
339
|
}
|
|
340
|
+
// GenAI instrumentations are bootstrapped via eager dynamic imports rather than
|
|
341
|
+
// the OTel `InstrumentationBase` hook system used by core instrumentations
|
|
342
|
+
// (http, mongodb, redis, etc.). OTel instrumentations register lazy hooks that
|
|
343
|
+
// only fire when the user's code loads the target module, so a missing package
|
|
344
|
+
// is never an error. Here we eagerly import the optional @openai/agents and
|
|
345
|
+
// @langchain/core packages, so we must tolerate them not being installed.
|
|
346
|
+
// This will be migrated to upstream OTel instrumentation hooks once they are ready.
|
|
262
347
|
function initializeGenAIInstrumentations(options) {
|
|
263
348
|
const openAIOptions = options?.openaiAgents;
|
|
264
|
-
if (openAIOptions
|
|
265
|
-
void initializeOpenAIAgentsInstrumentation(openAIOptions);
|
|
349
|
+
if (openAIOptions?.enabled !== false) {
|
|
350
|
+
void initializeOpenAIAgentsInstrumentation(openAIOptions ?? {});
|
|
266
351
|
}
|
|
267
352
|
const langChainOptions = options?.langchain;
|
|
268
|
-
if (langChainOptions
|
|
269
|
-
void initializeLangChainInstrumentation(langChainOptions);
|
|
353
|
+
if (langChainOptions?.enabled !== false) {
|
|
354
|
+
void initializeLangChainInstrumentation(langChainOptions ?? {});
|
|
270
355
|
}
|
|
271
356
|
}
|
|
272
357
|
/**
|
|
@@ -283,8 +368,7 @@ async function initializeOpenAIAgentsInstrumentation(options) {
|
|
|
283
368
|
OpenAIAgentsTraceInstrumentor.instrument(options);
|
|
284
369
|
}
|
|
285
370
|
catch (error) {
|
|
286
|
-
Logger.getInstance().
|
|
287
|
-
"Ensure @openai/agents is installed when openaiAgents config is enabled.", error);
|
|
371
|
+
Logger.getInstance().debug("[GenAI] Skipping OpenAI Agents instrumentation, @openai/agents is not installed.", error);
|
|
288
372
|
}
|
|
289
373
|
}
|
|
290
374
|
async function initializeLangChainInstrumentation(_options) {
|
|
@@ -298,8 +382,7 @@ async function initializeLangChainInstrumentation(_options) {
|
|
|
298
382
|
LangChainTraceInstrumentor.instrument(callbackManagerModule);
|
|
299
383
|
}
|
|
300
384
|
catch (error) {
|
|
301
|
-
Logger.getInstance().
|
|
302
|
-
"Ensure @langchain/core is installed when langchain config is enabled.", error);
|
|
385
|
+
Logger.getInstance().debug("[GenAI] Skipping LangChain instrumentation, @langchain/core is not installed.", error);
|
|
303
386
|
}
|
|
304
387
|
}
|
|
305
388
|
async function resetGenAIInstrumentations() {
|
|
@@ -307,15 +390,15 @@ async function resetGenAIInstrumentations() {
|
|
|
307
390
|
const { OpenAIAgentsTraceInstrumentor } = await import("../genai/instrumentations/openai/openAIAgentsTraceInstrumentor.js");
|
|
308
391
|
OpenAIAgentsTraceInstrumentor.resetInstance();
|
|
309
392
|
}
|
|
310
|
-
catch {
|
|
311
|
-
|
|
393
|
+
catch (error) {
|
|
394
|
+
Logger.getInstance().debug("[GenAI] Skipping OpenAI Agents reset, @openai/agents is not installed.", error);
|
|
312
395
|
}
|
|
313
396
|
try {
|
|
314
397
|
const { LangChainTraceInstrumentor } = await import("../genai/instrumentations/langchain/langchainTraceInstrumentor.js");
|
|
315
398
|
LangChainTraceInstrumentor.resetInstance();
|
|
316
399
|
}
|
|
317
|
-
catch {
|
|
318
|
-
|
|
400
|
+
catch (error) {
|
|
401
|
+
Logger.getInstance().debug("[GenAI] Skipping LangChain reset, @langchain/core is not installed.", error);
|
|
319
402
|
}
|
|
320
403
|
}
|
|
321
404
|
//# sourceMappingURL=distro.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"distro.js","sourceRoot":"","sources":["../../../src/distro/distro.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"distro.js","sourceRoot":"","sources":["../../../src/distro/distro.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAE/C,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAElD,OAAO,EAEL,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAC7F,OAAO,EAAE,qBAAqB,EAAE,6BAA6B,EAAE,MAAM,4BAA4B,CAAC;AAElG,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,mCAAmC,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,EAAE,uCAAuC,EAAE,MAAM,iDAAiD,CAAC;AAC1G,OAAO,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,WAAW,IAAI,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EACL,2BAA2B,EAC3B,+BAA+B,EAC/B,0BAA0B,EAC1B,gCAAgC,GACjC,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC1F,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AASlG,OAAO,EACL,+BAA+B,EAC/B,qCAAqC,EACrC,gBAAgB,GACjB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,sBAAsB,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAC3F,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAEpD,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,GAAG,mCAAmC,CAAC;AAClF,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,GAAG,+BAA+B,CAAC;AAEjF,IAAI,GAAY,CAAC;AACjB,IAAI,mBAA6C,CAAC;AAClD,IAAI,UAAU,GAAG,KAAK,CAAC;AAEvB,MAAM,yCAAyC,GAAgD;IAC7F,MAAM;IACN,UAAU;IACV,SAAS;IACT,OAAO;IACP,YAAY;IACZ,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,SAAS;CACV,CAAC;AAEF;;;;GAIG;AACH,MAAM,iBAAiB,GAAgD,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;AAE3F;;;;;GAKG;AACH,MAAM,UAAU,iCAAiC,CAC/C,sBAA8C,EAC9C,0BAAmC,EACnC,WAAoB;IAEpB,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO;IACT,CAAC;IAED,MAAM,iBAAiB,GACrB,0BAA0B,IAAI,OAAO,0BAA0B,KAAK,QAAQ;QAC1E,CAAC,CAAE,0BAAsD;QACzD,CAAC,CAAC,SAAS,CAAC;IAEhB,wEAAwE;IACxE,yEAAyE;IACzE,6EAA6E;IAC7E,MAAM,mBAAmB,GACvB,CAAC,CAAC,iBAAiB;QACnB,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,CAAC;IAE5F,KAAK,MAAM,kBAAkB,IAAI,yCAAyC,EAAE,CAAC;QAC3E,MAAM,sBAAsB,GAC1B,CAAC,CAAC,iBAAiB;YACnB,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,iBAAiB,EAAE,kBAAkB,CAAC,CAAC;QAE9E,wEAAwE;QACxE,4BAA4B;QAC5B,IACE,sBAAsB;YACtB,CAAC,mBAAmB;gBAClB,iBAAiB,CAAC,QAAQ,CAAC,kBAAwD,CAAC,CAAC,EACvF,CAAC;YACD,SAAS;QACX,CAAC;QAED,MAAM,YAAY,GAAG,sBAAsB,CAAC,kBAAkB,CAAC,CAAC;QAChE,IAAI,YAAY,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;YACpD,YAAwC,CAAC,OAAO,GAAG,KAAK,CAAC;QAC5D,CAAC;aAAM,CAAC;YACN,sBAAsB,CAAC,kBAAkB,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QAClE,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,yBAAyB,CAAC,OAAuC;IAC/E,MAAM,MAAM,GAAG,IAAI,cAAc,CAAC,OAAO,CAAC,CAAC;IAC3C,uCAAuC,EAAE,CAAC;IAC1C,MAAM,UAAU,GAAG,IAAI,iBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAExD,2EAA2E;IAC3E,2EAA2E;IAC3E,0DAA0D;IAC1D,IAAI,UAAU,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACtC,mBAAmB,CAAC,EAAE,QAAQ,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;IACzD,CAAC;IAED,gFAAgF;IAChF,oFAAoF;IACpF,yEAAyE;IACzE,MAAM,qBAAqB,GACzB,OAAO,EAAE,YAAY,EAAE,OAAO,KAAK,KAAK;QACxC,CAAC,CAAC,CAAC,OAAO,EAAE,YAAY,IAAI,+BAA+B,CAAC,MAAM,CAAC,CAAC,CAAC;IACvE,MAAM,mBAAmB,GAAG,qBAAqB,IAAI,0BAA0B,CAAC,MAAM,CAAC,CAAC;IAExF,2EAA2E;IAC3E,2EAA2E;IAC3E,sEAAsE;IACtE,mEAAmE;IACnE,uEAAuE;IACvE,wEAAwE;IACxE,uDAAuD;IACvD,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,kBAAkB,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC5C,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;QACvB,kBAAkB,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,UAAU,EAAE,CAAC;QACf,kBAAkB,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC;IACxD,CAAC;IAED,kFAAkF;IAClF,mBAAmB,GAAG,SAAS,CAAC;IAEhC,sEAAsE;IACtE,IAAI,mBAAmB,EAAE,CAAC;QACxB,mBAAmB,GAAG,2BAA2B,CAAC,MAAM,CAAC,CAAC;IAC5D,CAAC;IAED,qEAAqE;IACrE,MAAM,yBAAyB,GAA8B;QAC3D,QAAQ,EAAE,MAAM,CAAC,sBAAsB,EAAE,QAAQ,EAAE,OAAO;QAC1D,OAAO,EAAE,MAAM,CAAC,sBAAsB,EAAE,OAAO,EAAE,OAAO;QACxD,KAAK,EAAE,MAAM,CAAC,sBAAsB,EAAE,KAAK,EAAE,OAAO;QACpD,UAAU,EAAE,MAAM,CAAC,sBAAsB,EAAE,UAAU,EAAE,OAAO;QAC9D,KAAK,EAAE,MAAM,CAAC,sBAAsB,EAAE,KAAK,EAAE,OAAO;QACpD,MAAM,EAAE,MAAM,CAAC,sBAAsB,EAAE,MAAM,EAAE,OAAO;QACtD,OAAO,EAAE,MAAM,CAAC,sBAAsB,EAAE,OAAO,EAAE,OAAO;KACzD,CAAC;IACF,MAAM,iBAAiB,GAAsB;QAC3C,GAAG,CAAC,mBAAmB;YACrB,CAAC,CAAC,gCAAgC,CAAC,MAAM,CAAC;YAC1C,CAAC,CAAC;gBACE,gBAAgB,EAAE,KAAK;gBACvB,WAAW,EAAE,KAAK;gBAClB,SAAS,EAAE,KAAK;gBAChB,6BAA6B,EAAE,KAAK;aACrC,CAAC;QACN,IAAI,EAAE,UAAU,CAAC,OAAO;QACxB,IAAI,EAAE,UAAU;QAChB,gBAAgB,EAAE,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,EAAE,WAAW,EAAE,KAAK,MAAM;KAC/F,CAAC;IACF,oBAAoB,EAAE,CAAC,oBAAoB,CAAC,yBAAyB,EAAE,iBAAiB,CAAC,CAAC;IAE1F,qEAAqE;IACrE,iFAAiF;IACjF,OAAO,CAAC,OAAO,EAAE,CAAC;IAClB,KAAK,CAAC,OAAO,EAAE,CAAC;IAChB,IAAI,CAAC,OAAO,EAAE,CAAC;IAEf,8EAA8E;IAC9E,sFAAsF;IACtF,uFAAuF;IACvF,mFAAmF;IACnF,qFAAqF;IACrF,8EAA8E;IAC9E,mEAAmE;IACnE,MAAM,yBAAyB,GAAG,MAAM,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;IACvE,OAAQ,UAAsC,CAAC,yBAAyB,CAAC,CAAC;IAE1E,2EAA2E;IAC3E,0EAA0E;IAC1E,0EAA0E;IAC1E,6CAA6C;IAC7C,MAAM,iBAAiB,GAAG,UAAU,CAAC,OAAO,IAAI,CAAC,mBAAmB,CAAC;IACrE,iCAAiC,CAC/B,MAAM,CAAC,sBAAsB,EAC7B,OAAO,EAAE,sBAAsB,EAC/B,iBAAiB,CAClB,CAAC;IAEF,qEAAqE;IACrE,MAAM,gBAAgB,GAAG,sBAAsB,CAAC,MAAM,EAAE;QACtD,0BAA0B,EAAE,mBAAmB;KAChD,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IACtC,MAAM,KAAK,GAAkB,WAAW,CAAC,MAAM,CAAC,CAAC;IAEjD,qEAAqE;IACrE,IAAI,aAAwC,CAAC;IAC7C,IAAI,YAAsC,CAAC;IAC3C,IAAI,UAAkC,CAAC;IAEvC,IAAI,mBAAmB,EAAE,CAAC;QACxB,aAAa,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,CAAC;QAC1C,YAAY,GAAG,IAAI,YAAY,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;QACvD,UAAU,GAAG,IAAI,UAAU,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACrD,CAAC;IAED,MAAM,qBAAqB,GAAG,gCAAgC,EAAE,CAAC;IAEjE,qEAAqE;IACrE,yFAAyF;IACzF,MAAM,cAAc,GAAoB,CAAC,GAAG,CAAC,OAAO,EAAE,cAAc,IAAI,EAAE,CAAC,CAAC,CAAC;IAC7E,MAAM,mBAAmB,GAAyB,CAAC,GAAG,CAAC,OAAO,EAAE,mBAAmB,IAAI,EAAE,CAAC,CAAC,CAAC;IAC5F,MAAM,WAAW,GAAkB,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC;IAE/D,MAAM,aAAa,GAAmB;QACpC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3D,GAAG,CAAC,OAAO,EAAE,aAAa,IAAI,EAAE,CAAC;KAClC,CAAC;IAEF,qEAAqE;IACrE,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,IAAI,GAAG,oBAAoB,EAAE,CAAC;QACpC,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC1C,CAAC;QACD,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACxC,CAAC;QACD,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC5B,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IAED,4EAA4E;IAC5E,6EAA6E;IAC7E,8EAA8E;IAC9E,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;QACvB,sEAAsE;QACtE,wEAAwE;QACxE,0EAA0E;QAC1E,uEAAuE;QACvE,cAAc,CAAC,IAAI,CAAC,IAAI,iBAAiB,EAAE,CAAC,CAAC;QAC7C,IAAI,UAAU,CAAC,2BAA2B,EAAE,CAAC;YAC3C,MAAM,YAAY,GAAG,IAAI,gBAAgB,CAAC;gBACxC,eAAe,EAAE,UAAU,CAAC,eAAe;gBAC3C,cAAc,EAAE,UAAU,CAAC,cAAc;gBACzC,UAAU,EAAE,UAAU,CAAC,UAAU;gBACjC,aAAa,EAAE,UAAU,CAAC,aAAa;gBACvC,cAAc,EAAE,UAAU,CAAC,cAAc;gBACzC,GAAG,CAAC,UAAU,CAAC,YAAY,KAAK,SAAS,IAAI;oBAC3C,YAAY,EAAE,UAAU,CAAC,YAAY;iBACtC,CAAC;gBACF,GAAG,CAAC,UAAU,CAAC,0BAA0B,KAAK,SAAS,IAAI;oBACzD,0BAA0B,EAAE,UAAU,CAAC,0BAA0B;iBAClE,CAAC;gBACF,GAAG,CAAC,UAAU,CAAC,2BAA2B,KAAK,SAAS,IAAI;oBAC1D,2BAA2B,EAAE,UAAU,CAAC,2BAA2B;iBACpE,CAAC;gBACF,GAAG,CAAC,UAAU,CAAC,8BAA8B,KAAK,SAAS,IAAI;oBAC7D,8BAA8B,EAAE,UAAU,CAAC,8BAA8B;iBAC1E,CAAC;gBACF,GAAG,CAAC,UAAU,CAAC,kBAAkB,KAAK,SAAS,IAAI;oBACjD,kBAAkB,EAAE,UAAU,CAAC,kBAAkB;iBAClD,CAAC;gBACF,GAAG,CAAC,UAAU,CAAC,eAAe,KAAK,SAAS,IAAI;oBAC9C,eAAe,EAAE,UAAU,CAAC,eAAe;iBAC5C,CAAC;aACH,CAAC,CAAC;YACH,cAAc,CAAC,IAAI,CAAC,IAAI,kBAAkB,CAAC,YAAY,CAAC,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IAED,2EAA2E;IAC3E,iFAAiF;IACjF,MAAM,QAAQ,GAAkB;QAC9B,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;QACrD,GAAG,WAAW;KACf,CAAC;IACF,wFAAwF;IACxF,MAAM,mBAAmB,GACvB,CAAC,OAAO,EAAE,cAAc,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC;QAC1C,CAAC,OAAO,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC;QACzC,CAAC,OAAO,EAAE,mBAAmB,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IAClD,MAAM,cAAc,GAClB,OAAO,EAAE,sBAAsB;QAC/B,CAAC,CAAC,mBAAmB;YACnB,CAAC,UAAU;YACX,CAAC,CAAC,UAAU,CAAC,OAAO,IAAI,UAAU,CAAC,2BAA2B,CAAC;YAC/D,CAAC,mBAAmB,CAAC,CAAC;IAC1B,IAAI,cAAc,EAAE,CAAC;QACnB,cAAc,CAAC,IAAI,CAAC,IAAI,mBAAmB,CAAC,IAAI,mBAAmB,EAAE,CAAC,CAAC,CAAC;QACxE,aAAa,CAAC,IAAI,CAChB,IAAI,6BAA6B,CAAC;YAChC,QAAQ,EAAE,IAAI,qBAAqB,EAAE;YACrC,oBAAoB,EAAE,MAAM,CAAC,0BAA0B;SACxD,CAAC,CACH,CAAC;QACF,mBAAmB,CAAC,IAAI,CAAC,IAAI,wBAAwB,CAAC,IAAI,wBAAwB,EAAE,CAAC,CAAC,CAAC;QACvF,kBAAkB,CAAC,qBAAqB,CAAC,cAAc,CAAC,CAAC;IAC3D,CAAC;IAED,qEAAqE;IACrE,MAAM,SAAS,GAAkC;QAC/C,mBAAmB,EAAE,IAAI;QACzB,aAAa,EAAE,aAAa;QAC5B,KAAK,EAAE,QAAQ;QACf,gBAAgB,EAAE,gBAAgB;QAClC,mBAAmB,EAAE;YACnB,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,0BAA0B,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAChE,GAAG,mBAAmB;YACtB,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,0BAA0B,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SACjE;QACD,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,OAAO;QACP,cAAc,EAAE;YACd,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,4BAA4B,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACtE,GAAG,cAAc;YACjB,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SAChE;QACD,iBAAiB,EAAE,qBAAqB;KACzC,CAAC;IACF,GAAG,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC;IAC7B,uDAAuD;IACvD,UAAU,GAAG,KAAK,CAAC;IACnB,GAAG,CAAC,KAAK,EAAE,CAAC;IAEZ,qEAAqE;IACrE,oEAAoE;IACpE,0EAA0E;IAC1E,oEAAoE;IACpE,oEAAoE;IACpE,iEAAiE;IACjE,sBAAsB;IACtB,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACzB,KAAK,eAAe,CAAC,WAAW,EAAE,CAAC,UAAU,EAAE,CAAC;IAClD,CAAC;IAED,0EAA0E;IAC1E,4DAA4D;IAC5D,oEAAoE;IACpE,0EAA0E;IAC1E,2EAA2E;IAC3E,+BAA+B;IAC/B,+BAA+B,CAC7B,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC,CAAC,OAAO,EAAE,sBAAsB,CACpF,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,8BAA8B;IAC5C,UAAU,GAAG,IAAI,CAAC;IAClB,mBAAmB,EAAE,EAAE,CAAC;IACxB,MAAM,WAAW,GAAG,GAAG,EAAE,QAAQ,EAAE,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IACzD,OAAO,WAAW;SACf,OAAO,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAC;SACvD,OAAO,CAAC,GAAG,EAAE,CAAC,0BAA0B,EAAE,CAAC,CAAC;AACjD,CAAC;AAED;;;GAGG;AAEH,MAAM,UAAU,eAAe;IAC7B,OAAO,GAAG,CAAC;AACb,CAAC;AAED,gFAAgF;AAChF,2EAA2E;AAC3E,gFAAgF;AAChF,+EAA+E;AAC/E,6EAA6E;AAC7E,0EAA0E;AAC1E,oFAAoF;AACpF,SAAS,+BAA+B,CAAC,OAAgC;IACvE,MAAM,aAAa,GAAG,OAAO,EAAE,YAAY,CAAC;IAC5C,IAAI,aAAa,EAAE,OAAO,KAAK,KAAK,EAAE,CAAC;QACrC,KAAK,qCAAqC,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;IAClE,CAAC;IAED,MAAM,gBAAgB,GAAG,OAAO,EAAE,SAAS,CAAC;IAC5C,IAAI,gBAAgB,EAAE,OAAO,KAAK,KAAK,EAAE,CAAC;QACxC,KAAK,kCAAkC,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC;IAClE,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW;IACzB,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,KAAK,UAAU,qCAAqC,CAClD,OAA0C;IAE1C,IAAI,CAAC;QACH,MAAM,EAAE,6BAA6B,EAAE,GACrC,MAAM,MAAM,CAAC,mEAAmE,CAAC,CAAC;QACpF,IAAI,UAAU;YAAE,OAAO;QACvB,6BAA6B,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IACpD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,WAAW,EAAE,CAAC,KAAK,CACxB,kFAAkF,EAClF,KAAK,CACN,CAAC;IACJ,CAAC;AACH,CAAC;AAED,KAAK,UAAU,kCAAkC,CAC/C,QAAwC;IAExC,IAAI,CAAC;QACH,MAAM,CAAC,EAAE,0BAA0B,EAAE,EAAE,qBAAqB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAChF,MAAM,CAAC,mEAAmE,CAAC;YAC3E,MAAM,CAAC,mCAAmC,CAAC;SAC5C,CAAC,CAAC;QACH,IAAI,UAAU;YAAE,OAAO;QACvB,0BAA0B,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;IAC/D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,WAAW,EAAE,CAAC,KAAK,CACxB,+EAA+E,EAC/E,KAAK,CACN,CAAC;IACJ,CAAC;AACH,CAAC;AAED,KAAK,UAAU,0BAA0B;IACvC,IAAI,CAAC;QACH,MAAM,EAAE,6BAA6B,EAAE,GACrC,MAAM,MAAM,CAAC,mEAAmE,CAAC,CAAC;QACpF,6BAA6B,CAAC,aAAa,EAAE,CAAC;IAChD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,WAAW,EAAE,CAAC,KAAK,CACxB,wEAAwE,EACxE,KAAK,CACN,CAAC;IACJ,CAAC;IAED,IAAI,CAAC;QACH,MAAM,EAAE,0BAA0B,EAAE,GAClC,MAAM,MAAM,CAAC,mEAAmE,CAAC,CAAC;QACpF,0BAA0B,CAAC,aAAa,EAAE,CAAC;IAC7C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,WAAW,EAAE,CAAC,KAAK,CACxB,qEAAqE,EACrE,KAAK,CACN,CAAC;IACJ,CAAC;AACH,CAAC"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import type * as CallbackManagerModule from "@langchain/core/callbacks/manager";
|
|
2
2
|
import { Tracer } from "@opentelemetry/api";
|
|
3
|
+
import type { LangChainTracer } from "./tracer.js";
|
|
3
4
|
type CallbackManagerModuleType = typeof CallbackManagerModule;
|
|
5
|
+
type LangChainTracerCtor = new (tracer: Tracer) => LangChainTracer;
|
|
4
6
|
/**
|
|
5
7
|
* Static wrapper for LangChain tracing instrumentation
|
|
6
8
|
*/
|
|
@@ -25,6 +27,6 @@ export declare class LangChainTraceInstrumentor {
|
|
|
25
27
|
*/
|
|
26
28
|
static resetInstance(): void;
|
|
27
29
|
}
|
|
28
|
-
export declare function addTracerToHandlers(tracer: Tracer, handlers: CallbackManagerModule.Callbacks | undefined): CallbackManagerModule.Callbacks;
|
|
30
|
+
export declare function addTracerToHandlers(tracer: Tracer, handlers: CallbackManagerModule.Callbacks | undefined, tracerCtor: LangChainTracerCtor): CallbackManagerModule.Callbacks;
|
|
29
31
|
export {};
|
|
30
32
|
//# sourceMappingURL=langchainTraceInstrumentor.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"langchainTraceInstrumentor.d.ts","sourceRoot":"","sources":["../../../../../src/genai/instrumentations/langchain/langchainTraceInstrumentor.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,KAAK,qBAAqB,MAAM,mCAAmC,CAAC;AAChF,OAAO,EAAe,MAAM,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"langchainTraceInstrumentor.d.ts","sourceRoot":"","sources":["../../../../../src/genai/instrumentations/langchain/langchainTraceInstrumentor.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,KAAK,qBAAqB,MAAM,mCAAmC,CAAC;AAChF,OAAO,EAAe,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAOzD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,KAAK,yBAAyB,GAAG,OAAO,qBAAqB,CAAC;AAC9D,KAAK,mBAAmB,GAAG,KAAK,MAAM,EAAE,MAAM,KAAK,eAAe,CAAC;AA4InE;;GAEG;AACH,qBAAa,0BAA0B;IACrC,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAOlC;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,yBAAyB,GAAG,IAAI;IAI1D;;OAEG;IACH,MAAM,CAAC,MAAM,IAAI,IAAI;IAOrB;;OAEG;IACH,MAAM,CAAC,OAAO,IAAI,IAAI;IAOtB;;OAEG;IACH,MAAM,CAAC,aAAa,IAAI,IAAI;CAG7B;AAED,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,qBAAqB,CAAC,SAAS,GAAG,SAAS,EACrD,UAAU,EAAE,mBAAmB,GAC9B,qBAAqB,CAAC,SAAS,CAgBjC"}
|
|
@@ -4,12 +4,15 @@
|
|
|
4
4
|
// Adapted: removed ObservabilityManager dependency, uses diag logger instead of A365 logger
|
|
5
5
|
import { diag, trace } from "@opentelemetry/api";
|
|
6
6
|
import { InstrumentationBase, isWrapped, } from "@opentelemetry/instrumentation";
|
|
7
|
-
import { LangChainTracer } from "./tracer.js";
|
|
8
7
|
class LangChainTraceInstrumentorImpl extends InstrumentationBase {
|
|
9
8
|
static _instance = null;
|
|
10
9
|
_hasBeenEnabled = false;
|
|
11
10
|
_isPatched = false;
|
|
12
11
|
otelTracer;
|
|
12
|
+
/** Lazy-loaded to avoid eagerly importing @langchain/core/tracers/base
|
|
13
|
+
* (which transitively loads @langchain/core/callbacks/manager) before
|
|
14
|
+
* the instrumentation hooks for that module have been registered. */
|
|
15
|
+
_tracerCtor;
|
|
13
16
|
constructor() {
|
|
14
17
|
if (LangChainTraceInstrumentorImpl._instance !== null) {
|
|
15
18
|
throw new Error("LangChainTraceInstrumentor can only be instantiated once.");
|
|
@@ -62,12 +65,27 @@ class LangChainTraceInstrumentorImpl extends InstrumentationBase {
|
|
|
62
65
|
if (!CallbackManager || !("_configureSync" in CallbackManager)) {
|
|
63
66
|
return module;
|
|
64
67
|
}
|
|
68
|
+
// Now that the hooks are registered and @langchain/core/callbacks/manager
|
|
69
|
+
// is loaded, it is safe to load tracer.js (and its transitive
|
|
70
|
+
// @langchain/core/tracers/base dependency). The promise resolves in the
|
|
71
|
+
// next microtask — well before any user code invokes a LangChain
|
|
72
|
+
// chain/agent/tool (which is what triggers _configureSync).
|
|
73
|
+
void import("./tracer.js").then((m) => {
|
|
74
|
+
this._tracerCtor = m.LangChainTracer;
|
|
75
|
+
}, (err) => {
|
|
76
|
+
diag.error(`[LangChainTraceInstrumentor] Failed to load LangChainTracer: ${err instanceof Error ? err.message : String(err)}`);
|
|
77
|
+
});
|
|
65
78
|
// eslint-disable-next-line @typescript-eslint/no-this-alias
|
|
66
79
|
const instrumentor = this;
|
|
67
80
|
this._wrap(CallbackManager, "_configureSync", (original) => {
|
|
68
81
|
return function (...args) {
|
|
69
|
-
|
|
70
|
-
|
|
82
|
+
if (instrumentor._tracerCtor) {
|
|
83
|
+
args[0] = addTracerToHandlers(instrumentor.otelTracer, args[0], instrumentor._tracerCtor);
|
|
84
|
+
diag.debug("[LangChainTraceInstrumentor] _configureSync wrapped to add LangChainTracer");
|
|
85
|
+
}
|
|
86
|
+
else {
|
|
87
|
+
diag.debug("[LangChainTraceInstrumentor] LangChainTracer not yet loaded, skipping");
|
|
88
|
+
}
|
|
71
89
|
return original.apply(this, args);
|
|
72
90
|
};
|
|
73
91
|
});
|
|
@@ -137,18 +155,18 @@ export class LangChainTraceInstrumentor {
|
|
|
137
155
|
LangChainTraceInstrumentorImpl.resetInstance();
|
|
138
156
|
}
|
|
139
157
|
}
|
|
140
|
-
export function addTracerToHandlers(tracer, handlers) {
|
|
158
|
+
export function addTracerToHandlers(tracer, handlers, tracerCtor) {
|
|
141
159
|
if (handlers == null) {
|
|
142
|
-
return [new
|
|
160
|
+
return [new tracerCtor(tracer)];
|
|
143
161
|
}
|
|
144
162
|
if (Array.isArray(handlers)) {
|
|
145
|
-
if (!handlers.some((h) => h instanceof
|
|
146
|
-
handlers.push(new
|
|
163
|
+
if (!handlers.some((h) => h instanceof tracerCtor)) {
|
|
164
|
+
handlers.push(new tracerCtor(tracer));
|
|
147
165
|
}
|
|
148
166
|
return handlers;
|
|
149
167
|
}
|
|
150
|
-
if (!handlers.inheritableHandlers.some((h) => h instanceof
|
|
151
|
-
handlers.addHandler(new
|
|
168
|
+
if (!handlers.inheritableHandlers.some((h) => h instanceof tracerCtor)) {
|
|
169
|
+
handlers.addHandler(new tracerCtor(tracer), true);
|
|
152
170
|
}
|
|
153
171
|
return handlers;
|
|
154
172
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"langchainTraceInstrumentor.js","sourceRoot":"","sources":["../../../../../src/genai/instrumentations/langchain/langchainTraceInstrumentor.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAClC,kGAAkG;AAClG,4FAA4F;AAG5F,OAAO,EAAE,IAAI,EAAE,KAAK,EAAU,MAAM,oBAAoB,CAAC;AACzD,OAAO,EACL,mBAAmB,EAGnB,SAAS,GACV,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"langchainTraceInstrumentor.js","sourceRoot":"","sources":["../../../../../src/genai/instrumentations/langchain/langchainTraceInstrumentor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SDK self-telemetry (SDKStats) for the Microsoft OpenTelemetry Distro.
|
|
3
|
+
*
|
|
4
|
+
* Backend-agnostic SDK health and usage telemetry that works regardless
|
|
5
|
+
* of which export backends are enabled (Azure Monitor, OTLP, A365,
|
|
6
|
+
* Console). Tracks:
|
|
7
|
+
*
|
|
8
|
+
* - **Features** — which distro features are active (A365, OTLP, console,
|
|
9
|
+
* live metrics, browser SDK loader, ...)
|
|
10
|
+
* - **Instrumentations** — which library instrumentations are enabled
|
|
11
|
+
*
|
|
12
|
+
* Mirrors `src/microsoft/opentelemetry/_sdkstats/__init__.py` from the
|
|
13
|
+
* Python distro.
|
|
14
|
+
*/
|
|
15
|
+
export { SdkStatsDistroFeature, SDKSTATS_DISABLED_ENV, APPLICATIONINSIGHTS_STATSBEAT_DISABLED_ALL, isSdkStatsEnabled, setSdkStatsFeature, getSdkStatsFeatureFlags, setSdkStatsInstrumentation, getSdkStatsInstrumentationFlags, setSdkStatsShutdown, getSdkStatsShutdown, } from "./state.js";
|
|
16
|
+
export { SdkStatsMetrics, FEATURE_TYPE_FEATURE, FEATURE_TYPE_INSTRUMENTATION } from "./metrics.js";
|
|
17
|
+
export { SdkStatsManager } from "./manager.js";
|
|
18
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/sdkstats/index.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,0CAA0C,EAC1C,iBAAiB,EACjB,kBAAkB,EAClB,uBAAuB,EACvB,0BAA0B,EAC1B,+BAA+B,EAC/B,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,4BAA4B,EAAE,MAAM,cAAc,CAAC;AAEnG,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
// Copyright (c) Microsoft Corporation.
|
|
2
|
+
// Licensed under the MIT License.
|
|
3
|
+
/**
|
|
4
|
+
* SDK self-telemetry (SDKStats) for the Microsoft OpenTelemetry Distro.
|
|
5
|
+
*
|
|
6
|
+
* Backend-agnostic SDK health and usage telemetry that works regardless
|
|
7
|
+
* of which export backends are enabled (Azure Monitor, OTLP, A365,
|
|
8
|
+
* Console). Tracks:
|
|
9
|
+
*
|
|
10
|
+
* - **Features** — which distro features are active (A365, OTLP, console,
|
|
11
|
+
* live metrics, browser SDK loader, ...)
|
|
12
|
+
* - **Instrumentations** — which library instrumentations are enabled
|
|
13
|
+
*
|
|
14
|
+
* Mirrors `src/microsoft/opentelemetry/_sdkstats/__init__.py` from the
|
|
15
|
+
* Python distro.
|
|
16
|
+
*/
|
|
17
|
+
export { SdkStatsDistroFeature, SDKSTATS_DISABLED_ENV, APPLICATIONINSIGHTS_STATSBEAT_DISABLED_ALL, isSdkStatsEnabled, setSdkStatsFeature, getSdkStatsFeatureFlags, setSdkStatsInstrumentation, getSdkStatsInstrumentationFlags, setSdkStatsShutdown, getSdkStatsShutdown, } from "./state.js";
|
|
18
|
+
export { SdkStatsMetrics, FEATURE_TYPE_FEATURE, FEATURE_TYPE_INSTRUMENTATION } from "./metrics.js";
|
|
19
|
+
export { SdkStatsManager } from "./manager.js";
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/sdkstats/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC;;;;;;;;;;;;;GAaG;AAEH,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,0CAA0C,EAC1C,iBAAiB,EACjB,kBAAkB,EAClB,uBAAuB,EACvB,0BAA0B,EAC1B,+BAA+B,EAC/B,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,4BAA4B,EAAE,MAAM,cAAc,CAAC;AAEnG,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Singleton manager for the standalone SDKStats pipeline.
|
|
3
|
+
*
|
|
4
|
+
* The manager is safe to call `initialize()` on multiple times — only the
|
|
5
|
+
* first invocation takes effect.
|
|
6
|
+
*/
|
|
7
|
+
export declare class SdkStatsManager {
|
|
8
|
+
private static _instance;
|
|
9
|
+
private _meterProvider;
|
|
10
|
+
private _metrics;
|
|
11
|
+
private _initialized;
|
|
12
|
+
private _initialExportTimer;
|
|
13
|
+
static getInstance(): SdkStatsManager;
|
|
14
|
+
get isInitialized(): boolean;
|
|
15
|
+
/**
|
|
16
|
+
* Set up SDKStats export via the Azure Monitor statsbeat endpoint.
|
|
17
|
+
*
|
|
18
|
+
* Returns `true` if the standalone pipeline was initialized (or was
|
|
19
|
+
* already initialized), `false` if SDKStats are disabled via env var
|
|
20
|
+
* or initialization failed.
|
|
21
|
+
*/
|
|
22
|
+
initialize(): Promise<boolean>;
|
|
23
|
+
shutdown(): Promise<boolean>;
|
|
24
|
+
private _cleanup;
|
|
25
|
+
/**
|
|
26
|
+
* @internal Test-only: discard the singleton so a fresh instance is
|
|
27
|
+
* created on the next `getInstance()` call.
|
|
28
|
+
*/
|
|
29
|
+
static _resetForTest(): void;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../../src/sdkstats/manager.ts"],"names":[],"mappings":"AAyDA;;;;;GAKG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAC,SAAS,CAA8B;IAEtD,OAAO,CAAC,cAAc,CAA4B;IAClD,OAAO,CAAC,QAAQ,CAA8B;IAC9C,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,mBAAmB,CAA6B;IAExD,MAAM,CAAC,WAAW,IAAI,eAAe;IAOrC,IAAI,aAAa,IAAI,OAAO,CAE3B;IAED;;;;;;OAMG;IACG,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC;IA2E9B,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC;IAmBlC,OAAO,CAAC,QAAQ;IAUhB;;;OAGG;IACH,MAAM,CAAC,aAAa,IAAI,IAAI;CAG7B"}
|