@microsoft/agents-a365-observability 0.1.0-preview.95 → 0.2.0-preview.3
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/dist/cjs/ObservabilityBuilder.d.ts +24 -1
- package/dist/cjs/ObservabilityBuilder.d.ts.map +1 -1
- package/dist/cjs/ObservabilityBuilder.js +39 -12
- package/dist/cjs/ObservabilityBuilder.js.map +1 -1
- package/dist/cjs/ObservabilityManager.d.ts.map +1 -1
- package/dist/cjs/ObservabilityManager.js +3 -0
- package/dist/cjs/ObservabilityManager.js.map +1 -1
- package/dist/cjs/configuration/ObservabilityConfiguration.d.ts +19 -0
- package/dist/cjs/configuration/ObservabilityConfiguration.d.ts.map +1 -0
- package/dist/cjs/configuration/ObservabilityConfiguration.js +60 -0
- package/dist/cjs/configuration/ObservabilityConfiguration.js.map +1 -0
- package/dist/cjs/configuration/ObservabilityConfigurationOptions.d.ts +58 -0
- package/dist/cjs/configuration/ObservabilityConfigurationOptions.d.ts.map +1 -0
- package/dist/cjs/configuration/ObservabilityConfigurationOptions.js +5 -0
- package/dist/cjs/configuration/ObservabilityConfigurationOptions.js.map +1 -0
- package/dist/cjs/configuration/PerRequestSpanProcessorConfiguration.d.ts +22 -0
- package/dist/cjs/configuration/PerRequestSpanProcessorConfiguration.d.ts.map +1 -0
- package/dist/cjs/configuration/PerRequestSpanProcessorConfiguration.js +73 -0
- package/dist/cjs/configuration/PerRequestSpanProcessorConfiguration.js.map +1 -0
- package/dist/cjs/configuration/PerRequestSpanProcessorConfigurationOptions.d.ts +71 -0
- package/dist/cjs/configuration/PerRequestSpanProcessorConfigurationOptions.d.ts.map +1 -0
- package/dist/cjs/configuration/PerRequestSpanProcessorConfigurationOptions.js +5 -0
- package/dist/cjs/configuration/PerRequestSpanProcessorConfigurationOptions.js.map +1 -0
- package/dist/cjs/configuration/index.d.ts +16 -0
- package/dist/cjs/configuration/index.d.ts.map +1 -0
- package/dist/cjs/configuration/index.js +35 -0
- package/dist/cjs/configuration/index.js.map +1 -0
- package/dist/cjs/index.d.ts +11 -3
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +45 -5
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/internal/PerRequestProcessorInternalOverrides.d.ts +4 -0
- package/dist/cjs/internal/PerRequestProcessorInternalOverrides.d.ts.map +1 -0
- package/dist/cjs/internal/PerRequestProcessorInternalOverrides.js +15 -0
- package/dist/cjs/internal/PerRequestProcessorInternalOverrides.js.map +1 -0
- package/dist/cjs/tracing/PerRequestSpanProcessor.d.ts +10 -3
- package/dist/cjs/tracing/PerRequestSpanProcessor.d.ts.map +1 -1
- package/dist/cjs/tracing/PerRequestSpanProcessor.js +14 -23
- package/dist/cjs/tracing/PerRequestSpanProcessor.js.map +1 -1
- package/dist/cjs/tracing/constants.d.ts +35 -35
- package/dist/cjs/tracing/constants.d.ts.map +1 -1
- package/dist/cjs/tracing/constants.js +42 -40
- package/dist/cjs/tracing/constants.js.map +1 -1
- package/dist/cjs/tracing/context/parent-span-context.d.ts +11 -2
- package/dist/cjs/tracing/context/parent-span-context.d.ts.map +1 -1
- package/dist/cjs/tracing/context/parent-span-context.js +10 -5
- package/dist/cjs/tracing/context/parent-span-context.js.map +1 -1
- package/dist/cjs/tracing/context/token-context.d.ts +14 -0
- package/dist/cjs/tracing/context/token-context.d.ts.map +1 -1
- package/dist/cjs/tracing/context/token-context.js +35 -2
- package/dist/cjs/tracing/context/token-context.js.map +1 -1
- package/dist/cjs/tracing/context/trace-context-propagation.d.ts +68 -0
- package/dist/cjs/tracing/context/trace-context-propagation.d.ts.map +1 -0
- package/dist/cjs/tracing/context/trace-context-propagation.js +85 -0
- package/dist/cjs/tracing/context/trace-context-propagation.js.map +1 -0
- package/dist/cjs/tracing/contracts.d.ts +229 -62
- package/dist/cjs/tracing/contracts.d.ts.map +1 -1
- package/dist/cjs/tracing/contracts.js +39 -18
- package/dist/cjs/tracing/contracts.js.map +1 -1
- package/dist/cjs/tracing/exporter/Agent365Exporter.d.ts +9 -4
- package/dist/cjs/tracing/exporter/Agent365Exporter.d.ts.map +1 -1
- package/dist/cjs/tracing/exporter/Agent365Exporter.js +53 -46
- package/dist/cjs/tracing/exporter/Agent365Exporter.js.map +1 -1
- package/dist/cjs/tracing/exporter/Agent365ExporterOptions.d.ts +8 -5
- package/dist/cjs/tracing/exporter/Agent365ExporterOptions.d.ts.map +1 -1
- package/dist/cjs/tracing/exporter/Agent365ExporterOptions.js +11 -7
- package/dist/cjs/tracing/exporter/Agent365ExporterOptions.js.map +1 -1
- package/dist/cjs/tracing/exporter/ExporterEventNames.d.ts +20 -0
- package/dist/cjs/tracing/exporter/ExporterEventNames.d.ts.map +1 -0
- package/dist/cjs/tracing/exporter/ExporterEventNames.js +26 -0
- package/dist/cjs/tracing/exporter/ExporterEventNames.js.map +1 -0
- package/dist/cjs/tracing/exporter/utils.d.ts +24 -11
- package/dist/cjs/tracing/exporter/utils.d.ts.map +1 -1
- package/dist/cjs/tracing/exporter/utils.js +357 -34
- package/dist/cjs/tracing/exporter/utils.js.map +1 -1
- package/dist/cjs/tracing/message-utils.d.ts +36 -0
- package/dist/cjs/tracing/message-utils.d.ts.map +1 -0
- package/dist/cjs/tracing/message-utils.js +90 -0
- package/dist/cjs/tracing/message-utils.js.map +1 -0
- package/dist/cjs/tracing/middleware/BaggageBuilder.d.ts +32 -44
- package/dist/cjs/tracing/middleware/BaggageBuilder.d.ts.map +1 -1
- package/dist/cjs/tracing/middleware/BaggageBuilder.js +49 -62
- package/dist/cjs/tracing/middleware/BaggageBuilder.js.map +1 -1
- package/dist/cjs/tracing/processors/SpanProcessor.d.ts.map +1 -1
- package/dist/cjs/tracing/processors/SpanProcessor.js +12 -3
- package/dist/cjs/tracing/processors/SpanProcessor.js.map +1 -1
- package/dist/cjs/tracing/processors/util.d.ts.map +1 -1
- package/dist/cjs/tracing/processors/util.js +16 -22
- package/dist/cjs/tracing/processors/util.js.map +1 -1
- package/dist/cjs/tracing/scopes/ExecuteToolScope.d.ts +10 -11
- package/dist/cjs/tracing/scopes/ExecuteToolScope.d.ts.map +1 -1
- package/dist/cjs/tracing/scopes/ExecuteToolScope.js +26 -20
- package/dist/cjs/tracing/scopes/ExecuteToolScope.js.map +1 -1
- package/dist/cjs/tracing/scopes/InferenceScope.d.ts +20 -24
- package/dist/cjs/tracing/scopes/InferenceScope.d.ts.map +1 -1
- package/dist/cjs/tracing/scopes/InferenceScope.js +53 -48
- package/dist/cjs/tracing/scopes/InferenceScope.js.map +1 -1
- package/dist/cjs/tracing/scopes/InvokeAgentScope.d.ts +17 -12
- package/dist/cjs/tracing/scopes/InvokeAgentScope.d.ts.map +1 -1
- package/dist/cjs/tracing/scopes/InvokeAgentScope.js +55 -54
- package/dist/cjs/tracing/scopes/InvokeAgentScope.js.map +1 -1
- package/dist/cjs/tracing/scopes/OpenTelemetryScope.d.ts +43 -12
- package/dist/cjs/tracing/scopes/OpenTelemetryScope.d.ts.map +1 -1
- package/dist/cjs/tracing/scopes/OpenTelemetryScope.js +114 -30
- package/dist/cjs/tracing/scopes/OpenTelemetryScope.js.map +1 -1
- package/dist/cjs/tracing/scopes/OutputScope.d.ts +33 -0
- package/dist/cjs/tracing/scopes/OutputScope.d.ts.map +1 -0
- package/dist/cjs/tracing/scopes/OutputScope.js +80 -0
- package/dist/cjs/tracing/scopes/OutputScope.js.map +1 -0
- package/dist/cjs/tracing/util.d.ts +14 -1
- package/dist/cjs/tracing/util.d.ts.map +1 -1
- package/dist/cjs/tracing/util.js +38 -7
- package/dist/cjs/tracing/util.js.map +1 -1
- package/dist/cjs/utils/logging.d.ts +45 -2
- package/dist/cjs/utils/logging.d.ts.map +1 -1
- package/dist/cjs/utils/logging.js +53 -79
- package/dist/cjs/utils/logging.js.map +1 -1
- package/dist/cjs/version.d.ts +2 -0
- package/dist/cjs/version.d.ts.map +1 -0
- package/dist/cjs/version.js +5 -0
- package/dist/cjs/version.js.map +1 -0
- package/dist/esm/ObservabilityBuilder.d.ts +24 -1
- package/dist/esm/ObservabilityBuilder.d.ts.map +1 -1
- package/dist/esm/ObservabilityBuilder.js +41 -14
- package/dist/esm/ObservabilityBuilder.js.map +1 -1
- package/dist/esm/ObservabilityManager.d.ts.map +1 -1
- package/dist/esm/ObservabilityManager.js +3 -0
- package/dist/esm/ObservabilityManager.js.map +1 -1
- package/dist/esm/configuration/ObservabilityConfiguration.d.ts +19 -0
- package/dist/esm/configuration/ObservabilityConfiguration.d.ts.map +1 -0
- package/dist/esm/configuration/ObservabilityConfiguration.js +56 -0
- package/dist/esm/configuration/ObservabilityConfiguration.js.map +1 -0
- package/dist/esm/configuration/ObservabilityConfigurationOptions.d.ts +58 -0
- package/dist/esm/configuration/ObservabilityConfigurationOptions.d.ts.map +1 -0
- package/dist/esm/configuration/ObservabilityConfigurationOptions.js +4 -0
- package/dist/esm/configuration/ObservabilityConfigurationOptions.js.map +1 -0
- package/dist/esm/configuration/PerRequestSpanProcessorConfiguration.d.ts +22 -0
- package/dist/esm/configuration/PerRequestSpanProcessorConfiguration.d.ts.map +1 -0
- package/dist/esm/configuration/PerRequestSpanProcessorConfiguration.js +69 -0
- package/dist/esm/configuration/PerRequestSpanProcessorConfiguration.js.map +1 -0
- package/dist/esm/configuration/PerRequestSpanProcessorConfigurationOptions.d.ts +71 -0
- package/dist/esm/configuration/PerRequestSpanProcessorConfigurationOptions.d.ts.map +1 -0
- package/dist/esm/configuration/PerRequestSpanProcessorConfigurationOptions.js +4 -0
- package/dist/esm/configuration/PerRequestSpanProcessorConfigurationOptions.js.map +1 -0
- package/dist/esm/configuration/index.d.ts +16 -0
- package/dist/esm/configuration/index.d.ts.map +1 -0
- package/dist/esm/configuration/index.js +18 -0
- package/dist/esm/configuration/index.js.map +1 -0
- package/dist/esm/index.d.ts +11 -3
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +17 -5
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/internal/PerRequestProcessorInternalOverrides.d.ts +4 -0
- package/dist/esm/internal/PerRequestProcessorInternalOverrides.d.ts.map +1 -0
- package/dist/esm/internal/PerRequestProcessorInternalOverrides.js +11 -0
- package/dist/esm/internal/PerRequestProcessorInternalOverrides.js.map +1 -0
- package/dist/esm/tracing/PerRequestSpanProcessor.d.ts +10 -3
- package/dist/esm/tracing/PerRequestSpanProcessor.d.ts.map +1 -1
- package/dist/esm/tracing/PerRequestSpanProcessor.js +14 -23
- package/dist/esm/tracing/PerRequestSpanProcessor.js.map +1 -1
- package/dist/esm/tracing/constants.d.ts +35 -35
- package/dist/esm/tracing/constants.d.ts.map +1 -1
- package/dist/esm/tracing/constants.js +42 -40
- package/dist/esm/tracing/constants.js.map +1 -1
- package/dist/esm/tracing/context/parent-span-context.d.ts +11 -2
- package/dist/esm/tracing/context/parent-span-context.d.ts.map +1 -1
- package/dist/esm/tracing/context/parent-span-context.js +10 -5
- package/dist/esm/tracing/context/parent-span-context.js.map +1 -1
- package/dist/esm/tracing/context/token-context.d.ts +14 -0
- package/dist/esm/tracing/context/token-context.d.ts.map +1 -1
- package/dist/esm/tracing/context/token-context.js +34 -2
- package/dist/esm/tracing/context/token-context.js.map +1 -1
- package/dist/esm/tracing/context/trace-context-propagation.d.ts +68 -0
- package/dist/esm/tracing/context/trace-context-propagation.d.ts.map +1 -0
- package/dist/esm/tracing/context/trace-context-propagation.js +79 -0
- package/dist/esm/tracing/context/trace-context-propagation.js.map +1 -0
- package/dist/esm/tracing/contracts.d.ts +229 -62
- package/dist/esm/tracing/contracts.d.ts.map +1 -1
- package/dist/esm/tracing/contracts.js +38 -17
- package/dist/esm/tracing/contracts.js.map +1 -1
- package/dist/esm/tracing/exporter/Agent365Exporter.d.ts +9 -4
- package/dist/esm/tracing/exporter/Agent365Exporter.d.ts.map +1 -1
- package/dist/esm/tracing/exporter/Agent365Exporter.js +54 -47
- package/dist/esm/tracing/exporter/Agent365Exporter.js.map +1 -1
- package/dist/esm/tracing/exporter/Agent365ExporterOptions.d.ts +8 -5
- package/dist/esm/tracing/exporter/Agent365ExporterOptions.d.ts.map +1 -1
- package/dist/esm/tracing/exporter/Agent365ExporterOptions.js +11 -7
- package/dist/esm/tracing/exporter/Agent365ExporterOptions.js.map +1 -1
- package/dist/esm/tracing/exporter/ExporterEventNames.d.ts +20 -0
- package/dist/esm/tracing/exporter/ExporterEventNames.d.ts.map +1 -0
- package/dist/esm/tracing/exporter/ExporterEventNames.js +23 -0
- package/dist/esm/tracing/exporter/ExporterEventNames.js.map +1 -0
- package/dist/esm/tracing/exporter/utils.d.ts +24 -11
- package/dist/esm/tracing/exporter/utils.d.ts.map +1 -1
- package/dist/esm/tracing/exporter/utils.js +355 -33
- package/dist/esm/tracing/exporter/utils.js.map +1 -1
- package/dist/esm/tracing/message-utils.d.ts +36 -0
- package/dist/esm/tracing/message-utils.d.ts.map +1 -0
- package/dist/esm/tracing/message-utils.js +82 -0
- package/dist/esm/tracing/message-utils.js.map +1 -0
- package/dist/esm/tracing/middleware/BaggageBuilder.d.ts +32 -44
- package/dist/esm/tracing/middleware/BaggageBuilder.d.ts.map +1 -1
- package/dist/esm/tracing/middleware/BaggageBuilder.js +49 -62
- package/dist/esm/tracing/middleware/BaggageBuilder.js.map +1 -1
- package/dist/esm/tracing/processors/SpanProcessor.d.ts.map +1 -1
- package/dist/esm/tracing/processors/SpanProcessor.js +12 -3
- package/dist/esm/tracing/processors/SpanProcessor.js.map +1 -1
- package/dist/esm/tracing/processors/util.d.ts.map +1 -1
- package/dist/esm/tracing/processors/util.js +16 -22
- package/dist/esm/tracing/processors/util.js.map +1 -1
- package/dist/esm/tracing/scopes/ExecuteToolScope.d.ts +10 -11
- package/dist/esm/tracing/scopes/ExecuteToolScope.d.ts.map +1 -1
- package/dist/esm/tracing/scopes/ExecuteToolScope.js +26 -20
- package/dist/esm/tracing/scopes/ExecuteToolScope.js.map +1 -1
- package/dist/esm/tracing/scopes/InferenceScope.d.ts +20 -24
- package/dist/esm/tracing/scopes/InferenceScope.d.ts.map +1 -1
- package/dist/esm/tracing/scopes/InferenceScope.js +53 -48
- package/dist/esm/tracing/scopes/InferenceScope.js.map +1 -1
- package/dist/esm/tracing/scopes/InvokeAgentScope.d.ts +17 -12
- package/dist/esm/tracing/scopes/InvokeAgentScope.d.ts.map +1 -1
- package/dist/esm/tracing/scopes/InvokeAgentScope.js +55 -54
- package/dist/esm/tracing/scopes/InvokeAgentScope.js.map +1 -1
- package/dist/esm/tracing/scopes/OpenTelemetryScope.d.ts +43 -12
- package/dist/esm/tracing/scopes/OpenTelemetryScope.d.ts.map +1 -1
- package/dist/esm/tracing/scopes/OpenTelemetryScope.js +115 -31
- package/dist/esm/tracing/scopes/OpenTelemetryScope.js.map +1 -1
- package/dist/esm/tracing/scopes/OutputScope.d.ts +33 -0
- package/dist/esm/tracing/scopes/OutputScope.d.ts.map +1 -0
- package/dist/esm/tracing/scopes/OutputScope.js +76 -0
- package/dist/esm/tracing/scopes/OutputScope.js.map +1 -0
- package/dist/esm/tracing/util.d.ts +14 -1
- package/dist/esm/tracing/util.d.ts.map +1 -1
- package/dist/esm/tracing/util.js +37 -7
- package/dist/esm/tracing/util.js.map +1 -1
- package/dist/esm/utils/logging.d.ts +45 -2
- package/dist/esm/utils/logging.d.ts.map +1 -1
- package/dist/esm/utils/logging.js +52 -79
- package/dist/esm/utils/logging.js.map +1 -1
- package/dist/esm/version.d.ts +2 -0
- package/dist/esm/version.d.ts.map +1 -0
- package/dist/esm/version.js +2 -0
- package/dist/esm/version.js.map +1 -0
- package/package.json +9 -9
|
@@ -3,26 +3,27 @@
|
|
|
3
3
|
// Licensed under the MIT License.
|
|
4
4
|
// ------------------------------------------------------------------------------
|
|
5
5
|
import { ExportResultCode } from '@opentelemetry/core';
|
|
6
|
-
import {
|
|
7
|
-
import { partitionByIdentity, parseIdentityKey, hexTraceId, hexSpanId, kindName, statusName, useCustomDomainForObservability, resolveAgent365Endpoint, getAgent365ObservabilityDomainOverride, isPerRequestExportEnabled } from './utils';
|
|
6
|
+
import { partitionByIdentity, parseIdentityKey, hexTraceId, hexSpanId, kindName, statusName, resolveAgent365Endpoint, getAgent365ObservabilityDomainOverride, isPerRequestExportEnabled, truncateSpan, } from './utils';
|
|
8
7
|
import { getExportToken } from '../context/token-context';
|
|
9
8
|
import logger, { formatError } from '../../utils/logging';
|
|
10
|
-
|
|
9
|
+
import { ExporterEventNames } from './ExporterEventNames';
|
|
11
10
|
const DEFAULT_MAX_RETRIES = 3;
|
|
12
11
|
/**
|
|
13
12
|
* Observability span exporter for Agent365:
|
|
14
13
|
* - Partitions spans by (tenantId, agentId)
|
|
15
14
|
* - Builds OTLP-like JSON: resourceSpans -> scopeSpans -> spans
|
|
16
|
-
* - POSTs per group to https://{endpoint}/
|
|
17
|
-
* or, when useS2SEndpoint is true, https://{endpoint}/
|
|
15
|
+
* - POSTs per group to https://{endpoint}/observability/tenants/{tenantId}/otlp/agents/{agentId}/traces?api-version=1
|
|
16
|
+
* or, when useS2SEndpoint is true, https://{endpoint}/observabilityService/tenants/{tenantId}/otlp/agents/{agentId}/traces?api-version=1
|
|
18
17
|
* - Adds Bearer token via token_resolver(agentId, tenantId)
|
|
19
18
|
*/
|
|
20
19
|
export class Agent365Exporter {
|
|
21
20
|
/**
|
|
22
21
|
* Initialize exporter with a fully constructed options instance.
|
|
23
|
-
*
|
|
22
|
+
* @param options Exporter options controlling batching, timeouts, token acquisition and endpoint shape.
|
|
23
|
+
* @param configProvider Optional configuration provider. When supplied, the exporter uses it for
|
|
24
|
+
* configuration lookups (custom domain, domain override) instead of the default env-based provider.
|
|
24
25
|
*/
|
|
25
|
-
constructor(options) {
|
|
26
|
+
constructor(options, configProvider) {
|
|
26
27
|
this.closed = false;
|
|
27
28
|
if (!options) {
|
|
28
29
|
throw new Error('Agent365ExporterOptions must be provided (was null/undefined)');
|
|
@@ -31,6 +32,7 @@ export class Agent365Exporter {
|
|
|
31
32
|
throw new Error('Agent365Exporter tokenResolver must be provided for batch export');
|
|
32
33
|
}
|
|
33
34
|
this.options = options;
|
|
35
|
+
this.configProvider = configProvider;
|
|
34
36
|
}
|
|
35
37
|
/**
|
|
36
38
|
* Export spans to Agent365 service
|
|
@@ -40,6 +42,7 @@ export class Agent365Exporter {
|
|
|
40
42
|
resultCallback({ code: ExportResultCode.FAILED });
|
|
41
43
|
return;
|
|
42
44
|
}
|
|
45
|
+
const startTime = Date.now();
|
|
43
46
|
try {
|
|
44
47
|
logger.info(`[Agent365Exporter] Exporting ${spans.length} spans`);
|
|
45
48
|
const groups = partitionByIdentity(spans);
|
|
@@ -59,13 +62,18 @@ export class Agent365Exporter {
|
|
|
59
62
|
promises.push(promise);
|
|
60
63
|
}
|
|
61
64
|
await Promise.all(promises);
|
|
62
|
-
|
|
65
|
+
const duration = Date.now() - startTime;
|
|
66
|
+
const success = !anyFailure;
|
|
67
|
+
const message = success ? 'All spans exported successfully' : 'Not all spans exported successfully';
|
|
68
|
+
logger.event(ExporterEventNames.EXPORT, success, duration, message);
|
|
63
69
|
resultCallback({
|
|
64
|
-
code:
|
|
70
|
+
code: success ? ExportResultCode.SUCCESS : ExportResultCode.FAILED
|
|
65
71
|
});
|
|
66
72
|
}
|
|
67
73
|
catch (_error) {
|
|
68
74
|
// Exporters should not raise; signal failure
|
|
75
|
+
const duration = Date.now() - startTime;
|
|
76
|
+
logger.event(ExporterEventNames.EXPORT, false, duration, `Export failed with error: ${formatError(_error)}`);
|
|
69
77
|
resultCallback({ code: ExportResultCode.FAILED });
|
|
70
78
|
}
|
|
71
79
|
}
|
|
@@ -75,75 +83,74 @@ export class Agent365Exporter {
|
|
|
75
83
|
async exportGroup(identityKey, spans) {
|
|
76
84
|
const { tenantId, agentId } = parseIdentityKey(identityKey);
|
|
77
85
|
logger.info(`[Agent365Exporter] Exporting ${spans.length} spans for tenantId: ${tenantId}, agentId: ${agentId}`);
|
|
86
|
+
const startTime = Date.now();
|
|
78
87
|
const payload = this.buildExportRequest(spans);
|
|
79
88
|
const body = JSON.stringify(payload);
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
const endpointRelativePath =
|
|
83
|
-
? `/maven/agent365/service/agents/${agentId}/traces`
|
|
84
|
-
: `/maven/agent365/agents/${agentId}/traces`;
|
|
89
|
+
// Select endpoint path based on S2S flag (includes tenantId in path)
|
|
90
|
+
const servicePrefix = this.options.useS2SEndpoint ? '/observabilityService' : '/observability';
|
|
91
|
+
const endpointRelativePath = `${servicePrefix}/tenants/${encodeURIComponent(tenantId)}/otlp/agents/${encodeURIComponent(agentId)}/traces`;
|
|
85
92
|
let url;
|
|
86
|
-
const domainOverride = getAgent365ObservabilityDomainOverride();
|
|
93
|
+
const domainOverride = getAgent365ObservabilityDomainOverride(this.configProvider);
|
|
87
94
|
if (domainOverride) {
|
|
88
95
|
url = `${domainOverride}${endpointRelativePath}?api-version=1`;
|
|
89
96
|
}
|
|
90
|
-
else
|
|
97
|
+
else {
|
|
91
98
|
const base = resolveAgent365Endpoint(this.options.clusterCategory);
|
|
92
99
|
url = `${base}${endpointRelativePath}?api-version=1`;
|
|
93
|
-
logger.info(`[Agent365Exporter] Using
|
|
94
|
-
}
|
|
95
|
-
else {
|
|
96
|
-
// Default behavior: discover PPAPI gateway endpoint per-tenant
|
|
97
|
-
const discovery = new PowerPlatformApiDiscovery(this.options.clusterCategory);
|
|
98
|
-
const endpoint = discovery.getTenantIslandClusterEndpoint(tenantId);
|
|
99
|
-
url = `https://${endpoint}${endpointRelativePath}?api-version=1`;
|
|
100
|
-
logger.info(`[Agent365Exporter] Resolved endpoint: ${url}`);
|
|
100
|
+
logger.info(`[Agent365Exporter] Using default endpoint: ${url}`);
|
|
101
101
|
}
|
|
102
102
|
const headers = {
|
|
103
103
|
'content-type': 'application/json'
|
|
104
104
|
};
|
|
105
105
|
let token = null;
|
|
106
|
+
let tokenNotResolvedReason = null;
|
|
106
107
|
if (isPerRequestExportEnabled()) {
|
|
107
108
|
// For per-request export, get token from OTel Context
|
|
108
109
|
token = getExportToken() ?? null;
|
|
109
110
|
if (!token) {
|
|
110
|
-
|
|
111
|
+
tokenNotResolvedReason = 'No token available in OTel Context for per-request export';
|
|
111
112
|
}
|
|
112
113
|
}
|
|
113
114
|
else {
|
|
114
115
|
// For batch export, use tokenResolver
|
|
115
116
|
if (!this.options.tokenResolver) {
|
|
116
|
-
|
|
117
|
-
return;
|
|
118
|
-
}
|
|
119
|
-
const tokenResult = this.options.tokenResolver(agentId, tenantId);
|
|
120
|
-
token = tokenResult instanceof Promise ? await tokenResult : tokenResult;
|
|
121
|
-
if (token) {
|
|
122
|
-
logger.info('[Agent365Exporter] Token resolved successfully via tokenResolver');
|
|
117
|
+
tokenNotResolvedReason = 'tokenResolver is undefined';
|
|
123
118
|
}
|
|
124
119
|
else {
|
|
125
|
-
|
|
120
|
+
const tokenResult = this.options.tokenResolver(agentId, tenantId);
|
|
121
|
+
token = tokenResult instanceof Promise ? await tokenResult : tokenResult;
|
|
122
|
+
if (token) {
|
|
123
|
+
logger.info('[Agent365Exporter] Token resolved successfully via tokenResolver');
|
|
124
|
+
}
|
|
125
|
+
else {
|
|
126
|
+
tokenNotResolvedReason = 'No token resolved via tokenResolver';
|
|
127
|
+
}
|
|
126
128
|
}
|
|
127
129
|
}
|
|
128
130
|
if (token) {
|
|
129
131
|
headers['authorization'] = `Bearer ${token}`;
|
|
130
132
|
}
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
133
|
+
else {
|
|
134
|
+
const skipReason = tokenNotResolvedReason || 'Token not resolved for export request';
|
|
135
|
+
logger.event(ExporterEventNames.EXPORT_GROUP, false, 0, `skip exporting: ${skipReason}`, { tenantId, agentId });
|
|
136
|
+
return;
|
|
134
137
|
}
|
|
138
|
+
// Always include tenant id header
|
|
139
|
+
headers['x-ms-tenant-id'] = tenantId;
|
|
135
140
|
// Basic retry loop
|
|
136
|
-
const ok = await this.postWithRetries(url, body, headers);
|
|
141
|
+
const { ok, correlationId } = await this.postWithRetries(url, body, headers);
|
|
142
|
+
const duration = Date.now() - startTime;
|
|
137
143
|
if (!ok) {
|
|
138
|
-
logger.
|
|
144
|
+
logger.event(ExporterEventNames.EXPORT_GROUP, false, duration, undefined, { tenantId, agentId, correlationId });
|
|
139
145
|
throw new Error('Failed to export spans');
|
|
140
146
|
}
|
|
141
|
-
logger.
|
|
147
|
+
logger.event(ExporterEventNames.EXPORT_GROUP, true, duration, 'Spans exported successfully', { tenantId, agentId, correlationId });
|
|
142
148
|
}
|
|
143
149
|
/**
|
|
144
150
|
* HTTP POST with retry logic
|
|
145
151
|
*/
|
|
146
152
|
async postWithRetries(url, body, headers) {
|
|
153
|
+
let lastCorrelationId = 'unknown';
|
|
147
154
|
for (let attempt = 0; attempt <= DEFAULT_MAX_RETRIES; attempt++) {
|
|
148
155
|
let correlationId;
|
|
149
156
|
try {
|
|
@@ -152,25 +159,25 @@ export class Agent365Exporter {
|
|
|
152
159
|
method: 'POST',
|
|
153
160
|
headers,
|
|
154
161
|
body,
|
|
155
|
-
signal: AbortSignal.timeout(
|
|
162
|
+
signal: AbortSignal.timeout(this.options.httpRequestTimeoutMilliseconds)
|
|
156
163
|
});
|
|
157
164
|
correlationId = response?.headers?.get('x-ms-correlation-id') || response?.headers?.get('x-correlation-id') || 'unknown';
|
|
165
|
+
lastCorrelationId = correlationId;
|
|
158
166
|
// 2xx => success
|
|
159
167
|
if (response.status >= 200 && response.status < 300) {
|
|
160
|
-
|
|
161
|
-
return true;
|
|
168
|
+
return { ok: true, correlationId };
|
|
162
169
|
}
|
|
163
170
|
// Retry transient errors
|
|
164
171
|
if ([408, 429].includes(response.status) || (response.status >= 500 && response.status < 600)) {
|
|
165
172
|
if (attempt < DEFAULT_MAX_RETRIES) {
|
|
166
|
-
const sleepMs = 200 * (attempt + 1);
|
|
173
|
+
const sleepMs = 200 * (attempt + 1) + Math.floor(Math.random() * 100);
|
|
167
174
|
logger.warn(`[Agent365Exporter] Transient error ${response.status}, correlation ID: ${correlationId}, retrying after ${sleepMs}ms`);
|
|
168
175
|
await this.sleep(sleepMs);
|
|
169
176
|
continue;
|
|
170
177
|
}
|
|
171
178
|
}
|
|
172
179
|
logger.error(`[Agent365Exporter] Failed with status ${response.status}, correlation ID: ${correlationId}`);
|
|
173
|
-
return false;
|
|
180
|
+
return { ok: false, correlationId };
|
|
174
181
|
}
|
|
175
182
|
catch (error) {
|
|
176
183
|
logger.error('[Agent365Exporter] Request error:', formatError(error));
|
|
@@ -180,10 +187,10 @@ export class Agent365Exporter {
|
|
|
180
187
|
await this.sleep(sleepMs);
|
|
181
188
|
continue;
|
|
182
189
|
}
|
|
183
|
-
return false;
|
|
190
|
+
return { ok: false, correlationId: lastCorrelationId };
|
|
184
191
|
}
|
|
185
192
|
}
|
|
186
|
-
return false;
|
|
193
|
+
return { ok: false, correlationId: lastCorrelationId };
|
|
187
194
|
}
|
|
188
195
|
/**
|
|
189
196
|
* Sleep for specified milliseconds
|
|
@@ -202,7 +209,7 @@ export class Agent365Exporter {
|
|
|
202
209
|
const scope = sp.instrumentationScope || sp.instrumentationLibrary;
|
|
203
210
|
const scopeKey = `${scope?.name || 'unknown'}:${scope?.version || ''}`;
|
|
204
211
|
const existing = scopeMap.get(scopeKey) || [];
|
|
205
|
-
existing.push(this.mapSpan(sp));
|
|
212
|
+
existing.push(truncateSpan(this.mapSpan(sp)));
|
|
206
213
|
scopeMap.set(scopeKey, existing);
|
|
207
214
|
}
|
|
208
215
|
const scopeSpans = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Agent365Exporter.js","sourceRoot":"","sources":["../../../../src/tracing/exporter/Agent365Exporter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Agent365Exporter.js","sourceRoot":"","sources":["../../../../src/tracing/exporter/Agent365Exporter.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,uCAAuC;AACvC,kCAAkC;AAClC,iFAAiF;AAEjF,OAAO,EAAgB,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAKrE,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,UAAU,EACV,SAAS,EACT,QAAQ,EACR,UAAU,EACV,uBAAuB,EACvB,sCAAsC,EACtC,yBAAyB,EACzB,YAAY,GACb,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,MAAM,EAAE,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAE1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,MAAM,mBAAmB,GAAG,CAAC,CAAC;AAoD9B;;;;;;;GAOG;AACH,MAAM,OAAO,gBAAgB;IAK3B;;;;;OAKG;IACH,YAAY,OAAgC,EAAE,cAAmE;QAVzG,WAAM,GAAG,KAAK,CAAC;QAWrB,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;QACnF,CAAC;QAED,IAAI,CAAC,yBAAyB,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;YAC3D,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAC;QACtF,CAAC;QACD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,KAAqB,EAAE,cAA8C;QAChF,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,cAAc,CAAC,EAAE,IAAI,EAAE,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC;YAClD,OAAO;QACT,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,IAAI,CAAC;YACH,MAAM,CAAC,IAAI,CAAC,gCAAgC,KAAK,CAAC,MAAM,QAAQ,CAAC,CAAC;YAClE,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;YAE1C,IAAI,MAAM,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;gBACtB,MAAM,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;gBACtD,cAAc,CAAC,EAAE,IAAI,EAAE,gBAAgB,CAAC,OAAO,EAAE,CAAC,CAAC;gBACnD,OAAO;YACT,CAAC;YAED,MAAM,CAAC,IAAI,CAAC,gCAAgC,MAAM,CAAC,IAAI,kBAAkB,CAAC,CAAC;YAC3E,IAAI,UAAU,GAAG,KAAK,CAAC;YACvB,MAAM,QAAQ,GAAoB,EAAE,CAAC;YAErC,KAAK,MAAM,CAAC,WAAW,EAAE,UAAU,CAAC,IAAI,MAAM,EAAE,CAAC;gBAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;oBACtE,UAAU,GAAG,IAAI,CAAC;oBAClB,MAAM,CAAC,KAAK,CAAC,4CAA4C,WAAW,KAAK,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC/F,CAAC,CAAC,CAAC;gBACH,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACzB,CAAC;YAED,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YACxC,MAAM,OAAO,GAAG,CAAC,UAAU,CAAC;YAC5B,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC,CAAC,qCAAqC,CAAC;YACpG,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;YACpE,cAAc,CAAC;gBACb,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM;aACnE,CAAC,CAAC;QAEL,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YAChB,6CAA6C;YAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YACxC,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,6BAA6B,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC7G,cAAc,CAAC,EAAE,IAAI,EAAE,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,WAAW,CAAC,WAAmB,EAAE,KAAqB;QAClE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;QAC5D,MAAM,CAAC,IAAI,CAAC,gCAAgC,KAAK,CAAC,MAAM,wBAAwB,QAAQ,cAAc,OAAO,EAAE,CAAC,CAAC;QAEjH,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACrC,qEAAqE;QACrE,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,gBAAgB,CAAC;QAC/F,MAAM,oBAAoB,GAAG,GAAG,aAAa,YAAY,kBAAkB,CAAC,QAAQ,CAAC,gBAAgB,kBAAkB,CAAC,OAAO,CAAC,SAAS,CAAC;QAE1I,IAAI,GAAW,CAAC;QAChB,MAAM,cAAc,GAAG,sCAAsC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACnF,IAAI,cAAc,EAAE,CAAC;YACnB,GAAG,GAAG,GAAG,cAAc,GAAG,oBAAoB,gBAAgB,CAAC;QACjE,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,GAAG,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,eAAkC,CAAC,CAAC;YACtF,GAAG,GAAG,GAAG,IAAI,GAAG,oBAAoB,gBAAgB,CAAC;YACrD,MAAM,CAAC,IAAI,CAAC,8CAA8C,GAAG,EAAE,CAAC,CAAC;QACnE,CAAC;QAED,MAAM,OAAO,GAA2B;YACtC,cAAc,EAAE,kBAAkB;SACnC,CAAC;QAEF,IAAI,KAAK,GAAkB,IAAI,CAAC;QAChC,IAAI,sBAAsB,GAAkB,IAAI,CAAC;QACjD,IAAI,yBAAyB,EAAE,EAAE,CAAC;YAChC,sDAAsD;YACtD,KAAK,GAAG,cAAc,EAAE,IAAI,IAAI,CAAC;YACjC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,sBAAsB,GAAG,2DAA2D,CAAC;YACvF,CAAC;QACH,CAAC;aAAM,CAAC;YACN,sCAAsC;YACtC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;gBAChC,sBAAsB,GAAG,4BAA4B,CAAC;YACxD,CAAC;iBAAM,CAAC;gBACN,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;gBAClE,KAAK,GAAG,WAAW,YAAY,OAAO,CAAC,CAAC,CAAC,MAAM,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC;gBACzE,IAAI,KAAK,EAAE,CAAC;oBACV,MAAM,CAAC,IAAI,CAAC,kEAAkE,CAAC,CAAC;gBAClF,CAAC;qBAAM,CAAC;oBACN,sBAAsB,GAAG,qCAAqC,CAAC;gBACjE,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,KAAK,EAAE,CAAC;QAC/C,CAAC;aACI,CAAC;YACJ,MAAM,UAAU,GAAG,sBAAsB,IAAI,uCAAuC,CAAC;YACrF,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,YAAY,EAAE,KAAK,EAAE,CAAC,EAAE,mBAAmB,UAAU,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;YAChH,OAAO;QACT,CAAC;QAED,kCAAkC;QAClC,OAAO,CAAC,gBAAgB,CAAC,GAAG,QAAQ,CAAC;QAErC,mBAAmB;QACnB,MAAM,EAAE,EAAE,EAAE,aAAa,EAAE,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QAC7E,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QACxC,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAC;YAChH,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAC5C,CAAC;QACD,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,6BAA6B,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAC;IACrI,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,eAAe,CAAC,GAAW,EAAE,IAAY,EAAE,OAA+B;QACtF,IAAI,iBAAiB,GAAG,SAAS,CAAC;QAClC,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,mBAAmB,EAAE,OAAO,EAAE,EAAE,CAAC;YAChE,IAAI,aAAqB,CAAC;YAC1B,IAAI,CAAC;gBACH,MAAM,CAAC,IAAI,CAAC,4DAA4D,OAAO,GAAG,CAAC,EAAE,CAAC,CAAC;gBACvF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;oBAChC,MAAM,EAAE,MAAM;oBACd,OAAO;oBACP,IAAI;oBACJ,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,8BAA8B,CAAC;iBACzE,CAAC,CAAC;gBAEH,aAAa,GAAG,QAAQ,EAAE,OAAO,EAAE,GAAG,CAAC,qBAAqB,CAAC,IAAI,QAAQ,EAAE,OAAO,EAAE,GAAG,CAAC,kBAAkB,CAAC,IAAI,SAAS,CAAC;gBACzH,iBAAiB,GAAG,aAAa,CAAC;gBAElC,iBAAiB;gBACjB,IAAI,QAAQ,CAAC,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;oBACpD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;gBACrC,CAAC;gBAED,yBAAyB;gBACzB,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,MAAM,GAAG,GAAG,CAAC,EAAE,CAAC;oBAC9F,IAAI,OAAO,GAAG,mBAAmB,EAAE,CAAC;wBAClC,MAAM,OAAO,GAAG,GAAG,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC;wBACtE,MAAM,CAAC,IAAI,CAAC,sCAAsC,QAAQ,CAAC,MAAM,qBAAqB,aAAa,oBAAoB,OAAO,IAAI,CAAC,CAAC;wBACpI,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;wBAC1B,SAAS;oBACX,CAAC;gBACH,CAAC;gBACD,MAAM,CAAC,KAAK,CAAC,yCAAyC,QAAQ,CAAC,MAAM,qBAAqB,aAAa,EAAE,CAAC,CAAC;gBAC3G,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;YACtC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,KAAK,CAAC,mCAAmC,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;gBACtE,IAAI,OAAO,GAAG,mBAAmB,EAAE,CAAC;oBAClC,MAAM,OAAO,GAAG,GAAG,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;oBACpC,MAAM,CAAC,IAAI,CAAC,qCAAqC,OAAO,IAAI,CAAC,CAAC;oBAC9D,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBAC1B,SAAS;gBACX,CAAC;gBACD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,iBAAiB,EAAE,CAAC;YACzD,CAAC;QACH,CAAC;QACD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,iBAAiB,EAAE,CAAC;IACzD,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,EAAU;QACtB,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;IACzD,CAAC;IAED;;OAEG;IACK,kBAAkB,CAAC,KAAqB;QAC9C,iDAAiD;QACjD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAsB,CAAC;QAC/C,MAAM,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;QACvE,KAAK,MAAM,EAAE,IAAI,KAAK,EAAE,CAAC;YACvB,MAAM,KAAK,GAAG,EAAE,CAAC,oBAAoB,IAAK,EAAsF,CAAC,sBAAsB,CAAC;YACxJ,MAAM,QAAQ,GAAG,GAAG,KAAK,EAAE,IAAI,IAAI,SAAS,IAAI,KAAK,EAAE,OAAO,IAAI,EAAE,EAAE,CAAC;YAEvE,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC9C,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YAC9C,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QACnC,CAAC;QAED,MAAM,UAAU,GAAgB,EAAE,CAAC;QACnC,KAAK,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,IAAI,QAAQ,EAAE,CAAC;YAC/C,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC5C,UAAU,CAAC,IAAI,CAAC;gBACd,KAAK,EAAE;oBACL,IAAI;oBACJ,OAAO,EAAE,OAAO,IAAI,SAAS;iBAC9B;gBACD,KAAK,EAAE,WAAW;aACnB,CAAC,CAAC;QACL,CAAC;QAED,0FAA0F;QAC1F,IAAI,aAAa,GAA4B,EAAE,CAAC;QAChD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACrB,MAAM,iBAAiB,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,UAAU,CAAC;YACxD,IAAI,iBAAiB,EAAE,CAAC;gBACtB,aAAa,GAAG,EAAE,GAAG,iBAAiB,EAAE,CAAC;YAC3C,CAAC;QACH,CAAC;QAED,OAAO;YACL,aAAa,EAAE;gBACb;oBACE,QAAQ,EAAE,EAAE,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,EAAE;oBACtF,UAAU;iBACX;aACF;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,OAAO,CAAC,EAAgB;QAC9B,MAAM,WAAW,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC;QAErC,2DAA2D;QAC3D,IAAI,eAAe,GAAuB,SAAS,CAAC;QACpD,MAAM,aAAa,GAAG,EAAE,CAAC,iBAAiB,CAAC;QAC3C,IAAI,aAAa,EAAE,MAAM,IAAI,aAAa,CAAC,MAAM,KAAK,kBAAkB,EAAE,CAAC;YACzE,eAAe,GAAG,SAAS,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QACpD,CAAC;QAED,aAAa;QACb,MAAM,KAAK,GAAG,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAExD,SAAS;QACT,MAAM,MAAM,GAAgB,EAAE,CAAC;QAC/B,KAAK,MAAM,EAAE,IAAI,EAAE,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;YACjC,6DAA6D;YAC7D,IAAI,MAAc,CAAC;YACnB,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3B,MAAM,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,UAAU,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAChD,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,EAAE,CAAC,IAAc,CAAC;YAC7B,CAAC;YAED,MAAM,OAAO,GAAG,EAAE,CAAC,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YACrG,MAAM,CAAC,IAAI,CAAC;gBACV,YAAY,EAAE,MAAM;gBACpB,IAAI,EAAE,EAAE,CAAC,IAAI;gBACb,UAAU,EAAE,OAAO;aACpB,CAAC,CAAC;QACL,CAAC;QAED,QAAQ;QACR,MAAM,KAAK,GAAe,EAAE,CAAC;QAC7B,KAAK,MAAM,EAAE,IAAI,EAAE,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;YAChC,MAAM,OAAO,GAAG,EAAE,CAAC,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YACrG,KAAK,CAAC,IAAI,CAAC;gBACT,OAAO,EAAE,UAAU,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC;gBACvC,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;gBACpC,UAAU,EAAE,OAAO;aACpB,CAAC,CAAC;QACL,CAAC;QAED,SAAS;QACT,MAAM,UAAU,GAAG,EAAE,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,oCAAoC;QAC7E,MAAM,MAAM,GAAe;YACzB,IAAI,EAAE,UAAU,CAAC,UAAU,CAAC;YAC5B,OAAO,EAAE,EAAE,CAAC,MAAM,EAAE,OAAO,IAAI,EAAE;SAClC,CAAC;QAEF,yFAAyF;QACzF,IAAI,WAAmB,CAAC;QACxB,IAAI,SAAiB,CAAC;QAEtB,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC;YAChC,uCAAuC;YACvC,WAAW,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,UAAU,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QAC/D,CAAC;aAAM,CAAC;YACN,0BAA0B;YAC1B,WAAW,GAAG,EAAE,CAAC,SAAmB,CAAC;QACvC,CAAC;QAED,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;YAC9B,uCAAuC;YACvC,SAAS,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,UAAU,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACzD,CAAC;aAAM,CAAC;YACN,0BAA0B;YAC1B,SAAS,GAAG,EAAE,CAAC,OAAiB,CAAC;QACnC,CAAC;QAED,OAAO;YACL,OAAO,EAAE,UAAU,CAAC,WAAW,CAAC,OAAO,CAAC;YACxC,MAAM,EAAE,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC;YACrC,YAAY,EAAE,eAAe;YAC7B,IAAI,EAAE,EAAE,CAAC,IAAI;YACb,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC;YACvB,iBAAiB,EAAE,WAAW;YAC9B,eAAe,EAAE,SAAS;YAC1B,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;YACxD,MAAM,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI;YACzC,KAAK,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;YACtC,MAAM;SACP,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ;QACZ,MAAM,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;QACzD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU;QACd,gCAAgC;QAChC,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC3B,CAAC;CACF"}
|
|
@@ -11,17 +11,18 @@ export type TokenResolver = (agentId: string, tenantId: string) => string | null
|
|
|
11
11
|
* These values tune batching, timeouts, token acquisition and endpoint shape. All properties have sensible
|
|
12
12
|
* defaults so callers can usually construct without arguments and override selectively.
|
|
13
13
|
*
|
|
14
|
-
* @property {ClusterCategory | string} clusterCategory Environment / cluster category (e.g.
|
|
14
|
+
* @property {ClusterCategory | string} clusterCategory Environment / cluster category (e.g. ClusterCategory.preprod, ClusterCategory.prod, default to ClusterCategory.prod).
|
|
15
15
|
* @property {TokenResolver} [tokenResolver] Optional delegate to obtain an auth token. If omitted the exporter will
|
|
16
16
|
* fall back to reading the cached token (AgenticTokenCacheInstance.getObservabilityToken).
|
|
17
|
-
* @property {boolean} [useS2SEndpoint] When true, exporter will POST to the S2S path (/
|
|
17
|
+
* @property {boolean} [useS2SEndpoint] When true, exporter will POST to the S2S path (/observabilityService/tenants/{tenantId}/otlp/agents/{agentId}/traces).
|
|
18
18
|
* @property {number} maxQueueSize Maximum span queue size before drops occur (passed to BatchSpanProcessor).
|
|
19
19
|
* @property {number} scheduledDelayMilliseconds Delay between automatic batch flush attempts.
|
|
20
|
-
* @property {number} exporterTimeoutMilliseconds
|
|
20
|
+
* @property {number} exporterTimeoutMilliseconds Maximum time (ms) the BatchSpanProcessor waits for the entire export() call to complete before giving up. Covers partitioning, token resolution, and all HTTP retries.
|
|
21
|
+
* @property {number} httpRequestTimeoutMilliseconds Timeout (ms) for each individual HTTP request to the observability backend. Applies per fetch() call inside the retry loop; each retry gets a fresh timeout.
|
|
21
22
|
* @property {number} maxExportBatchSize Maximum number of spans per export batch.
|
|
22
23
|
*/
|
|
23
24
|
export declare class Agent365ExporterOptions {
|
|
24
|
-
/** Environment / cluster category (e.g.
|
|
25
|
+
/** Environment / cluster category (e.g. ClusterCategory.preprod, ClusterCategory.prod). */
|
|
25
26
|
clusterCategory: ClusterCategory | string;
|
|
26
27
|
/** Optional delegate to resolve auth token used by exporter */
|
|
27
28
|
tokenResolver?: TokenResolver;
|
|
@@ -31,8 +32,10 @@ export declare class Agent365ExporterOptions {
|
|
|
31
32
|
maxQueueSize: number;
|
|
32
33
|
/** Delay (ms) between automatic batch flush attempts. */
|
|
33
34
|
scheduledDelayMilliseconds: number;
|
|
34
|
-
/**
|
|
35
|
+
/** Maximum time (ms) the BatchSpanProcessor waits for the entire export() call to complete. */
|
|
35
36
|
exporterTimeoutMilliseconds: number;
|
|
37
|
+
/** Timeout (ms) for each individual HTTP request to the observability backend. Each retry attempt gets a fresh timeout. */
|
|
38
|
+
httpRequestTimeoutMilliseconds: number;
|
|
36
39
|
/** Maximum number of spans per export batch. */
|
|
37
40
|
maxExportBatchSize: number;
|
|
38
41
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Agent365ExporterOptions.d.ts","sourceRoot":"","sources":["../../../../src/tracing/exporter/Agent365ExporterOptions.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"Agent365ExporterOptions.d.ts","sourceRoot":"","sources":["../../../../src/tracing/exporter/Agent365ExporterOptions.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAEjE;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;AAE1G;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,uBAAuB;IAClC,2FAA2F;IACpF,eAAe,EAAE,eAAe,GAAG,MAAM,CAAwB;IAExE,+DAA+D;IACxD,aAAa,CAAC,EAAE,aAAa,CAAC;IAErC,mDAAmD;IAC5C,cAAc,EAAE,OAAO,CAAS;IAEvC,4DAA4D;IACrD,YAAY,EAAE,MAAM,CAAQ;IAEnC,yDAAyD;IAClD,0BAA0B,EAAE,MAAM,CAAQ;IAEjD,+FAA+F;IACxF,2BAA2B,EAAE,MAAM,CAAS;IAEnD,2HAA2H;IACpH,8BAA8B,EAAE,MAAM,CAAS;IAEtD,gDAAgD;IACzC,kBAAkB,EAAE,MAAM,CAAO;CACzC"}
|
|
@@ -2,33 +2,37 @@
|
|
|
2
2
|
// Copyright (c) Microsoft Corporation.
|
|
3
3
|
// Licensed under the MIT License.
|
|
4
4
|
// ------------------------------------------------------------------------------
|
|
5
|
+
import { ClusterCategory } from '@microsoft/agents-a365-runtime';
|
|
5
6
|
/**
|
|
6
7
|
* Options controlling the behavior of the Agent365 OpenTelemetry span exporter.
|
|
7
8
|
*
|
|
8
9
|
* These values tune batching, timeouts, token acquisition and endpoint shape. All properties have sensible
|
|
9
10
|
* defaults so callers can usually construct without arguments and override selectively.
|
|
10
11
|
*
|
|
11
|
-
* @property {ClusterCategory | string} clusterCategory Environment / cluster category (e.g.
|
|
12
|
+
* @property {ClusterCategory | string} clusterCategory Environment / cluster category (e.g. ClusterCategory.preprod, ClusterCategory.prod, default to ClusterCategory.prod).
|
|
12
13
|
* @property {TokenResolver} [tokenResolver] Optional delegate to obtain an auth token. If omitted the exporter will
|
|
13
14
|
* fall back to reading the cached token (AgenticTokenCacheInstance.getObservabilityToken).
|
|
14
|
-
* @property {boolean} [useS2SEndpoint] When true, exporter will POST to the S2S path (/
|
|
15
|
+
* @property {boolean} [useS2SEndpoint] When true, exporter will POST to the S2S path (/observabilityService/tenants/{tenantId}/otlp/agents/{agentId}/traces).
|
|
15
16
|
* @property {number} maxQueueSize Maximum span queue size before drops occur (passed to BatchSpanProcessor).
|
|
16
17
|
* @property {number} scheduledDelayMilliseconds Delay between automatic batch flush attempts.
|
|
17
|
-
* @property {number} exporterTimeoutMilliseconds
|
|
18
|
+
* @property {number} exporterTimeoutMilliseconds Maximum time (ms) the BatchSpanProcessor waits for the entire export() call to complete before giving up. Covers partitioning, token resolution, and all HTTP retries.
|
|
19
|
+
* @property {number} httpRequestTimeoutMilliseconds Timeout (ms) for each individual HTTP request to the observability backend. Applies per fetch() call inside the retry loop; each retry gets a fresh timeout.
|
|
18
20
|
* @property {number} maxExportBatchSize Maximum number of spans per export batch.
|
|
19
21
|
*/
|
|
20
22
|
export class Agent365ExporterOptions {
|
|
21
23
|
constructor() {
|
|
22
|
-
/** Environment / cluster category (e.g.
|
|
23
|
-
this.clusterCategory =
|
|
24
|
+
/** Environment / cluster category (e.g. ClusterCategory.preprod, ClusterCategory.prod). */
|
|
25
|
+
this.clusterCategory = ClusterCategory.prod;
|
|
24
26
|
/** When true, use S2S endpoint path for export. */
|
|
25
27
|
this.useS2SEndpoint = false;
|
|
26
28
|
/** Maximum span queue size before new spans are dropped. */
|
|
27
29
|
this.maxQueueSize = 2048;
|
|
28
30
|
/** Delay (ms) between automatic batch flush attempts. */
|
|
29
31
|
this.scheduledDelayMilliseconds = 5000;
|
|
30
|
-
/**
|
|
31
|
-
this.exporterTimeoutMilliseconds =
|
|
32
|
+
/** Maximum time (ms) the BatchSpanProcessor waits for the entire export() call to complete. */
|
|
33
|
+
this.exporterTimeoutMilliseconds = 90000;
|
|
34
|
+
/** Timeout (ms) for each individual HTTP request to the observability backend. Each retry attempt gets a fresh timeout. */
|
|
35
|
+
this.httpRequestTimeoutMilliseconds = 30000;
|
|
32
36
|
/** Maximum number of spans per export batch. */
|
|
33
37
|
this.maxExportBatchSize = 512;
|
|
34
38
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Agent365ExporterOptions.js","sourceRoot":"","sources":["../../../../src/tracing/exporter/Agent365ExporterOptions.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,uCAAuC;AACvC,kCAAkC;AAClC,iFAAiF;
|
|
1
|
+
{"version":3,"file":"Agent365ExporterOptions.js","sourceRoot":"","sources":["../../../../src/tracing/exporter/Agent365ExporterOptions.ts"],"names":[],"mappings":"AAAA,iFAAiF;AACjF,uCAAuC;AACvC,kCAAkC;AAClC,iFAAiF;AAEjF,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AASjE;;;;;;;;;;;;;;;GAeG;AACH,MAAM,OAAO,uBAAuB;IAApC;QACE,2FAA2F;QACpF,oBAAe,GAA6B,eAAe,CAAC,IAAI,CAAC;QAKxE,mDAAmD;QAC5C,mBAAc,GAAY,KAAK,CAAC;QAEvC,4DAA4D;QACrD,iBAAY,GAAW,IAAI,CAAC;QAEnC,yDAAyD;QAClD,+BAA0B,GAAW,IAAI,CAAC;QAEjD,+FAA+F;QACxF,gCAA2B,GAAW,KAAK,CAAC;QAEnD,2HAA2H;QACpH,mCAA8B,GAAW,KAAK,CAAC;QAEtD,gDAAgD;QACzC,uBAAkB,GAAW,GAAG,CAAC;IAC1C,CAAC;CAAA"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Event names used by Agent365Exporter for logging and monitoring.
|
|
3
|
+
* These are low-cardinality event types to ensure efficient monitoring and aggregation.
|
|
4
|
+
*/
|
|
5
|
+
export declare enum ExporterEventNames {
|
|
6
|
+
/**
|
|
7
|
+
* Overall export operation event - logs the entire batch export success/failure and duration
|
|
8
|
+
*/
|
|
9
|
+
EXPORT = "agent365-export",
|
|
10
|
+
/**
|
|
11
|
+
* Group export operation event - logs individual tenant/agent group export success/failure and duration.
|
|
12
|
+
* Contextual information (tenantId, agentId, correlationId) should be passed in the details parameter.
|
|
13
|
+
*/
|
|
14
|
+
EXPORT_GROUP = "export-group",
|
|
15
|
+
/**
|
|
16
|
+
* Tracked spans being skipped due to missing tenant or agent ID. Before export event, spans are partitioned by identity (tenant or agent ID) first.
|
|
17
|
+
*/
|
|
18
|
+
EXPORT_PARTITION_SPAN_MISSING_IDENTITY = "export-partition-span-missing-identity"
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=ExporterEventNames.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExporterEventNames.d.ts","sourceRoot":"","sources":["../../../../src/tracing/exporter/ExporterEventNames.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,oBAAY,kBAAkB;IAC5B;;OAEG;IACH,MAAM,oBAAoB;IAE1B;;;OAGG;IACH,YAAY,iBAAiB;IAE7B;;OAEG;IACH,sCAAsC,2CAA2C;CAClF"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
// Copyright (c) Microsoft Corporation.
|
|
2
|
+
// Licensed under the MIT License.
|
|
3
|
+
/**
|
|
4
|
+
* Event names used by Agent365Exporter for logging and monitoring.
|
|
5
|
+
* These are low-cardinality event types to ensure efficient monitoring and aggregation.
|
|
6
|
+
*/
|
|
7
|
+
export var ExporterEventNames;
|
|
8
|
+
(function (ExporterEventNames) {
|
|
9
|
+
/**
|
|
10
|
+
* Overall export operation event - logs the entire batch export success/failure and duration
|
|
11
|
+
*/
|
|
12
|
+
ExporterEventNames["EXPORT"] = "agent365-export";
|
|
13
|
+
/**
|
|
14
|
+
* Group export operation event - logs individual tenant/agent group export success/failure and duration.
|
|
15
|
+
* Contextual information (tenantId, agentId, correlationId) should be passed in the details parameter.
|
|
16
|
+
*/
|
|
17
|
+
ExporterEventNames["EXPORT_GROUP"] = "export-group";
|
|
18
|
+
/**
|
|
19
|
+
* Tracked spans being skipped due to missing tenant or agent ID. Before export event, spans are partitioned by identity (tenant or agent ID) first.
|
|
20
|
+
*/
|
|
21
|
+
ExporterEventNames["EXPORT_PARTITION_SPAN_MISSING_IDENTITY"] = "export-partition-span-missing-identity";
|
|
22
|
+
})(ExporterEventNames || (ExporterEventNames = {}));
|
|
23
|
+
//# sourceMappingURL=ExporterEventNames.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ExporterEventNames.js","sourceRoot":"","sources":["../../../../src/tracing/exporter/ExporterEventNames.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC;;;GAGG;AACH,MAAM,CAAN,IAAY,kBAgBX;AAhBD,WAAY,kBAAkB;IAC5B;;OAEG;IACH,gDAA0B,CAAA;IAE1B;;;OAGG;IACH,mDAA6B,CAAA;IAE7B;;OAEG;IACH,uGAAiF,CAAA;AACnF,CAAC,EAhBW,kBAAkB,KAAlB,kBAAkB,QAgB7B"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ReadableSpan } from '@opentelemetry/sdk-trace-base';
|
|
2
2
|
import { SpanKind, SpanStatusCode } from '@opentelemetry/api';
|
|
3
|
-
import { ClusterCategory } from '@microsoft/agents-a365-runtime';
|
|
3
|
+
import { ClusterCategory, IConfigurationProvider } from '@microsoft/agents-a365-runtime';
|
|
4
|
+
import { ObservabilityConfiguration, PerRequestSpanProcessorConfiguration } from '../../configuration';
|
|
4
5
|
/**
|
|
5
6
|
* Convert trace ID to hex string format
|
|
6
7
|
*/
|
|
@@ -27,20 +28,17 @@ export declare function statusName(code: SpanStatusCode): string;
|
|
|
27
28
|
export declare function partitionByIdentity(spans: ReadableSpan[]): Map<string, ReadableSpan[]>;
|
|
28
29
|
/**
|
|
29
30
|
* Check if Agent 365 exporter is enabled via environment variable
|
|
31
|
+
* @param configProvider Optional configuration provider. Defaults to defaultObservabilityConfigurationProvider if not specified.
|
|
30
32
|
*/
|
|
31
|
-
export declare function isAgent365ExporterEnabled(): boolean;
|
|
33
|
+
export declare function isAgent365ExporterEnabled(configProvider?: IConfigurationProvider<ObservabilityConfiguration>): boolean;
|
|
32
34
|
/**
|
|
33
|
-
* Check if per-request export is enabled
|
|
35
|
+
* Check if per-request export is enabled.
|
|
36
|
+
* Precedence: internal overrides > configuration provider > environment variable.
|
|
34
37
|
* When enabled, the PerRequestSpanProcessor is used instead of BatchSpanProcessor.
|
|
35
38
|
* The token is passed via OTel Context (async local storage) at export time.
|
|
39
|
+
* @param configProvider Optional configuration provider. Defaults to defaultPerRequestSpanProcessorConfigurationProvider if not specified.
|
|
36
40
|
*/
|
|
37
|
-
export declare function isPerRequestExportEnabled(): boolean;
|
|
38
|
-
/**
|
|
39
|
-
* Single toggle to use custom domain for observability export.
|
|
40
|
-
* When true exporter will send traces to custom Agent365 service endpoint
|
|
41
|
-
* and include x-ms-tenant-id in headers.
|
|
42
|
-
*/
|
|
43
|
-
export declare function useCustomDomainForObservability(): boolean;
|
|
41
|
+
export declare function isPerRequestExportEnabled(configProvider?: IConfigurationProvider<PerRequestSpanProcessorConfiguration>): boolean;
|
|
44
42
|
/**
|
|
45
43
|
* Resolve the Agent365 service endpoint base URI for a given cluster category.
|
|
46
44
|
* When an explicit override is not configured, this determines the default base URI.
|
|
@@ -51,8 +49,9 @@ export declare function resolveAgent365Endpoint(clusterCategory: ClusterCategory
|
|
|
51
49
|
* Internal development and test clusters can override this by setting the
|
|
52
50
|
* `A365_OBSERVABILITY_DOMAIN_OVERRIDE` environment variable. When set to a
|
|
53
51
|
* non-empty value, that value is used as the base URI regardless of cluster category. Otherwise, null is returned.
|
|
52
|
+
* @param configProvider Optional configuration provider. Defaults to defaultObservabilityConfigurationProvider if not specified.
|
|
54
53
|
*/
|
|
55
|
-
export declare function getAgent365ObservabilityDomainOverride(): string | null;
|
|
54
|
+
export declare function getAgent365ObservabilityDomainOverride(configProvider?: IConfigurationProvider<ObservabilityConfiguration>): string | null;
|
|
56
55
|
/**
|
|
57
56
|
* Parse identity key back to tenant and agent IDs
|
|
58
57
|
*/
|
|
@@ -60,4 +59,18 @@ export declare function parseIdentityKey(key: string): {
|
|
|
60
59
|
tenantId: string;
|
|
61
60
|
agentId: string;
|
|
62
61
|
};
|
|
62
|
+
/** Maximum allowed span size in bytes (250KB). @internal */
|
|
63
|
+
export declare const MAX_SPAN_SIZE_BYTES: number;
|
|
64
|
+
interface OTLPSpanLike {
|
|
65
|
+
attributes: Record<string, unknown> | null;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Truncate span attributes if the serialized span exceeds MAX_SPAN_SIZE_BYTES.
|
|
69
|
+
*
|
|
70
|
+
* Phase 1: iteratively shrink all fields (blobs, text, json, strings) by size
|
|
71
|
+
* priority, remeasuring after each step.
|
|
72
|
+
* Phase 2 (fallback): replace remaining string attributes with overlimit sentinel.
|
|
73
|
+
*/
|
|
74
|
+
export declare function truncateSpan<T extends OTLPSpanLike>(spanDict: T): T;
|
|
75
|
+
export {};
|
|
63
76
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/tracing/exporter/utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/tracing/exporter/utils.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAKzF,OAAO,EACL,0BAA0B,EAE1B,oCAAoC,EAErC,MAAM,qBAAqB,CAAC;AAG7B;;GAEG;AACH,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAOzD;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAOxD;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAMpD;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAe/C;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,CAWvD;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,YAAY,EAAE,GACpB,GAAG,CAAC,MAAM,EAAE,YAAY,EAAE,CAAC,CA0B7B;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,cAAc,CAAC,EAAE,sBAAsB,CAAC,0BAA0B,CAAC,GAClE,OAAO,CAKT;AAED;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CACvC,cAAc,CAAC,EAAE,sBAAsB,CAAC,oCAAoC,CAAC,GAC5E,OAAO,CAcT;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,eAAe,EAAE,eAAe,GAAG,MAAM,CAMhF;AAED;;;;;;GAMG;AACH,wBAAgB,sCAAsC,CACpD,cAAc,CAAC,EAAE,sBAAsB,CAAC,0BAA0B,CAAC,GAClE,MAAM,GAAG,IAAI,CAGf;AAGD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAGnF;AAMD,4DAA4D;AAC5D,eAAO,MAAM,mBAAmB,QAAa,CAAC;AAqC9C,UAAU,YAAY;IACpB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;CAC5C;AA2QD;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,CAAC,SAAS,YAAY,EAAE,QAAQ,EAAE,CAAC,GAAG,CAAC,CA8DnE"}
|