@microsoft/agents-a365-observability 0.1.0-preview.109 → 0.1.0-preview.112.g4a1ba89875
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/configuration/PerRequestSpanProcessorConfiguration.d.ts +6 -3
- package/dist/cjs/configuration/PerRequestSpanProcessorConfiguration.d.ts.map +1 -1
- package/dist/cjs/configuration/PerRequestSpanProcessorConfiguration.js +27 -7
- package/dist/cjs/configuration/PerRequestSpanProcessorConfiguration.js.map +1 -1
- package/dist/cjs/configuration/PerRequestSpanProcessorConfigurationOptions.d.ts +24 -8
- package/dist/cjs/configuration/PerRequestSpanProcessorConfigurationOptions.d.ts.map +1 -1
- package/dist/cjs/index.d.ts +1 -0
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +6 -1
- 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 +3 -5
- package/dist/cjs/tracing/PerRequestSpanProcessor.d.ts.map +1 -1
- package/dist/cjs/tracing/PerRequestSpanProcessor.js +3 -11
- package/dist/cjs/tracing/PerRequestSpanProcessor.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 +2 -0
- package/dist/cjs/tracing/context/parent-span-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/exporter/utils.d.ts +2 -1
- package/dist/cjs/tracing/exporter/utils.d.ts.map +1 -1
- package/dist/cjs/tracing/exporter/utils.js +9 -1
- package/dist/cjs/tracing/exporter/utils.js.map +1 -1
- package/dist/cjs/tracing/scopes/ExecuteToolScope.d.ts +9 -3
- package/dist/cjs/tracing/scopes/ExecuteToolScope.d.ts.map +1 -1
- package/dist/cjs/tracing/scopes/ExecuteToolScope.js +12 -8
- package/dist/cjs/tracing/scopes/ExecuteToolScope.js.map +1 -1
- package/dist/cjs/tracing/scopes/InferenceScope.d.ts +7 -3
- package/dist/cjs/tracing/scopes/InferenceScope.d.ts.map +1 -1
- package/dist/cjs/tracing/scopes/InferenceScope.js +10 -8
- package/dist/cjs/tracing/scopes/InferenceScope.js.map +1 -1
- package/dist/cjs/tracing/scopes/InvokeAgentScope.d.ts +7 -3
- package/dist/cjs/tracing/scopes/InvokeAgentScope.d.ts.map +1 -1
- package/dist/cjs/tracing/scopes/InvokeAgentScope.js +10 -8
- package/dist/cjs/tracing/scopes/InvokeAgentScope.js.map +1 -1
- package/dist/cjs/tracing/scopes/OpenTelemetryScope.d.ts +26 -5
- package/dist/cjs/tracing/scopes/OpenTelemetryScope.d.ts.map +1 -1
- package/dist/cjs/tracing/scopes/OpenTelemetryScope.js +66 -11
- package/dist/cjs/tracing/scopes/OpenTelemetryScope.js.map +1 -1
- package/dist/cjs/tracing/scopes/OutputScope.d.ts +7 -3
- package/dist/cjs/tracing/scopes/OutputScope.d.ts.map +1 -1
- package/dist/cjs/tracing/scopes/OutputScope.js +8 -5
- package/dist/cjs/tracing/scopes/OutputScope.js.map +1 -1
- package/dist/esm/configuration/PerRequestSpanProcessorConfiguration.d.ts +6 -3
- package/dist/esm/configuration/PerRequestSpanProcessorConfiguration.d.ts.map +1 -1
- package/dist/esm/configuration/PerRequestSpanProcessorConfiguration.js +27 -7
- package/dist/esm/configuration/PerRequestSpanProcessorConfiguration.js.map +1 -1
- package/dist/esm/configuration/PerRequestSpanProcessorConfigurationOptions.d.ts +24 -8
- package/dist/esm/configuration/PerRequestSpanProcessorConfigurationOptions.d.ts.map +1 -1
- package/dist/esm/index.d.ts +1 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +2 -0
- 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 +3 -5
- package/dist/esm/tracing/PerRequestSpanProcessor.d.ts.map +1 -1
- package/dist/esm/tracing/PerRequestSpanProcessor.js +3 -11
- package/dist/esm/tracing/PerRequestSpanProcessor.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 +2 -0
- package/dist/esm/tracing/context/parent-span-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/exporter/utils.d.ts +2 -1
- package/dist/esm/tracing/exporter/utils.d.ts.map +1 -1
- package/dist/esm/tracing/exporter/utils.js +9 -1
- package/dist/esm/tracing/exporter/utils.js.map +1 -1
- package/dist/esm/tracing/scopes/ExecuteToolScope.d.ts +9 -3
- package/dist/esm/tracing/scopes/ExecuteToolScope.d.ts.map +1 -1
- package/dist/esm/tracing/scopes/ExecuteToolScope.js +12 -8
- package/dist/esm/tracing/scopes/ExecuteToolScope.js.map +1 -1
- package/dist/esm/tracing/scopes/InferenceScope.d.ts +7 -3
- package/dist/esm/tracing/scopes/InferenceScope.d.ts.map +1 -1
- package/dist/esm/tracing/scopes/InferenceScope.js +10 -8
- package/dist/esm/tracing/scopes/InferenceScope.js.map +1 -1
- package/dist/esm/tracing/scopes/InvokeAgentScope.d.ts +7 -3
- package/dist/esm/tracing/scopes/InvokeAgentScope.d.ts.map +1 -1
- package/dist/esm/tracing/scopes/InvokeAgentScope.js +10 -8
- package/dist/esm/tracing/scopes/InvokeAgentScope.js.map +1 -1
- package/dist/esm/tracing/scopes/OpenTelemetryScope.d.ts +26 -5
- package/dist/esm/tracing/scopes/OpenTelemetryScope.d.ts.map +1 -1
- package/dist/esm/tracing/scopes/OpenTelemetryScope.js +66 -11
- package/dist/esm/tracing/scopes/OpenTelemetryScope.js.map +1 -1
- package/dist/esm/tracing/scopes/OutputScope.d.ts +7 -3
- package/dist/esm/tracing/scopes/OutputScope.d.ts.map +1 -1
- package/dist/esm/tracing/scopes/OutputScope.js +8 -5
- package/dist/esm/tracing/scopes/OutputScope.js.map +1 -1
- package/package.json +2 -2
|
@@ -1,19 +1,22 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { RuntimeConfiguration } from '@microsoft/agents-a365-runtime';
|
|
2
2
|
import { PerRequestSpanProcessorConfigurationOptions } from './PerRequestSpanProcessorConfigurationOptions';
|
|
3
3
|
/**
|
|
4
4
|
* Configuration for PerRequestSpanProcessor.
|
|
5
|
-
* Inherits
|
|
5
|
+
* Inherits runtime settings (clusterCategory, isNodeEnvDevelopment) and adds
|
|
6
|
+
* per-request processor guardrails.
|
|
6
7
|
*
|
|
7
8
|
* This is separated from ObservabilityConfiguration because PerRequestSpanProcessor
|
|
8
9
|
* is used only in specific scenarios and these settings should not be exposed
|
|
9
10
|
* in the common ObservabilityConfiguration.
|
|
10
11
|
*/
|
|
11
|
-
export declare class PerRequestSpanProcessorConfiguration extends
|
|
12
|
+
export declare class PerRequestSpanProcessorConfiguration extends RuntimeConfiguration {
|
|
12
13
|
protected get perRequestOverrides(): PerRequestSpanProcessorConfigurationOptions;
|
|
13
14
|
constructor(overrides?: PerRequestSpanProcessorConfigurationOptions);
|
|
14
15
|
get isPerRequestExportEnabled(): boolean;
|
|
15
16
|
get perRequestMaxTraces(): number;
|
|
16
17
|
get perRequestMaxSpansPerTrace(): number;
|
|
17
18
|
get perRequestMaxConcurrentExports(): number;
|
|
19
|
+
get perRequestFlushGraceMs(): number;
|
|
20
|
+
get perRequestMaxTraceAgeMs(): number;
|
|
18
21
|
}
|
|
19
22
|
//# sourceMappingURL=PerRequestSpanProcessorConfiguration.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PerRequestSpanProcessorConfiguration.d.ts","sourceRoot":"","sources":["../../../src/configuration/PerRequestSpanProcessorConfiguration.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"PerRequestSpanProcessorConfiguration.d.ts","sourceRoot":"","sources":["../../../src/configuration/PerRequestSpanProcessorConfiguration.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,2CAA2C,EAAE,MAAM,+CAA+C,CAAC;AAU5G;;;;;;;;GAQG;AACH,qBAAa,oCAAqC,SAAQ,oBAAoB;IAC5E,SAAS,KAAK,mBAAmB,IAAI,2CAA2C,CAY/E;gBAEW,SAAS,CAAC,EAAE,2CAA2C;IAInE,IAAI,yBAAyB,IAAI,OAAO,CAIvC;IAED,IAAI,mBAAmB,IAAI,MAAM,CAIhC;IAED,IAAI,0BAA0B,IAAI,MAAM,CAIvC;IAED,IAAI,8BAA8B,IAAI,MAAM,CAI3C;IAED,IAAI,sBAAsB,IAAI,MAAM,CAInC;IAED,IAAI,uBAAuB,IAAI,MAAM,CAIpC;CACF"}
|
|
@@ -4,29 +4,39 @@
|
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
5
|
exports.PerRequestSpanProcessorConfiguration = void 0;
|
|
6
6
|
const agents_a365_runtime_1 = require("@microsoft/agents-a365-runtime");
|
|
7
|
-
const
|
|
7
|
+
const PerRequestProcessorInternalOverrides_1 = require("../internal/PerRequestProcessorInternalOverrides");
|
|
8
8
|
/** Guardrails to prevent unbounded memory growth / export bursts. Used for PerRequestSpanProcessor only. */
|
|
9
9
|
const DEFAULT_MAX_BUFFERED_TRACES = 1000;
|
|
10
10
|
const DEFAULT_MAX_SPANS_PER_TRACE = 5000;
|
|
11
11
|
const DEFAULT_MAX_CONCURRENT_EXPORTS = 20;
|
|
12
|
+
const DEFAULT_FLUSH_GRACE_MS = 250;
|
|
13
|
+
const DEFAULT_MAX_TRACE_AGE_MS = 30 * 60 * 1000; // 30 minutes
|
|
12
14
|
/**
|
|
13
15
|
* Configuration for PerRequestSpanProcessor.
|
|
14
|
-
* Inherits
|
|
16
|
+
* Inherits runtime settings (clusterCategory, isNodeEnvDevelopment) and adds
|
|
17
|
+
* per-request processor guardrails.
|
|
15
18
|
*
|
|
16
19
|
* This is separated from ObservabilityConfiguration because PerRequestSpanProcessor
|
|
17
20
|
* is used only in specific scenarios and these settings should not be exposed
|
|
18
21
|
* in the common ObservabilityConfiguration.
|
|
19
22
|
*/
|
|
20
|
-
class PerRequestSpanProcessorConfiguration extends
|
|
23
|
+
class PerRequestSpanProcessorConfiguration extends agents_a365_runtime_1.RuntimeConfiguration {
|
|
21
24
|
get perRequestOverrides() {
|
|
22
|
-
|
|
25
|
+
const internal = (0, PerRequestProcessorInternalOverrides_1.getPerRequestProcessorInternalOverrides)();
|
|
26
|
+
const instanceOverrides = this.overrides;
|
|
27
|
+
return {
|
|
28
|
+
...(instanceOverrides ?? {}),
|
|
29
|
+
...(internal?.isPerRequestExportEnabled !== undefined && { isPerRequestExportEnabled: internal.isPerRequestExportEnabled }),
|
|
30
|
+
...(internal?.perRequestMaxTraces !== undefined && { perRequestMaxTraces: internal.perRequestMaxTraces }),
|
|
31
|
+
...(internal?.perRequestMaxSpansPerTrace !== undefined && { perRequestMaxSpansPerTrace: internal.perRequestMaxSpansPerTrace }),
|
|
32
|
+
...(internal?.perRequestMaxConcurrentExports !== undefined && { perRequestMaxConcurrentExports: internal.perRequestMaxConcurrentExports }),
|
|
33
|
+
...(internal?.perRequestFlushGraceMs !== undefined && { perRequestFlushGraceMs: internal.perRequestFlushGraceMs }),
|
|
34
|
+
...(internal?.perRequestMaxTraceAgeMs !== undefined && { perRequestMaxTraceAgeMs: internal.perRequestMaxTraceAgeMs }),
|
|
35
|
+
};
|
|
23
36
|
}
|
|
24
37
|
constructor(overrides) {
|
|
25
38
|
super(overrides);
|
|
26
39
|
}
|
|
27
|
-
// Inherited: clusterCategory, isDevelopmentEnvironment, isNodeEnvDevelopment,
|
|
28
|
-
// observabilityAuthenticationScopes, isObservabilityExporterEnabled,
|
|
29
|
-
// useCustomDomainForObservability, observabilityDomainOverride, observabilityLogLevel
|
|
30
40
|
get isPerRequestExportEnabled() {
|
|
31
41
|
const result = this.perRequestOverrides.isPerRequestExportEnabled?.();
|
|
32
42
|
if (result !== undefined)
|
|
@@ -48,6 +58,16 @@ class PerRequestSpanProcessorConfiguration extends ObservabilityConfiguration_1.
|
|
|
48
58
|
?? agents_a365_runtime_1.RuntimeConfiguration.parseEnvInt(process.env.A365_PER_REQUEST_MAX_CONCURRENT_EXPORTS, DEFAULT_MAX_CONCURRENT_EXPORTS);
|
|
49
59
|
return value > 0 ? value : DEFAULT_MAX_CONCURRENT_EXPORTS;
|
|
50
60
|
}
|
|
61
|
+
get perRequestFlushGraceMs() {
|
|
62
|
+
const value = this.perRequestOverrides.perRequestFlushGraceMs?.()
|
|
63
|
+
?? agents_a365_runtime_1.RuntimeConfiguration.parseEnvInt(process.env.A365_PER_REQUEST_FLUSH_GRACE_MS, DEFAULT_FLUSH_GRACE_MS);
|
|
64
|
+
return value > 0 ? value : DEFAULT_FLUSH_GRACE_MS;
|
|
65
|
+
}
|
|
66
|
+
get perRequestMaxTraceAgeMs() {
|
|
67
|
+
const value = this.perRequestOverrides.perRequestMaxTraceAgeMs?.()
|
|
68
|
+
?? agents_a365_runtime_1.RuntimeConfiguration.parseEnvInt(process.env.A365_PER_REQUEST_MAX_TRACE_AGE_MS, DEFAULT_MAX_TRACE_AGE_MS);
|
|
69
|
+
return value > 0 ? value : DEFAULT_MAX_TRACE_AGE_MS;
|
|
70
|
+
}
|
|
51
71
|
}
|
|
52
72
|
exports.PerRequestSpanProcessorConfiguration = PerRequestSpanProcessorConfiguration;
|
|
53
73
|
//# sourceMappingURL=PerRequestSpanProcessorConfiguration.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PerRequestSpanProcessorConfiguration.js","sourceRoot":"","sources":["../../../src/configuration/PerRequestSpanProcessorConfiguration.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,wEAAsE;
|
|
1
|
+
{"version":3,"file":"PerRequestSpanProcessorConfiguration.js","sourceRoot":"","sources":["../../../src/configuration/PerRequestSpanProcessorConfiguration.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,wEAAsE;AAEtE,2GAA2G;AAE3G,4GAA4G;AAC5G,MAAM,2BAA2B,GAAG,IAAI,CAAC;AACzC,MAAM,2BAA2B,GAAG,IAAI,CAAC;AACzC,MAAM,8BAA8B,GAAG,EAAE,CAAC;AAC1C,MAAM,sBAAsB,GAAG,GAAG,CAAC;AACnC,MAAM,wBAAwB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,aAAa;AAE9D;;;;;;;;GAQG;AACH,MAAa,oCAAqC,SAAQ,0CAAoB;IAC5E,IAAc,mBAAmB;QAC/B,MAAM,QAAQ,GAAG,IAAA,8EAAuC,GAAE,CAAC;QAC3D,MAAM,iBAAiB,GAAG,IAAI,CAAC,SAAoE,CAAC;QACpG,OAAO;YACL,GAAG,CAAC,iBAAiB,IAAI,EAAE,CAAC;YAC5B,GAAG,CAAC,QAAQ,EAAE,yBAAyB,KAAK,SAAS,IAAI,EAAE,yBAAyB,EAAE,QAAQ,CAAC,yBAAyB,EAAE,CAAC;YAC3H,GAAG,CAAC,QAAQ,EAAE,mBAAmB,KAAK,SAAS,IAAI,EAAE,mBAAmB,EAAE,QAAQ,CAAC,mBAAmB,EAAE,CAAC;YACzG,GAAG,CAAC,QAAQ,EAAE,0BAA0B,KAAK,SAAS,IAAI,EAAE,0BAA0B,EAAE,QAAQ,CAAC,0BAA0B,EAAE,CAAC;YAC9H,GAAG,CAAC,QAAQ,EAAE,8BAA8B,KAAK,SAAS,IAAI,EAAE,8BAA8B,EAAE,QAAQ,CAAC,8BAA8B,EAAE,CAAC;YAC1I,GAAG,CAAC,QAAQ,EAAE,sBAAsB,KAAK,SAAS,IAAI,EAAE,sBAAsB,EAAE,QAAQ,CAAC,sBAAsB,EAAE,CAAC;YAClH,GAAG,CAAC,QAAQ,EAAE,uBAAuB,KAAK,SAAS,IAAI,EAAE,uBAAuB,EAAE,QAAQ,CAAC,uBAAuB,EAAE,CAAC;SACtH,CAAC;IACJ,CAAC;IAED,YAAY,SAAuD;QACjE,KAAK,CAAC,SAAS,CAAC,CAAC;IACnB,CAAC;IAED,IAAI,yBAAyB;QAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC,yBAAyB,EAAE,EAAE,CAAC;QACtE,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,MAAM,CAAC;QACxC,OAAO,0CAAoB,CAAC,eAAe,CAAC,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;IACxG,CAAC;IAED,IAAI,mBAAmB;QACrB,MAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,CAAC,mBAAmB,EAAE,EAAE;eACzD,0CAAoB,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,EAAE,2BAA2B,CAAC,CAAC;QAC5G,OAAO,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,2BAA2B,CAAC;IACzD,CAAC;IAED,IAAI,0BAA0B;QAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,CAAC,0BAA0B,EAAE,EAAE;eAChE,0CAAoB,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,oCAAoC,EAAE,2BAA2B,CAAC,CAAC;QACrH,OAAO,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,2BAA2B,CAAC;IACzD,CAAC;IAED,IAAI,8BAA8B;QAChC,MAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,CAAC,8BAA8B,EAAE,EAAE;eACpE,0CAAoB,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,uCAAuC,EAAE,8BAA8B,CAAC,CAAC;QAC3H,OAAO,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,8BAA8B,CAAC;IAC5D,CAAC;IAED,IAAI,sBAAsB;QACxB,MAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,CAAC,sBAAsB,EAAE,EAAE;eAC5D,0CAAoB,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,+BAA+B,EAAE,sBAAsB,CAAC,CAAC;QAC3G,OAAO,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,sBAAsB,CAAC;IACpD,CAAC;IAED,IAAI,uBAAuB;QACzB,MAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,CAAC,uBAAuB,EAAE,EAAE;eAC7D,0CAAoB,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,iCAAiC,EAAE,wBAAwB,CAAC,CAAC;QAC/G,OAAO,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,wBAAwB,CAAC;IACtD,CAAC;CACF;AAtDD,oFAsDC"}
|
|
@@ -1,16 +1,12 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { RuntimeConfigurationOptions } from '@microsoft/agents-a365-runtime';
|
|
2
2
|
/**
|
|
3
|
-
* Configuration options for PerRequestSpanProcessor - extends
|
|
3
|
+
* Configuration options for PerRequestSpanProcessor - extends runtime options.
|
|
4
4
|
* All overrides are functions called on each property access.
|
|
5
5
|
*
|
|
6
|
-
* Inherited from ObservabilityConfigurationOptions:
|
|
7
|
-
* - observabilityAuthenticationScopes, isObservabilityExporterEnabled,
|
|
8
|
-
* useCustomDomainForObservability, observabilityDomainOverride, observabilityLogLevel
|
|
9
|
-
*
|
|
10
6
|
* Inherited from RuntimeConfigurationOptions:
|
|
11
|
-
* - clusterCategory,
|
|
7
|
+
* - clusterCategory, isNodeEnvDevelopment
|
|
12
8
|
*/
|
|
13
|
-
export type PerRequestSpanProcessorConfigurationOptions =
|
|
9
|
+
export type PerRequestSpanProcessorConfigurationOptions = RuntimeConfigurationOptions & {
|
|
14
10
|
/**
|
|
15
11
|
* Override to enable/disable per-request export mode.
|
|
16
12
|
* When enabled, spans are buffered per-request and exported when the request completes,
|
|
@@ -51,5 +47,25 @@ export type PerRequestSpanProcessorConfigurationOptions = ObservabilityConfigura
|
|
|
51
47
|
* @default 20
|
|
52
48
|
*/
|
|
53
49
|
perRequestMaxConcurrentExports?: () => number;
|
|
50
|
+
/**
|
|
51
|
+
* Override for grace period (ms) to wait for child spans after root span ends.
|
|
52
|
+
* After the root span ends, the processor waits this long for remaining children
|
|
53
|
+
* before flushing the trace. Values <= 0 are ignored and the default is used.
|
|
54
|
+
*
|
|
55
|
+
* @returns Flush grace period in milliseconds.
|
|
56
|
+
* @envvar A365_PER_REQUEST_FLUSH_GRACE_MS
|
|
57
|
+
* @default 250
|
|
58
|
+
*/
|
|
59
|
+
perRequestFlushGraceMs?: () => number;
|
|
60
|
+
/**
|
|
61
|
+
* Override for maximum age (ms) for a trace before forcing flush.
|
|
62
|
+
* Traces older than this are flushed regardless of whether all spans have ended.
|
|
63
|
+
* Values <= 0 are ignored and the default is used.
|
|
64
|
+
*
|
|
65
|
+
* @returns Maximum trace age in milliseconds.
|
|
66
|
+
* @envvar A365_PER_REQUEST_MAX_TRACE_AGE_MS
|
|
67
|
+
* @default 1800000 (30 minutes)
|
|
68
|
+
*/
|
|
69
|
+
perRequestMaxTraceAgeMs?: () => number;
|
|
54
70
|
};
|
|
55
71
|
//# sourceMappingURL=PerRequestSpanProcessorConfigurationOptions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PerRequestSpanProcessorConfigurationOptions.d.ts","sourceRoot":"","sources":["../../../src/configuration/PerRequestSpanProcessorConfigurationOptions.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"PerRequestSpanProcessorConfigurationOptions.d.ts","sourceRoot":"","sources":["../../../src/configuration/PerRequestSpanProcessorConfigurationOptions.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,2BAA2B,EAAE,MAAM,gCAAgC,CAAC;AAE7E;;;;;;GAMG;AACH,MAAM,MAAM,2CAA2C,GAAG,2BAA2B,GAAG;IACtF;;;;;;;;OAQG;IACH,yBAAyB,CAAC,EAAE,MAAM,OAAO,CAAC;IAE1C;;;;;;;;OAQG;IACH,mBAAmB,CAAC,EAAE,MAAM,MAAM,CAAC;IAEnC;;;;;;;;OAQG;IACH,0BAA0B,CAAC,EAAE,MAAM,MAAM,CAAC;IAE1C;;;;;;;;OAQG;IACH,8BAA8B,CAAC,EAAE,MAAM,MAAM,CAAC;IAE9C;;;;;;;;OAQG;IACH,sBAAsB,CAAC,EAAE,MAAM,MAAM,CAAC;IAEtC;;;;;;;;OAQG;IACH,uBAAuB,CAAC,EAAE,MAAM,MAAM,CAAC;CACxC,CAAC"}
|
package/dist/cjs/index.d.ts
CHANGED
|
@@ -6,6 +6,7 @@ export { ExporterEventNames } from './tracing/exporter/ExporterEventNames';
|
|
|
6
6
|
export { BaggageBuilder, BaggageScope } from './tracing/middleware/BaggageBuilder';
|
|
7
7
|
export { runWithExportToken, updateExportToken, getExportToken } from './tracing/context/token-context';
|
|
8
8
|
export { ParentSpanRef, runWithParentSpanRef, createContextWithParentSpanRef } from './tracing/context/parent-span-context';
|
|
9
|
+
export { HeadersCarrier, ParentContext, injectTraceContext, extractTraceContext, runWithExtractedTraceContext } from './tracing/context/trace-context-propagation';
|
|
9
10
|
export { ExecutionType, InvocationRole, SourceMetadata, AgentRequest, AgentDetails, TenantDetails, ToolCallDetails, InvokeAgentDetails, CallerDetails, EnhancedAgentDetails, ServiceEndpoint, InferenceDetails, InferenceOperationType, InferenceResponse, OutputResponse } from './tracing/contracts';
|
|
10
11
|
export { OpenTelemetryScope } from './tracing/scopes/OpenTelemetryScope';
|
|
11
12
|
export { ExecuteToolScope } from './tracing/scopes/ExecuteToolScope';
|
package/dist/cjs/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,oBAAoB,IAAI,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACzF,OAAO,EAAE,uBAAuB,EAAE,MAAM,4CAA4C,CAAC;AAErF,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAG3E,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAGnF,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAGxG,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,8BAA8B,EAAE,MAAM,uCAAuC,CAAC;AAG5H,OAAO,EACL,aAAa,EACb,cAAc,EACd,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,aAAa,EACb,oBAAoB,EACpB,eAAe,EACf,gBAAgB,EAChB,sBAAsB,EACtB,iBAAiB,EACjB,cAAc,EACf,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACzF,YAAY,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAG/C,cAAc,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,oBAAoB,IAAI,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACzF,OAAO,EAAE,uBAAuB,EAAE,MAAM,4CAA4C,CAAC;AAErF,OAAO,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAG3E,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AAGnF,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAGxG,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,8BAA8B,EAAE,MAAM,uCAAuC,CAAC;AAG5H,OAAO,EACL,cAAc,EACd,aAAa,EACb,kBAAkB,EAClB,mBAAmB,EACnB,4BAA4B,EAC7B,MAAM,6CAA6C,CAAC;AAGrD,OAAO,EACL,aAAa,EACb,cAAc,EACd,cAAc,EACd,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,eAAe,EACf,kBAAkB,EAClB,aAAa,EACb,oBAAoB,EACpB,eAAe,EACf,gBAAgB,EAChB,sBAAsB,EACtB,iBAAiB,EACjB,cAAc,EACf,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACzF,YAAY,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAG/C,cAAc,iBAAiB,CAAC"}
|
package/dist/cjs/index.js
CHANGED
|
@@ -17,7 +17,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
17
17
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
18
18
|
};
|
|
19
19
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
-
exports.formatError = exports.resetLogger = exports.getLogger = exports.setLogger = exports.logger = exports.OutputScope = exports.InferenceScope = exports.InvokeAgentScope = exports.ExecuteToolScope = exports.OpenTelemetryScope = exports.InferenceOperationType = exports.InvocationRole = exports.ExecutionType = exports.createContextWithParentSpanRef = exports.runWithParentSpanRef = exports.getExportToken = exports.updateExportToken = exports.runWithExportToken = exports.BaggageScope = exports.BaggageBuilder = exports.ExporterEventNames = exports.OpenTelemetryConstants = exports.Agent365ExporterOptions = exports.Builder = exports.ObservabilityManager = void 0;
|
|
20
|
+
exports.formatError = exports.resetLogger = exports.getLogger = exports.setLogger = exports.logger = exports.OutputScope = exports.InferenceScope = exports.InvokeAgentScope = exports.ExecuteToolScope = exports.OpenTelemetryScope = exports.InferenceOperationType = exports.InvocationRole = exports.ExecutionType = exports.runWithExtractedTraceContext = exports.extractTraceContext = exports.injectTraceContext = exports.createContextWithParentSpanRef = exports.runWithParentSpanRef = exports.getExportToken = exports.updateExportToken = exports.runWithExportToken = exports.BaggageScope = exports.BaggageBuilder = exports.ExporterEventNames = exports.OpenTelemetryConstants = exports.Agent365ExporterOptions = exports.Builder = exports.ObservabilityManager = void 0;
|
|
21
21
|
// Main SDK classes
|
|
22
22
|
var ObservabilityManager_1 = require("./ObservabilityManager");
|
|
23
23
|
Object.defineProperty(exports, "ObservabilityManager", { enumerable: true, get: function () { return ObservabilityManager_1.ObservabilityManager; } });
|
|
@@ -43,6 +43,11 @@ Object.defineProperty(exports, "getExportToken", { enumerable: true, get: functi
|
|
|
43
43
|
var parent_span_context_1 = require("./tracing/context/parent-span-context");
|
|
44
44
|
Object.defineProperty(exports, "runWithParentSpanRef", { enumerable: true, get: function () { return parent_span_context_1.runWithParentSpanRef; } });
|
|
45
45
|
Object.defineProperty(exports, "createContextWithParentSpanRef", { enumerable: true, get: function () { return parent_span_context_1.createContextWithParentSpanRef; } });
|
|
46
|
+
// Trace context propagation utilities (W3C traceparent/tracestate)
|
|
47
|
+
var trace_context_propagation_1 = require("./tracing/context/trace-context-propagation");
|
|
48
|
+
Object.defineProperty(exports, "injectTraceContext", { enumerable: true, get: function () { return trace_context_propagation_1.injectTraceContext; } });
|
|
49
|
+
Object.defineProperty(exports, "extractTraceContext", { enumerable: true, get: function () { return trace_context_propagation_1.extractTraceContext; } });
|
|
50
|
+
Object.defineProperty(exports, "runWithExtractedTraceContext", { enumerable: true, get: function () { return trace_context_propagation_1.runWithExtractedTraceContext; } });
|
|
46
51
|
// Contracts and interfaces
|
|
47
52
|
var contracts_1 = require("./tracing/contracts");
|
|
48
53
|
Object.defineProperty(exports, "ExecutionType", { enumerable: true, get: function () { return contracts_1.ExecutionType; } });
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA,iFAAiF;AACjF,4DAA4D;AAC5D,iFAAiF;;;;;;;;;;;;;;;;;AAEjF,mBAAmB;AACnB,+DAA8D;AAArD,4HAAA,oBAAoB,OAAA;AAC7B,+DAAyF;AAAhF,+GAAA,oBAAoB,OAAW;AACxC,sFAAqF;AAA5E,kIAAA,uBAAuB,OAAA;AAChC,oBAAoB;AACpB,iDAA6D;AAApD,mHAAA,sBAAsB,OAAA;AAC/B,4EAA2E;AAAlE,wHAAA,kBAAkB,OAAA;AAE3B,kBAAkB;AAClB,sEAAmF;AAA1E,gHAAA,cAAc,OAAA;AAAE,8GAAA,YAAY,OAAA;AAErC,+BAA+B;AAC/B,iEAAwG;AAA/F,mHAAA,kBAAkB,OAAA;AAAE,kHAAA,iBAAiB,OAAA;AAAE,+GAAA,cAAc,OAAA;AAE9D,gCAAgC;AAChC,6EAA4H;AAApG,2HAAA,oBAAoB,OAAA;AAAE,qIAAA,8BAA8B,OAAA;AAE5E,2BAA2B;AAC3B,iDAgB6B;AAf3B,0GAAA,aAAa,OAAA;AACb,2GAAA,cAAc,OAAA;AAWd,mHAAA,sBAAsB,OAAA;AAKxB,SAAS;AACT,0EAAyE;AAAhE,wHAAA,kBAAkB,OAAA;AAC3B,sEAAqE;AAA5D,oHAAA,gBAAgB,OAAA;AACzB,sEAAqE;AAA5D,oHAAA,gBAAgB,OAAA;AACzB,kEAAiE;AAAxD,gHAAA,cAAc,OAAA;AACvB,4DAA2D;AAAlD,0GAAA,WAAW,OAAA;AACpB,2CAAyF;AAAhF,iGAAA,MAAM,OAAA;AAAE,oGAAA,SAAS,OAAA;AAAE,oGAAA,SAAS,OAAA;AAAE,sGAAA,WAAW,OAAA;AAAE,sGAAA,WAAW,OAAA;AAG/D,gBAAgB;AAChB,kDAAgC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA,iFAAiF;AACjF,4DAA4D;AAC5D,iFAAiF;;;;;;;;;;;;;;;;;AAEjF,mBAAmB;AACnB,+DAA8D;AAArD,4HAAA,oBAAoB,OAAA;AAC7B,+DAAyF;AAAhF,+GAAA,oBAAoB,OAAW;AACxC,sFAAqF;AAA5E,kIAAA,uBAAuB,OAAA;AAChC,oBAAoB;AACpB,iDAA6D;AAApD,mHAAA,sBAAsB,OAAA;AAC/B,4EAA2E;AAAlE,wHAAA,kBAAkB,OAAA;AAE3B,kBAAkB;AAClB,sEAAmF;AAA1E,gHAAA,cAAc,OAAA;AAAE,8GAAA,YAAY,OAAA;AAErC,+BAA+B;AAC/B,iEAAwG;AAA/F,mHAAA,kBAAkB,OAAA;AAAE,kHAAA,iBAAiB,OAAA;AAAE,+GAAA,cAAc,OAAA;AAE9D,gCAAgC;AAChC,6EAA4H;AAApG,2HAAA,oBAAoB,OAAA;AAAE,qIAAA,8BAA8B,OAAA;AAE5E,mEAAmE;AACnE,yFAMqD;AAHnD,+HAAA,kBAAkB,OAAA;AAClB,gIAAA,mBAAmB,OAAA;AACnB,yIAAA,4BAA4B,OAAA;AAG9B,2BAA2B;AAC3B,iDAgB6B;AAf3B,0GAAA,aAAa,OAAA;AACb,2GAAA,cAAc,OAAA;AAWd,mHAAA,sBAAsB,OAAA;AAKxB,SAAS;AACT,0EAAyE;AAAhE,wHAAA,kBAAkB,OAAA;AAC3B,sEAAqE;AAA5D,oHAAA,gBAAgB,OAAA;AACzB,sEAAqE;AAA5D,oHAAA,gBAAgB,OAAA;AACzB,kEAAiE;AAAxD,gHAAA,cAAc,OAAA;AACvB,4DAA2D;AAAlD,0GAAA,WAAW,OAAA;AACpB,2CAAyF;AAAhF,iGAAA,MAAM,OAAA;AAAE,oGAAA,SAAS,OAAA;AAAE,oGAAA,SAAS,OAAA;AAAE,sGAAA,WAAW,OAAA;AAAE,sGAAA,WAAW,OAAA;AAG/D,gBAAgB;AAChB,kDAAgC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { PerRequestSpanProcessorConfigurationOptions } from '../configuration/PerRequestSpanProcessorConfigurationOptions';
|
|
2
|
+
export declare function setPerRequestProcessorInternalOverrides(value?: PerRequestSpanProcessorConfigurationOptions): void;
|
|
3
|
+
export declare function getPerRequestProcessorInternalOverrides(): PerRequestSpanProcessorConfigurationOptions | undefined;
|
|
4
|
+
//# sourceMappingURL=PerRequestProcessorInternalOverrides.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PerRequestProcessorInternalOverrides.d.ts","sourceRoot":"","sources":["../../../src/internal/PerRequestProcessorInternalOverrides.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,2CAA2C,EAAE,MAAM,8DAA8D,CAAC;AAKhI,wBAAgB,uCAAuC,CAAC,KAAK,CAAC,EAAE,2CAA2C,QAE1G;AAED,wBAAgB,uCAAuC,IAAI,2CAA2C,GAAG,SAAS,CAEjH"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Copyright (c) Microsoft Corporation.
|
|
3
|
+
// Licensed under the MIT License.
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.setPerRequestProcessorInternalOverrides = setPerRequestProcessorInternalOverrides;
|
|
6
|
+
exports.getPerRequestProcessorInternalOverrides = getPerRequestProcessorInternalOverrides;
|
|
7
|
+
let overrides;
|
|
8
|
+
// Only for tests / internal usage
|
|
9
|
+
function setPerRequestProcessorInternalOverrides(value) {
|
|
10
|
+
overrides = value;
|
|
11
|
+
}
|
|
12
|
+
function getPerRequestProcessorInternalOverrides() {
|
|
13
|
+
return overrides;
|
|
14
|
+
}
|
|
15
|
+
//# sourceMappingURL=PerRequestProcessorInternalOverrides.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PerRequestProcessorInternalOverrides.js","sourceRoot":"","sources":["../../../src/internal/PerRequestProcessorInternalOverrides.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;AAOlC,0FAEC;AAED,0FAEC;AATD,IAAI,SAAkE,CAAC;AAEvE,kCAAkC;AAClC,SAAgB,uCAAuC,CAAC,KAAmD;IACzG,SAAS,GAAG,KAAK,CAAC;AACpB,CAAC;AAED,SAAgB,uCAAuC;IACrD,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -9,24 +9,22 @@ import { PerRequestSpanProcessorConfiguration } from '../configuration';
|
|
|
9
9
|
*/
|
|
10
10
|
export declare class PerRequestSpanProcessor implements SpanProcessor {
|
|
11
11
|
private readonly exporter;
|
|
12
|
-
private readonly flushGraceMs;
|
|
13
|
-
private readonly maxTraceAgeMs;
|
|
14
12
|
private traces;
|
|
15
13
|
private sweepTimer?;
|
|
16
14
|
private isSweeping;
|
|
17
15
|
private readonly maxBufferedTraces;
|
|
18
16
|
private readonly maxSpansPerTrace;
|
|
19
17
|
private readonly maxConcurrentExports;
|
|
18
|
+
private readonly flushGraceMs;
|
|
19
|
+
private readonly maxTraceAgeMs;
|
|
20
20
|
private inFlightExports;
|
|
21
21
|
private exportWaiters;
|
|
22
22
|
/**
|
|
23
23
|
* Construct a PerRequestSpanProcessor.
|
|
24
24
|
* @param exporter The span exporter to use.
|
|
25
|
-
* @param flushGraceMs Grace period (ms) to wait for child spans after root span ends.
|
|
26
|
-
* @param maxTraceAgeMs Maximum age (ms) for a trace before forcing flush.
|
|
27
25
|
* @param configProvider Optional configuration provider. Defaults to defaultPerRequestSpanProcessorConfigurationProvider if not specified.
|
|
28
26
|
*/
|
|
29
|
-
constructor(exporter: SpanExporter,
|
|
27
|
+
constructor(exporter: SpanExporter, configProvider?: IConfigurationProvider<PerRequestSpanProcessorConfiguration>);
|
|
30
28
|
onStart(span: ReadableSpan, ctx: Context): void;
|
|
31
29
|
onEnd(span: ReadableSpan): void;
|
|
32
30
|
forceFlush(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PerRequestSpanProcessor.d.ts","sourceRoot":"","sources":["../../../src/tracing/PerRequestSpanProcessor.ts"],"names":[],"mappings":"AAKA,OAAO,EAAW,KAAK,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC/F,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAExE,OAAO,EAAE,oCAAoC,EAAuD,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"PerRequestSpanProcessor.d.ts","sourceRoot":"","sources":["../../../src/tracing/PerRequestSpanProcessor.ts"],"names":[],"mappings":"AAKA,OAAO,EAAW,KAAK,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAC/F,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAExE,OAAO,EAAE,oCAAoC,EAAuD,MAAM,kBAAkB,CAAC;AAoB7H;;;;GAIG;AACH,qBAAa,uBAAwB,YAAW,aAAa;IAoBzD,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAnB3B,OAAO,CAAC,MAAM,CAAkC;IAChD,OAAO,CAAC,UAAU,CAAC,CAAiB;IACpC,OAAO,CAAC,UAAU,CAAS;IAE3B,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAS;IAC3C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAS;IAC9C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;IACtC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IAEvC,OAAO,CAAC,eAAe,CAAK;IAC5B,OAAO,CAAC,aAAa,CAAyB;IAE9C;;;;OAIG;gBAEgB,QAAQ,EAAE,YAAY,EACvC,cAAc,CAAC,EAAE,sBAAsB,CAAC,oCAAoC,CAAC;IAW/E,OAAO,CAAC,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,OAAO,GAAG,IAAI;IA6C/C,KAAK,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI;IA4CzB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAM/B,OAAO,CAAC,gBAAgB;IAYxB,OAAO,CAAC,oBAAoB;YAOd,KAAK;YAmCL,UAAU;YA4DV,iBAAiB;IAe/B,OAAO,CAAC,iBAAiB;CAM1B"}
|
|
@@ -11,10 +11,6 @@ exports.PerRequestSpanProcessor = void 0;
|
|
|
11
11
|
const api_1 = require("@opentelemetry/api");
|
|
12
12
|
const logging_1 = __importDefault(require("../utils/logging"));
|
|
13
13
|
const configuration_1 = require("../configuration");
|
|
14
|
-
/** Default grace period (ms) to wait for child spans after root span ends */
|
|
15
|
-
const DEFAULT_FLUSH_GRACE_MS = 250;
|
|
16
|
-
/** Default maximum age (ms) for a trace before forcing flush */
|
|
17
|
-
const DEFAULT_MAX_TRACE_AGE_MS = 30 * 60 * 1000; // 30 minutes
|
|
18
14
|
function isRootSpan(span) {
|
|
19
15
|
return !span.parentSpanContext;
|
|
20
16
|
}
|
|
@@ -27,25 +23,21 @@ class PerRequestSpanProcessor {
|
|
|
27
23
|
/**
|
|
28
24
|
* Construct a PerRequestSpanProcessor.
|
|
29
25
|
* @param exporter The span exporter to use.
|
|
30
|
-
* @param flushGraceMs Grace period (ms) to wait for child spans after root span ends.
|
|
31
|
-
* @param maxTraceAgeMs Maximum age (ms) for a trace before forcing flush.
|
|
32
26
|
* @param configProvider Optional configuration provider. Defaults to defaultPerRequestSpanProcessorConfigurationProvider if not specified.
|
|
33
27
|
*/
|
|
34
|
-
constructor(exporter,
|
|
28
|
+
constructor(exporter, configProvider) {
|
|
35
29
|
this.exporter = exporter;
|
|
36
|
-
this.flushGraceMs = flushGraceMs;
|
|
37
|
-
this.maxTraceAgeMs = maxTraceAgeMs;
|
|
38
30
|
this.traces = new Map();
|
|
39
31
|
this.isSweeping = false;
|
|
40
32
|
this.inFlightExports = 0;
|
|
41
33
|
this.exportWaiters = [];
|
|
42
|
-
// Defaults are intentionally high but bounded; override via configuration if needed.
|
|
43
|
-
// Set to 0 (or negative) to disable a guardrail.
|
|
44
34
|
const effectiveConfigProvider = configProvider ?? configuration_1.defaultPerRequestSpanProcessorConfigurationProvider;
|
|
45
35
|
const config = effectiveConfigProvider.getConfiguration();
|
|
46
36
|
this.maxBufferedTraces = config.perRequestMaxTraces;
|
|
47
37
|
this.maxSpansPerTrace = config.perRequestMaxSpansPerTrace;
|
|
48
38
|
this.maxConcurrentExports = config.perRequestMaxConcurrentExports;
|
|
39
|
+
this.flushGraceMs = config.perRequestFlushGraceMs;
|
|
40
|
+
this.maxTraceAgeMs = config.perRequestMaxTraceAgeMs;
|
|
49
41
|
}
|
|
50
42
|
onStart(span, ctx) {
|
|
51
43
|
const traceId = span.spanContext().traceId;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PerRequestSpanProcessor.js","sourceRoot":"","sources":["../../../src/tracing/PerRequestSpanProcessor.ts"],"names":[],"mappings":";AAAA,iFAAiF;AACjF,uCAAuC;AACvC,kCAAkC;AAClC,iFAAiF;;;;;;AAEjF,4CAA2D;AAG3D,+DAAsC;AACtC,oDAA6H;
|
|
1
|
+
{"version":3,"file":"PerRequestSpanProcessor.js","sourceRoot":"","sources":["../../../src/tracing/PerRequestSpanProcessor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Context, TraceFlags } from '@opentelemetry/api';
|
|
1
|
+
import { Context, TraceFlags, TraceState } from '@opentelemetry/api';
|
|
2
2
|
/**
|
|
3
3
|
* Reference to a parent span for explicit parent-child linking across async boundaries.
|
|
4
4
|
* Used when automatic context propagation fails (e.g., WebSocket callbacks, external event handlers).
|
|
@@ -12,9 +12,18 @@ export interface ParentSpanRef {
|
|
|
12
12
|
* Span ID (16-character hex string)
|
|
13
13
|
*/
|
|
14
14
|
spanId: string;
|
|
15
|
-
/**
|
|
15
|
+
/**
|
|
16
|
+
* Optional trace flags
|
|
16
17
|
*/
|
|
17
18
|
traceFlags?: TraceFlags;
|
|
19
|
+
/**
|
|
20
|
+
* Optional W3C trace state for vendor-specific trace context data
|
|
21
|
+
*/
|
|
22
|
+
traceState?: TraceState;
|
|
23
|
+
/**
|
|
24
|
+
* Whether the span originated from a remote service (default: true)
|
|
25
|
+
*/
|
|
26
|
+
isRemote?: boolean;
|
|
18
27
|
}
|
|
19
28
|
/**
|
|
20
29
|
* Creates a new Context with an explicit parent span reference.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parent-span-context.d.ts","sourceRoot":"","sources":["../../../../src/tracing/context/parent-span-context.ts"],"names":[],"mappings":"AAGA,OAAO,EAAkB,OAAO,EAAe,UAAU,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"parent-span-context.d.ts","sourceRoot":"","sources":["../../../../src/tracing/context/parent-span-context.ts"],"names":[],"mappings":"AAGA,OAAO,EAAkB,OAAO,EAAe,UAAU,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGlG;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;IAExB;;OAEG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;IAExB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAUD;;;;;;;GAOG;AACH,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,GAAG,OAAO,CAoC5F;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,CAKnF"}
|
|
@@ -42,6 +42,8 @@ function createContextWithParentSpanRef(base, parent) {
|
|
|
42
42
|
traceId: parent.traceId,
|
|
43
43
|
spanId: parent.spanId,
|
|
44
44
|
traceFlags,
|
|
45
|
+
traceState: parent.traceState,
|
|
46
|
+
isRemote: parent.isRemote ?? true,
|
|
45
47
|
};
|
|
46
48
|
// Create a non-recording span with the parent context
|
|
47
49
|
const parentSpan = api_1.trace.wrapSpanContext(parentSpanContext);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parent-span-context.js","sourceRoot":"","sources":["../../../../src/tracing/context/parent-span-context.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;
|
|
1
|
+
{"version":3,"file":"parent-span-context.js","sourceRoot":"","sources":["../../../../src/tracing/context/parent-span-context.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;;;AAoDlC,wEAoCC;AAUD,oDAKC;AArGD,4CAAkG;AAClG,kEAAyC;AAiCzC,SAAS,cAAc,CAAC,OAAe;IACrC,OAAO,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,OAAO,KAAK,kCAAkC,CAAC;AAC3F,CAAC;AAED,SAAS,aAAa,CAAC,MAAc;IACnC,OAAO,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,MAAM,KAAK,kBAAkB,CAAC;AACzE,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,8BAA8B,CAAC,IAAa,EAAE,MAAqB;IACjF,iBAAM,CAAC,IAAI,CAAC,kEAAkE,MAAM,CAAC,OAAO,YAAY,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IAEzH,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACrE,iBAAM,CAAC,IAAI,CACT,sFAAsF,MAAM,CAAC,OAAO,YAAY,MAAM,CAAC,MAAM,EAAE,CAChI,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,wBAAwB;IACxB,kDAAkD;IAClD,qDAAqD;IACrD,gFAAgF;IAChF,MAAM,SAAS,GAAG,WAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,CAAC;IACrD,MAAM,UAAU,GACd,MAAM,CAAC,UAAU;WACd,CAAC,SAAS,EAAE,OAAO,KAAK,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;WAC1E,gBAAU,CAAC,OAAO,CAAC;IAExB,iDAAiD;IACjD,MAAM,iBAAiB,GAAgB;QACrC,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,UAAU;QACV,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,IAAI;KAClC,CAAC;IAEF,sDAAsD;IACtD,MAAM,UAAU,GAAG,WAAK,CAAC,eAAe,CAAC,iBAAiB,CAAC,CAAC;IAE5D,oCAAoC;IACpC,MAAM,iBAAiB,GAAG,WAAK,CAAC,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;IAE1D,OAAO,iBAAiB,CAAC;AAC3B,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,oBAAoB,CAAI,MAAqB,EAAE,QAAiB;IAC9E,MAAM,IAAI,GAAG,aAAO,CAAC,MAAM,EAAE,CAAC;IAC9B,MAAM,iBAAiB,GAAG,8BAA8B,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACvE,iBAAM,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAC;IAC9E,OAAO,aAAO,CAAC,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;AACnD,CAAC"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { Context } from '@opentelemetry/api';
|
|
2
|
+
import { ParentSpanRef } from './parent-span-context';
|
|
3
|
+
/**
|
|
4
|
+
* Carrier type for HTTP headers used in trace context propagation.
|
|
5
|
+
* Compatible with Node.js IncomingHttpHeaders and plain string maps.
|
|
6
|
+
*/
|
|
7
|
+
export type HeadersCarrier = Record<string, string | string[] | undefined>;
|
|
8
|
+
/**
|
|
9
|
+
* A parent context for span creation. Accepts either:
|
|
10
|
+
* - {@link ParentSpanRef}: explicit traceId/spanId pair (manual approach)
|
|
11
|
+
* - {@link Context}: an OTel Context, typically from {@link extractTraceContext} or `propagation.extract()`
|
|
12
|
+
*/
|
|
13
|
+
export type ParentContext = ParentSpanRef | Context;
|
|
14
|
+
/**
|
|
15
|
+
* Type guard to distinguish a {@link ParentSpanRef} from an OTel {@link Context}.
|
|
16
|
+
*/
|
|
17
|
+
export declare function isParentSpanRef(value: ParentContext): value is ParentSpanRef;
|
|
18
|
+
/**
|
|
19
|
+
* Injects the current trace context (`traceparent`/`tracestate` headers) into
|
|
20
|
+
* the provided headers object using the globally registered W3C propagator.
|
|
21
|
+
*
|
|
22
|
+
* @param headers Mutable object where trace context headers will be written.
|
|
23
|
+
* @param ctx Optional OTel Context to inject from. Defaults to the active context.
|
|
24
|
+
* @returns The same `headers` object, for chaining convenience.
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* ```typescript
|
|
28
|
+
* const headers: Record<string, string> = {};
|
|
29
|
+
* injectTraceContext(headers);
|
|
30
|
+
* await fetch('http://service-b/process', { headers });
|
|
31
|
+
* ```
|
|
32
|
+
*/
|
|
33
|
+
export declare function injectTraceContext(headers: Record<string, string>, ctx?: Context): Record<string, string>;
|
|
34
|
+
/**
|
|
35
|
+
* Extracts trace context from incoming HTTP headers using the globally
|
|
36
|
+
* registered W3C propagator. Returns an OTel {@link Context} that can be
|
|
37
|
+
* passed to scope classes as a {@link ParentContext}.
|
|
38
|
+
*
|
|
39
|
+
* @param headers The incoming HTTP request headers containing `traceparent`/`tracestate`.
|
|
40
|
+
* @param baseCtx Optional base context to extend. Defaults to the active context.
|
|
41
|
+
* @returns An OTel Context containing the extracted trace information.
|
|
42
|
+
*
|
|
43
|
+
* @example
|
|
44
|
+
* ```typescript
|
|
45
|
+
* const parentCtx = extractTraceContext(req.headers);
|
|
46
|
+
* const scope = InvokeAgentScope.start(details, tenantDetails, undefined, undefined, parentCtx);
|
|
47
|
+
* ```
|
|
48
|
+
*/
|
|
49
|
+
export declare function extractTraceContext(headers: HeadersCarrier, baseCtx?: Context): Context;
|
|
50
|
+
/**
|
|
51
|
+
* Extracts trace context from incoming HTTP headers and runs the callback
|
|
52
|
+
* within that context. Any spans created inside the callback will be
|
|
53
|
+
* parented to the extracted trace.
|
|
54
|
+
*
|
|
55
|
+
* @param headers The incoming HTTP request headers containing `traceparent`/`tracestate`.
|
|
56
|
+
* @param callback The function to execute within the extracted context.
|
|
57
|
+
* @returns The result of the callback.
|
|
58
|
+
*
|
|
59
|
+
* @example
|
|
60
|
+
* ```typescript
|
|
61
|
+
* runWithExtractedTraceContext(req.headers, () => {
|
|
62
|
+
* const scope = InvokeAgentScope.start(details, tenantDetails);
|
|
63
|
+
* scope.dispose();
|
|
64
|
+
* });
|
|
65
|
+
* ```
|
|
66
|
+
*/
|
|
67
|
+
export declare function runWithExtractedTraceContext<T>(headers: HeadersCarrier, callback: () => T): T;
|
|
68
|
+
//# sourceMappingURL=trace-context-propagation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trace-context-propagation.d.ts","sourceRoot":"","sources":["../../../../src/tracing/context/trace-context-propagation.ts"],"names":[],"mappings":"AAGA,OAAO,EAAwB,OAAO,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC;AAE3E;;;;GAIG;AACH,MAAM,MAAM,aAAa,GAAG,aAAa,GAAG,OAAO,CAAC;AAEpD;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,aAAa,GAAG,KAAK,IAAI,aAAa,CAmB5E;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,GAAG,CAAC,EAAE,OAAO,GACZ,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAGxB;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,cAAc,EACvB,OAAO,CAAC,EAAE,OAAO,GAChB,OAAO,CAET;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,4BAA4B,CAAC,CAAC,EAAE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,CAE7F"}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Copyright (c) Microsoft Corporation.
|
|
3
|
+
// Licensed under the MIT License.
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.isParentSpanRef = isParentSpanRef;
|
|
6
|
+
exports.injectTraceContext = injectTraceContext;
|
|
7
|
+
exports.extractTraceContext = extractTraceContext;
|
|
8
|
+
exports.runWithExtractedTraceContext = runWithExtractedTraceContext;
|
|
9
|
+
const api_1 = require("@opentelemetry/api");
|
|
10
|
+
/**
|
|
11
|
+
* Type guard to distinguish a {@link ParentSpanRef} from an OTel {@link Context}.
|
|
12
|
+
*/
|
|
13
|
+
function isParentSpanRef(value) {
|
|
14
|
+
if (typeof value !== 'object' || value === null)
|
|
15
|
+
return false;
|
|
16
|
+
const maybeCtx = value;
|
|
17
|
+
if (typeof maybeCtx.getValue === 'function' &&
|
|
18
|
+
typeof maybeCtx.setValue === 'function' &&
|
|
19
|
+
typeof maybeCtx.deleteValue === 'function') {
|
|
20
|
+
return false;
|
|
21
|
+
}
|
|
22
|
+
const maybeRef = value;
|
|
23
|
+
return ('traceId' in maybeRef &&
|
|
24
|
+
typeof maybeRef.traceId === 'string' &&
|
|
25
|
+
'spanId' in maybeRef &&
|
|
26
|
+
typeof maybeRef.spanId === 'string');
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Injects the current trace context (`traceparent`/`tracestate` headers) into
|
|
30
|
+
* the provided headers object using the globally registered W3C propagator.
|
|
31
|
+
*
|
|
32
|
+
* @param headers Mutable object where trace context headers will be written.
|
|
33
|
+
* @param ctx Optional OTel Context to inject from. Defaults to the active context.
|
|
34
|
+
* @returns The same `headers` object, for chaining convenience.
|
|
35
|
+
*
|
|
36
|
+
* @example
|
|
37
|
+
* ```typescript
|
|
38
|
+
* const headers: Record<string, string> = {};
|
|
39
|
+
* injectTraceContext(headers);
|
|
40
|
+
* await fetch('http://service-b/process', { headers });
|
|
41
|
+
* ```
|
|
42
|
+
*/
|
|
43
|
+
function injectTraceContext(headers, ctx) {
|
|
44
|
+
api_1.propagation.inject(ctx ?? api_1.context.active(), headers);
|
|
45
|
+
return headers;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Extracts trace context from incoming HTTP headers using the globally
|
|
49
|
+
* registered W3C propagator. Returns an OTel {@link Context} that can be
|
|
50
|
+
* passed to scope classes as a {@link ParentContext}.
|
|
51
|
+
*
|
|
52
|
+
* @param headers The incoming HTTP request headers containing `traceparent`/`tracestate`.
|
|
53
|
+
* @param baseCtx Optional base context to extend. Defaults to the active context.
|
|
54
|
+
* @returns An OTel Context containing the extracted trace information.
|
|
55
|
+
*
|
|
56
|
+
* @example
|
|
57
|
+
* ```typescript
|
|
58
|
+
* const parentCtx = extractTraceContext(req.headers);
|
|
59
|
+
* const scope = InvokeAgentScope.start(details, tenantDetails, undefined, undefined, parentCtx);
|
|
60
|
+
* ```
|
|
61
|
+
*/
|
|
62
|
+
function extractTraceContext(headers, baseCtx) {
|
|
63
|
+
return api_1.propagation.extract(baseCtx ?? api_1.context.active(), headers);
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Extracts trace context from incoming HTTP headers and runs the callback
|
|
67
|
+
* within that context. Any spans created inside the callback will be
|
|
68
|
+
* parented to the extracted trace.
|
|
69
|
+
*
|
|
70
|
+
* @param headers The incoming HTTP request headers containing `traceparent`/`tracestate`.
|
|
71
|
+
* @param callback The function to execute within the extracted context.
|
|
72
|
+
* @returns The result of the callback.
|
|
73
|
+
*
|
|
74
|
+
* @example
|
|
75
|
+
* ```typescript
|
|
76
|
+
* runWithExtractedTraceContext(req.headers, () => {
|
|
77
|
+
* const scope = InvokeAgentScope.start(details, tenantDetails);
|
|
78
|
+
* scope.dispose();
|
|
79
|
+
* });
|
|
80
|
+
* ```
|
|
81
|
+
*/
|
|
82
|
+
function runWithExtractedTraceContext(headers, callback) {
|
|
83
|
+
return api_1.context.with(extractTraceContext(headers), callback);
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=trace-context-propagation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trace-context-propagation.js","sourceRoot":"","sources":["../../../../src/tracing/context/trace-context-propagation.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;AAqBlC,0CAmBC;AAiBD,gDAMC;AAiBD,kDAKC;AAmBD,oEAEC;AAxGD,4CAAmE;AAgBnE;;GAEG;AACH,SAAgB,eAAe,CAAC,KAAoB;IAClD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAE9D,MAAM,QAAQ,GAAG,KAAgB,CAAC;IAClC,IACE,OAAO,QAAQ,CAAC,QAAQ,KAAK,UAAU;QACvC,OAAO,QAAQ,CAAC,QAAQ,KAAK,UAAU;QACvC,OAAO,QAAQ,CAAC,WAAW,KAAK,UAAU,EAC1C,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,QAAQ,GAAG,KAAsB,CAAC;IACxC,OAAO,CACL,SAAS,IAAI,QAAQ;QACrB,OAAO,QAAQ,CAAC,OAAO,KAAK,QAAQ;QACpC,QAAQ,IAAI,QAAQ;QACpB,OAAO,QAAQ,CAAC,MAAM,KAAK,QAAQ,CACpC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,SAAgB,kBAAkB,CAChC,OAA+B,EAC/B,GAAa;IAEb,iBAAW,CAAC,MAAM,CAAC,GAAG,IAAI,aAAO,CAAC,MAAM,EAAE,EAAE,OAAO,CAAC,CAAC;IACrD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,SAAgB,mBAAmB,CACjC,OAAuB,EACvB,OAAiB;IAEjB,OAAO,iBAAW,CAAC,OAAO,CAAC,OAAO,IAAI,aAAO,CAAC,MAAM,EAAE,EAAE,OAAO,CAAC,CAAC;AACnE,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,SAAgB,4BAA4B,CAAI,OAAuB,EAAE,QAAiB;IACxF,OAAO,aAAO,CAAC,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,CAAC;AAC9D,CAAC"}
|
|
@@ -32,7 +32,8 @@ export declare function partitionByIdentity(spans: ReadableSpan[]): Map<string,
|
|
|
32
32
|
*/
|
|
33
33
|
export declare function isAgent365ExporterEnabled(configProvider?: IConfigurationProvider<ObservabilityConfiguration>): boolean;
|
|
34
34
|
/**
|
|
35
|
-
* Check if per-request export is enabled
|
|
35
|
+
* Check if per-request export is enabled.
|
|
36
|
+
* Precedence: internal overrides > configuration provider > environment variable.
|
|
36
37
|
* When enabled, the PerRequestSpanProcessor is used instead of BatchSpanProcessor.
|
|
37
38
|
* The token is passed via OTel Context (async local storage) at export time.
|
|
38
39
|
* @param configProvider Optional configuration provider. Defaults to defaultPerRequestSpanProcessorConfigurationProvider if not specified.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/tracing/exporter/utils.ts"],"names":[],"mappings":"AAIA,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;AAIzF,OAAO,EACL,0BAA0B,EAE1B,oCAAoC,EAErC,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/tracing/exporter/utils.ts"],"names":[],"mappings":"AAIA,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;AAIzF,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,CAYT;AAED;;;;;GAKG;AACH,wBAAgB,+BAA+B,CAC7C,cAAc,CAAC,EAAE,sBAAsB,CAAC,0BAA0B,CAAC,GAClE,OAAO,CAKT;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"}
|