@microsoft/agents-a365-observability 0.1.0-preview.95 → 0.2.0-preview.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/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 +354 -33
- 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 +352 -32
- 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
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import type { TokenResolver } from './tracing/exporter/Agent365ExporterOptions';
|
|
2
2
|
import { Agent365ExporterOptions } from './tracing/exporter/Agent365ExporterOptions';
|
|
3
|
-
import { ClusterCategory } from '@microsoft/agents-a365-runtime';
|
|
3
|
+
import { ClusterCategory, IConfigurationProvider } from '@microsoft/agents-a365-runtime';
|
|
4
4
|
import { type ILogger } from './utils/logging';
|
|
5
|
+
import type { ObservabilityConfiguration } from './configuration';
|
|
5
6
|
/**
|
|
6
7
|
* Configuration options for Agent 365 Observability Builder
|
|
7
8
|
*/
|
|
@@ -10,6 +11,8 @@ export interface BuilderOptions {
|
|
|
10
11
|
serviceName?: string;
|
|
11
12
|
/** Custom service version for telemetry */
|
|
12
13
|
serviceVersion?: string;
|
|
14
|
+
/** Optional service namespace for the OTel resource (service.namespace attribute) */
|
|
15
|
+
serviceNamespace?: string;
|
|
13
16
|
tokenResolver?: TokenResolver;
|
|
14
17
|
/** Environment / cluster category (e.g., "preprod", "prod"). */
|
|
15
18
|
clusterCategory?: ClusterCategory;
|
|
@@ -26,6 +29,12 @@ export interface BuilderOptions {
|
|
|
26
29
|
* Implement ILogger to integrate with other logging services
|
|
27
30
|
*/
|
|
28
31
|
customLogger?: ILogger;
|
|
32
|
+
/**
|
|
33
|
+
* Optional configuration provider for ObservabilityConfiguration.
|
|
34
|
+
* When provided, this is used by the builder and its internal components
|
|
35
|
+
* (exporter, span processors, logger)
|
|
36
|
+
*/
|
|
37
|
+
configProvider?: IConfigurationProvider<ObservabilityConfiguration>;
|
|
29
38
|
}
|
|
30
39
|
/**
|
|
31
40
|
* Builder for configuring Agent 365 with OpenTelemetry tracing
|
|
@@ -41,6 +50,12 @@ export declare class ObservabilityBuilder {
|
|
|
41
50
|
* @returns The builder instance for method chaining
|
|
42
51
|
*/
|
|
43
52
|
withService(serviceName: string, serviceVersion?: string): ObservabilityBuilder;
|
|
53
|
+
/**
|
|
54
|
+
* Configures the service namespace for telemetry (service.namespace resource attribute)
|
|
55
|
+
* @param serviceNamespace The service namespace
|
|
56
|
+
* @returns The builder instance for method chaining
|
|
57
|
+
*/
|
|
58
|
+
withServiceNamespace(serviceNamespace: string): ObservabilityBuilder;
|
|
44
59
|
/**
|
|
45
60
|
* Configures the token resolver for Agent 365 exporter
|
|
46
61
|
* @param tokenResolver Function to resolve authentication tokens
|
|
@@ -60,6 +75,14 @@ export declare class ObservabilityBuilder {
|
|
|
60
75
|
* @returns The builder instance for chaining
|
|
61
76
|
*/
|
|
62
77
|
withExporterOptions(exporterOptions: Partial<Agent365ExporterOptions>): ObservabilityBuilder;
|
|
78
|
+
/**
|
|
79
|
+
* Configures the configuration provider for ObservabilityConfiguration.
|
|
80
|
+
* When set, this provider is used by the builder and its internal components
|
|
81
|
+
* instead of the default provider that reads from environment variables.
|
|
82
|
+
* @param configProvider The configuration provider
|
|
83
|
+
* @returns The builder instance for method chaining
|
|
84
|
+
*/
|
|
85
|
+
withConfigurationProvider(configProvider: IConfigurationProvider<ObservabilityConfiguration>): ObservabilityBuilder;
|
|
63
86
|
/**
|
|
64
87
|
* Sets a custom logger implementation for the observability SDK
|
|
65
88
|
* @param customLogger The custom logger implementation (must implement ILogger interface)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ObservabilityBuilder.d.ts","sourceRoot":"","sources":["../../src/ObservabilityBuilder.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ObservabilityBuilder.d.ts","sourceRoot":"","sources":["../../src/ObservabilityBuilder.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAChF,OAAO,EAAE,uBAAuB,EAAE,MAAM,4CAA4C,CAAC;AAKrF,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACzF,OAAe,EAA4B,KAAK,OAAO,EAAE,MAAM,iBAAiB,CAAC;AACjF,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AAClE;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,wCAAwC;IACxC,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,2CAA2C;IAC3C,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,qFAAqF;IACrF,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,gEAAgE;IAChE,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC;;;;;OAKG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAEnD;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB;;;;OAIG;IACH,cAAc,CAAC,EAAE,sBAAsB,CAAC,0BAA0B,CAAC,CAAC;CACrE;AAED;;GAEG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,OAAO,CAAsB;IACrC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,GAAG,CAAC,CAAU;IAEtB;;;;;OAKG;IACI,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,oBAAoB;IAMtF;;;;OAIG;IACI,oBAAoB,CAAC,gBAAgB,EAAE,MAAM,GAAG,oBAAoB;IAK3E;;;;OAIG;IACI,iBAAiB,CAAC,aAAa,EAAE,aAAa,GAAG,oBAAoB;IAK5E;;;;OAIG;IACI,mBAAmB,CAAC,eAAe,EAAE,eAAe,GAAG,oBAAoB;IAKlF;;;;;OAKG;IACI,mBAAmB,CAAC,eAAe,EAAE,OAAO,CAAC,uBAAuB,CAAC,GAAG,oBAAoB;IAQnG;;;;;;OAMG;IACI,yBAAyB,CAAC,cAAc,EAAE,sBAAsB,CAAC,0BAA0B,CAAC,GAAG,oBAAoB;IAK1H;;;;;;;;;;;;;;OAcG;IACI,gBAAgB,CAAC,YAAY,EAAE,OAAO,GAAG,oBAAoB;IAKpE,OAAO,CAAC,oBAAoB;IAsB5B,OAAO,CAAC,yBAAyB;IAiBjC,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,cAAc;IAgBtB;;;OAGG;IACI,KAAK,IAAI,OAAO;IAsDvB;;OAEG;IACI,KAAK,IAAI,IAAI;IASpB;;OAEG;IACU,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAMtC;;OAEG;IAEH,OAAO,CAAC,wBAAwB;CAUjC"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
//
|
|
3
|
-
//
|
|
4
|
-
// ------------------------------------------------------------------------------
|
|
2
|
+
// Copyright (c) Microsoft Corporation.
|
|
3
|
+
// Licensed under the MIT License.
|
|
5
4
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
6
5
|
if (k2 === undefined) k2 = k;
|
|
7
6
|
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
@@ -47,6 +46,7 @@ const PerRequestSpanProcessor_1 = require("./tracing/PerRequestSpanProcessor");
|
|
|
47
46
|
const resources_1 = require("@opentelemetry/resources");
|
|
48
47
|
const semantic_conventions_1 = require("@opentelemetry/semantic-conventions");
|
|
49
48
|
const api_1 = require("@opentelemetry/api");
|
|
49
|
+
const agents_a365_runtime_1 = require("@microsoft/agents-a365-runtime");
|
|
50
50
|
const logging_1 = __importStar(require("./utils/logging"));
|
|
51
51
|
/**
|
|
52
52
|
* Builder for configuring Agent 365 with OpenTelemetry tracing
|
|
@@ -67,6 +67,15 @@ class ObservabilityBuilder {
|
|
|
67
67
|
this.options.serviceVersion = serviceVersion;
|
|
68
68
|
return this;
|
|
69
69
|
}
|
|
70
|
+
/**
|
|
71
|
+
* Configures the service namespace for telemetry (service.namespace resource attribute)
|
|
72
|
+
* @param serviceNamespace The service namespace
|
|
73
|
+
* @returns The builder instance for method chaining
|
|
74
|
+
*/
|
|
75
|
+
withServiceNamespace(serviceNamespace) {
|
|
76
|
+
this.options.serviceNamespace = serviceNamespace;
|
|
77
|
+
return this;
|
|
78
|
+
}
|
|
70
79
|
/**
|
|
71
80
|
* Configures the token resolver for Agent 365 exporter
|
|
72
81
|
* @param tokenResolver Function to resolve authentication tokens
|
|
@@ -98,6 +107,17 @@ class ObservabilityBuilder {
|
|
|
98
107
|
};
|
|
99
108
|
return this;
|
|
100
109
|
}
|
|
110
|
+
/**
|
|
111
|
+
* Configures the configuration provider for ObservabilityConfiguration.
|
|
112
|
+
* When set, this provider is used by the builder and its internal components
|
|
113
|
+
* instead of the default provider that reads from environment variables.
|
|
114
|
+
* @param configProvider The configuration provider
|
|
115
|
+
* @returns The builder instance for method chaining
|
|
116
|
+
*/
|
|
117
|
+
withConfigurationProvider(configProvider) {
|
|
118
|
+
this.options.configProvider = configProvider;
|
|
119
|
+
return this;
|
|
120
|
+
}
|
|
101
121
|
/**
|
|
102
122
|
* Sets a custom logger implementation for the observability SDK
|
|
103
123
|
* @param customLogger The custom logger implementation (must implement ILogger interface)
|
|
@@ -118,7 +138,7 @@ class ObservabilityBuilder {
|
|
|
118
138
|
return this;
|
|
119
139
|
}
|
|
120
140
|
createBatchProcessor() {
|
|
121
|
-
if (!(0, utils_1.isAgent365ExporterEnabled)()) {
|
|
141
|
+
if (!(0, utils_1.isAgent365ExporterEnabled)(this.options.configProvider)) {
|
|
122
142
|
logging_1.default.info('[ObservabilityBuilder] Agent 365 exporter not enabled. Using ConsoleSpanExporter for BatchSpanProcessor.');
|
|
123
143
|
return new sdk_trace_base_1.BatchSpanProcessor(new sdk_trace_base_1.ConsoleSpanExporter());
|
|
124
144
|
}
|
|
@@ -126,11 +146,11 @@ class ObservabilityBuilder {
|
|
|
126
146
|
if (this.options.exporterOptions) {
|
|
127
147
|
Object.assign(opts, this.options.exporterOptions);
|
|
128
148
|
}
|
|
129
|
-
opts.clusterCategory = this.options.clusterCategory || opts.clusterCategory ||
|
|
149
|
+
opts.clusterCategory = this.options.clusterCategory || opts.clusterCategory || agents_a365_runtime_1.ClusterCategory.prod;
|
|
130
150
|
if (this.options.tokenResolver) {
|
|
131
151
|
opts.tokenResolver = this.options.tokenResolver;
|
|
132
152
|
}
|
|
133
|
-
return new sdk_trace_base_1.BatchSpanProcessor(new Agent365Exporter_1.Agent365Exporter(opts), {
|
|
153
|
+
return new sdk_trace_base_1.BatchSpanProcessor(new Agent365Exporter_1.Agent365Exporter(opts, this.options.configProvider), {
|
|
134
154
|
maxQueueSize: opts.maxQueueSize,
|
|
135
155
|
scheduledDelayMillis: opts.scheduledDelayMilliseconds,
|
|
136
156
|
exportTimeoutMillis: opts.exporterTimeoutMilliseconds,
|
|
@@ -138,7 +158,7 @@ class ObservabilityBuilder {
|
|
|
138
158
|
});
|
|
139
159
|
}
|
|
140
160
|
createPerRequestProcessor() {
|
|
141
|
-
if (!(0, utils_1.isAgent365ExporterEnabled)()) {
|
|
161
|
+
if (!(0, utils_1.isAgent365ExporterEnabled)(this.options.configProvider)) {
|
|
142
162
|
logging_1.default.info('[Agent365Exporter] Per-request export enabled but Agent 365 exporter is disabled. Using ConsoleSpanExporter.');
|
|
143
163
|
return new PerRequestSpanProcessor_1.PerRequestSpanProcessor(new sdk_trace_base_1.ConsoleSpanExporter());
|
|
144
164
|
}
|
|
@@ -146,10 +166,10 @@ class ObservabilityBuilder {
|
|
|
146
166
|
if (this.options.exporterOptions) {
|
|
147
167
|
Object.assign(opts, this.options.exporterOptions);
|
|
148
168
|
}
|
|
149
|
-
opts.clusterCategory = this.options.clusterCategory || opts.clusterCategory ||
|
|
169
|
+
opts.clusterCategory = this.options.clusterCategory || opts.clusterCategory || agents_a365_runtime_1.ClusterCategory.prod;
|
|
150
170
|
// For per-request export, token is retrieved from OTel Context by Agent365Exporter
|
|
151
171
|
// using getExportToken(), so no tokenResolver is needed here
|
|
152
|
-
return new PerRequestSpanProcessor_1.PerRequestSpanProcessor(new Agent365Exporter_1.Agent365Exporter(opts));
|
|
172
|
+
return new PerRequestSpanProcessor_1.PerRequestSpanProcessor(new Agent365Exporter_1.Agent365Exporter(opts, this.options.configProvider));
|
|
153
173
|
}
|
|
154
174
|
createExportProcessor() {
|
|
155
175
|
if ((0, utils_1.isPerRequestExportEnabled)()) {
|
|
@@ -161,9 +181,13 @@ class ObservabilityBuilder {
|
|
|
161
181
|
const serviceName = this.options.serviceVersion
|
|
162
182
|
? `${this.options.serviceName}-${this.options.serviceVersion}`
|
|
163
183
|
: this.options.serviceName ?? 'Agent365-TypeScript';
|
|
164
|
-
|
|
184
|
+
const attrs = {
|
|
165
185
|
[semantic_conventions_1.ATTR_SERVICE_NAME]: serviceName,
|
|
166
|
-
}
|
|
186
|
+
};
|
|
187
|
+
if (this.options.serviceNamespace) {
|
|
188
|
+
attrs[semantic_conventions_1.ATTR_SERVICE_NAMESPACE] = this.options.serviceNamespace;
|
|
189
|
+
}
|
|
190
|
+
return (0, resources_1.resourceFromAttributes)(attrs);
|
|
167
191
|
}
|
|
168
192
|
/**
|
|
169
193
|
* Builds and initializes the Agent 365 configuration
|
|
@@ -173,10 +197,13 @@ class ObservabilityBuilder {
|
|
|
173
197
|
if (this.isBuilt) {
|
|
174
198
|
return this.isBuilt;
|
|
175
199
|
}
|
|
176
|
-
// Apply custom logger if provided
|
|
200
|
+
// Apply custom logger if provided, or configure logger with custom config provider
|
|
177
201
|
if (this.options.customLogger) {
|
|
178
202
|
(0, logging_1.setLogger)(this.options.customLogger);
|
|
179
203
|
}
|
|
204
|
+
else if (this.options.configProvider) {
|
|
205
|
+
(0, logging_1.setLogger)(new logging_1.DefaultLogger(this.options.configProvider));
|
|
206
|
+
}
|
|
180
207
|
// Create processors in the desired order:
|
|
181
208
|
// 1. baggage enricher (copies baggage -> span attributes)
|
|
182
209
|
const spanProcessor = new SpanProcessor_1.SpanProcessor();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ObservabilityBuilder.js","sourceRoot":"","sources":["../../src/ObservabilityBuilder.ts"],"names":[],"mappings":";AAAA,
|
|
1
|
+
{"version":3,"file":"ObservabilityBuilder.js","sourceRoot":"","sources":["../../src/ObservabilityBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ObservabilityManager.d.ts","sourceRoot":"","sources":["../../src/ObservabilityManager.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAE9E;;GAEG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAuB;IAG/C;;;;OAIG;WACW,SAAS,CACrB,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,oBAAoB,KAAK,IAAI,GAClD,oBAAoB;IASvB;;;;OAIG;WACW,KAAK,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,oBAAoB;
|
|
1
|
+
{"version":3,"file":"ObservabilityManager.d.ts","sourceRoot":"","sources":["../../src/ObservabilityManager.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAE9E;;GAEG;AACH,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAuB;IAG/C;;;;OAIG;WACW,SAAS,CACrB,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,oBAAoB,KAAK,IAAI,GAClD,oBAAoB;IASvB;;;;OAIG;WACW,KAAK,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,oBAAoB;IAyBnE;;;OAGG;WACW,WAAW,IAAI,oBAAoB,GAAG,IAAI;IAIxD;;OAEG;WACiB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAM9C"}
|
|
@@ -36,6 +36,9 @@ class ObservabilityManager {
|
|
|
36
36
|
if (options?.clusterCategory) {
|
|
37
37
|
builder.withClusterCategory(options.clusterCategory);
|
|
38
38
|
}
|
|
39
|
+
if (options?.configProvider) {
|
|
40
|
+
builder.withConfigurationProvider(options.configProvider);
|
|
41
|
+
}
|
|
39
42
|
builder.start();
|
|
40
43
|
ObservabilityManager.instance = builder;
|
|
41
44
|
return builder;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ObservabilityManager.js","sourceRoot":"","sources":["../../src/ObservabilityManager.ts"],"names":[],"mappings":";AAAA,iFAAiF;AACjF,4DAA4D;AAC5D,iFAAiF;;;AAEjF,iEAA8E;AAE9E;;GAEG;AACH,MAAa,oBAAoB;IAI/B;;;;OAIG;IACI,MAAM,CAAC,SAAS,CACrB,SAAmD;QAEnD,MAAM,OAAO,GAAG,IAAI,2CAAoB,EAAE,CAAC;QAE3C,SAAS,EAAE,CAAC,OAAO,CAAC,CAAC;QAErB,oBAAoB,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;OAIG;IACI,MAAM,CAAC,KAAK,CAAC,OAAwB;QAC1C,MAAM,OAAO,GAAG,IAAI,2CAAoB,EAAE,CAAC;QAE3C,IAAI,OAAO,EAAE,WAAW,EAAE,CAAC;YACzB,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;QACnE,CAAC;QAED,IAAI,OAAO,EAAE,aAAa,EAAE,CAAC;YAC3B,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QACnD,CAAC;QAED,IAAI,OAAO,EAAE,eAAe,EAAE,CAAC;YAC7B,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QACvD,CAAC;QAED,OAAO,CAAC,KAAK,EAAE,CAAC;QAEhB,oBAAoB,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;OAGG;IACI,MAAM,CAAC,WAAW;QACvB,OAAO,oBAAoB,CAAC,QAAQ,IAAI,IAAI,CAAC;IAC/C,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,KAAK,CAAC,QAAQ;QAC1B,IAAI,oBAAoB,CAAC,QAAQ,EAAE,CAAC;YAClC,MAAM,oBAAoB,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;YAC/C,oBAAoB,CAAC,QAAQ,GAAG,SAAS,CAAC;QAC5C,CAAC;IACH,CAAC;CACF;
|
|
1
|
+
{"version":3,"file":"ObservabilityManager.js","sourceRoot":"","sources":["../../src/ObservabilityManager.ts"],"names":[],"mappings":";AAAA,iFAAiF;AACjF,4DAA4D;AAC5D,iFAAiF;;;AAEjF,iEAA8E;AAE9E;;GAEG;AACH,MAAa,oBAAoB;IAI/B;;;;OAIG;IACI,MAAM,CAAC,SAAS,CACrB,SAAmD;QAEnD,MAAM,OAAO,GAAG,IAAI,2CAAoB,EAAE,CAAC;QAE3C,SAAS,EAAE,CAAC,OAAO,CAAC,CAAC;QAErB,oBAAoB,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;;OAIG;IACI,MAAM,CAAC,KAAK,CAAC,OAAwB;QAC1C,MAAM,OAAO,GAAG,IAAI,2CAAoB,EAAE,CAAC;QAE3C,IAAI,OAAO,EAAE,WAAW,EAAE,CAAC;YACzB,OAAO,CAAC,WAAW,CAAC,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;QACnE,CAAC;QAED,IAAI,OAAO,EAAE,aAAa,EAAE,CAAC;YAC3B,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QACnD,CAAC;QAED,IAAI,OAAO,EAAE,eAAe,EAAE,CAAC;YAC7B,OAAO,CAAC,mBAAmB,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QACvD,CAAC;QAED,IAAI,OAAO,EAAE,cAAc,EAAE,CAAC;YAC5B,OAAO,CAAC,yBAAyB,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAC5D,CAAC;QAED,OAAO,CAAC,KAAK,EAAE,CAAC;QAEhB,oBAAoB,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;OAGG;IACI,MAAM,CAAC,WAAW;QACvB,OAAO,oBAAoB,CAAC,QAAQ,IAAI,IAAI,CAAC;IAC/C,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,KAAK,CAAC,QAAQ;QAC1B,IAAI,oBAAoB,CAAC,QAAQ,EAAE,CAAC;YAClC,MAAM,oBAAoB,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;YAC/C,oBAAoB,CAAC,QAAQ,GAAG,SAAS,CAAC;QAC5C,CAAC;IACH,CAAC;CACF;AAnED,oDAmEC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { RuntimeConfiguration } from '@microsoft/agents-a365-runtime';
|
|
2
|
+
import { ObservabilityConfigurationOptions } from './ObservabilityConfigurationOptions';
|
|
3
|
+
/**
|
|
4
|
+
* Configuration for observability package.
|
|
5
|
+
* Inherits runtime settings and adds observability-specific settings.
|
|
6
|
+
*/
|
|
7
|
+
export declare class ObservabilityConfiguration extends RuntimeConfiguration {
|
|
8
|
+
protected get observabilityOverrides(): ObservabilityConfigurationOptions;
|
|
9
|
+
constructor(overrides?: ObservabilityConfigurationOptions);
|
|
10
|
+
/**
|
|
11
|
+
* Gets the observability authentication scopes.
|
|
12
|
+
* Used by AgenticTokenCache for observability service authentication.
|
|
13
|
+
*/
|
|
14
|
+
get observabilityAuthenticationScopes(): readonly string[];
|
|
15
|
+
get isObservabilityExporterEnabled(): boolean;
|
|
16
|
+
get observabilityDomainOverride(): string | null;
|
|
17
|
+
get observabilityLogLevel(): string;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=ObservabilityConfiguration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ObservabilityConfiguration.d.ts","sourceRoot":"","sources":["../../../src/configuration/ObservabilityConfiguration.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,EAAE,iCAAiC,EAAE,MAAM,qCAAqC,CAAC;AAKxF;;;GAGG;AACH,qBAAa,0BAA2B,SAAQ,oBAAoB;IAClE,SAAS,KAAK,sBAAsB,IAAI,iCAAiC,CAExE;gBAEW,SAAS,CAAC,EAAE,iCAAiC;IAMzD;;;OAGG;IACH,IAAI,iCAAiC,IAAI,SAAS,MAAM,EAAE,CAUzD;IAED,IAAI,8BAA8B,IAAI,OAAO,CAI5C;IAED,IAAI,2BAA2B,IAAI,MAAM,GAAG,IAAI,CAU/C;IAED,IAAI,qBAAqB,IAAI,MAAM,CAIlC;CAEF"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Copyright (c) Microsoft Corporation.
|
|
3
|
+
// Licensed under the MIT License.
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.ObservabilityConfiguration = void 0;
|
|
6
|
+
const agents_a365_runtime_1 = require("@microsoft/agents-a365-runtime");
|
|
7
|
+
// Default constants
|
|
8
|
+
const PROD_OBSERVABILITY_SCOPE = 'https://api.powerplatform.com/.default';
|
|
9
|
+
/**
|
|
10
|
+
* Configuration for observability package.
|
|
11
|
+
* Inherits runtime settings and adds observability-specific settings.
|
|
12
|
+
*/
|
|
13
|
+
class ObservabilityConfiguration extends agents_a365_runtime_1.RuntimeConfiguration {
|
|
14
|
+
get observabilityOverrides() {
|
|
15
|
+
return this.overrides;
|
|
16
|
+
}
|
|
17
|
+
constructor(overrides) {
|
|
18
|
+
super(overrides);
|
|
19
|
+
}
|
|
20
|
+
// Inherited: clusterCategory, isDevelopmentEnvironment, isNodeEnvDevelopment
|
|
21
|
+
/**
|
|
22
|
+
* Gets the observability authentication scopes.
|
|
23
|
+
* Used by AgenticTokenCache for observability service authentication.
|
|
24
|
+
*/
|
|
25
|
+
get observabilityAuthenticationScopes() {
|
|
26
|
+
const result = this.observabilityOverrides.observabilityAuthenticationScopes?.();
|
|
27
|
+
if (result !== undefined) {
|
|
28
|
+
return result;
|
|
29
|
+
}
|
|
30
|
+
const override = process.env.A365_OBSERVABILITY_SCOPES_OVERRIDE;
|
|
31
|
+
if (override?.trim()) {
|
|
32
|
+
return override.trim().split(/\s+/);
|
|
33
|
+
}
|
|
34
|
+
return [PROD_OBSERVABILITY_SCOPE];
|
|
35
|
+
}
|
|
36
|
+
get isObservabilityExporterEnabled() {
|
|
37
|
+
const result = this.observabilityOverrides.isObservabilityExporterEnabled?.();
|
|
38
|
+
if (result !== undefined)
|
|
39
|
+
return result;
|
|
40
|
+
return agents_a365_runtime_1.RuntimeConfiguration.parseEnvBoolean(process.env.ENABLE_A365_OBSERVABILITY_EXPORTER);
|
|
41
|
+
}
|
|
42
|
+
get observabilityDomainOverride() {
|
|
43
|
+
const result = this.observabilityOverrides.observabilityDomainOverride?.();
|
|
44
|
+
if (result !== undefined) {
|
|
45
|
+
return result;
|
|
46
|
+
}
|
|
47
|
+
const override = process.env.A365_OBSERVABILITY_DOMAIN_OVERRIDE;
|
|
48
|
+
if (override?.trim()) {
|
|
49
|
+
return override.trim().replace(/\/+$/, '');
|
|
50
|
+
}
|
|
51
|
+
return null;
|
|
52
|
+
}
|
|
53
|
+
get observabilityLogLevel() {
|
|
54
|
+
return this.observabilityOverrides.observabilityLogLevel?.()
|
|
55
|
+
?? process.env.A365_OBSERVABILITY_LOG_LEVEL
|
|
56
|
+
?? 'none';
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
exports.ObservabilityConfiguration = ObservabilityConfiguration;
|
|
60
|
+
//# sourceMappingURL=ObservabilityConfiguration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ObservabilityConfiguration.js","sourceRoot":"","sources":["../../../src/configuration/ObservabilityConfiguration.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,wEAAsE;AAGtE,oBAAoB;AACpB,MAAM,wBAAwB,GAAG,wCAAwC,CAAC;AAE1E;;;GAGG;AACH,MAAa,0BAA2B,SAAQ,0CAAoB;IAClE,IAAc,sBAAsB;QAClC,OAAO,IAAI,CAAC,SAA8C,CAAC;IAC7D,CAAC;IAED,YAAY,SAA6C;QACvD,KAAK,CAAC,SAAS,CAAC,CAAC;IACnB,CAAC;IAED,6EAA6E;IAE7E;;;OAGG;IACH,IAAI,iCAAiC;QACnC,MAAM,MAAM,GAAG,IAAI,CAAC,sBAAsB,CAAC,iCAAiC,EAAE,EAAE,CAAC;QACjF,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC;QAChE,IAAI,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC;YACrB,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACtC,CAAC;QACD,OAAO,CAAC,wBAAwB,CAAC,CAAC;IACpC,CAAC;IAED,IAAI,8BAA8B;QAChC,MAAM,MAAM,GAAG,IAAI,CAAC,sBAAsB,CAAC,8BAA8B,EAAE,EAAE,CAAC;QAC9E,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,MAAM,CAAC;QACxC,OAAO,0CAAoB,CAAC,eAAe,CAAC,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;IAC9F,CAAC;IAED,IAAI,2BAA2B;QAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,sBAAsB,CAAC,2BAA2B,EAAE,EAAE,CAAC;QAC3E,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC;QAChE,IAAI,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC;YACrB,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAC7C,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,qBAAqB;QACvB,OAAO,IAAI,CAAC,sBAAsB,CAAC,qBAAqB,EAAE,EAAE;eACvD,OAAO,CAAC,GAAG,CAAC,4BAA4B;eACxC,MAAM,CAAC;IACd,CAAC;CAEF;AAnDD,gEAmDC"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { RuntimeConfigurationOptions } from '@microsoft/agents-a365-runtime';
|
|
2
|
+
/**
|
|
3
|
+
* Observability configuration options - extends runtime options.
|
|
4
|
+
* All overrides are functions called on each property access.
|
|
5
|
+
*
|
|
6
|
+
* Inherited from RuntimeConfigurationOptions:
|
|
7
|
+
* - clusterCategory
|
|
8
|
+
* - isNodeEnvDevelopment
|
|
9
|
+
*
|
|
10
|
+
* Note: `isDevelopmentEnvironment` is a derived getter on the configuration class
|
|
11
|
+
* (based on clusterCategory), not an overridable option.
|
|
12
|
+
*/
|
|
13
|
+
export type ObservabilityConfigurationOptions = RuntimeConfigurationOptions & {
|
|
14
|
+
/**
|
|
15
|
+
* Override for observability authentication scopes.
|
|
16
|
+
* Used by AgenticTokenCache for observability service authentication.
|
|
17
|
+
*
|
|
18
|
+
* @returns Array of OAuth scopes for observability service authentication.
|
|
19
|
+
* @envvar A365_OBSERVABILITY_SCOPES_OVERRIDE - Space-separated list of scopes.
|
|
20
|
+
* @default ['https://api.powerplatform.com/.default']
|
|
21
|
+
*/
|
|
22
|
+
observabilityAuthenticationScopes?: () => string[];
|
|
23
|
+
/**
|
|
24
|
+
* Override to enable/disable the Agent365 observability span exporter.
|
|
25
|
+
* When enabled, spans are exported to the Agent365 observability service.
|
|
26
|
+
*
|
|
27
|
+
* @returns `true` to enable the exporter, `false` to disable.
|
|
28
|
+
* @envvar ENABLE_A365_OBSERVABILITY_EXPORTER - 'true', '1', 'yes', 'on' to enable.
|
|
29
|
+
* @default false
|
|
30
|
+
*/
|
|
31
|
+
isObservabilityExporterEnabled?: () => boolean;
|
|
32
|
+
/**
|
|
33
|
+
* Override for the custom observability domain/endpoint.
|
|
34
|
+
* Trailing slashes are automatically removed.
|
|
35
|
+
*
|
|
36
|
+
* @returns Custom domain URL string, or `null` for no override.
|
|
37
|
+
* @envvar A365_OBSERVABILITY_DOMAIN_OVERRIDE - Full URL of custom endpoint.
|
|
38
|
+
* @default null
|
|
39
|
+
*/
|
|
40
|
+
observabilityDomainOverride?: () => string | null;
|
|
41
|
+
/**
|
|
42
|
+
* Override for the internal SDK log level.
|
|
43
|
+
* Controls which log messages are output by the observability SDK's internal logger.
|
|
44
|
+
*
|
|
45
|
+
* Supported values (pipe-separated for multiple):
|
|
46
|
+
* - 'none' - No logging (default)
|
|
47
|
+
* - 'info' - Information messages
|
|
48
|
+
* - 'warn' - Warning messages
|
|
49
|
+
* - 'error' - Error messages
|
|
50
|
+
* - 'info|warn|error' - All messages
|
|
51
|
+
*
|
|
52
|
+
* @returns Log level string.
|
|
53
|
+
* @envvar A365_OBSERVABILITY_LOG_LEVEL
|
|
54
|
+
* @default 'none'
|
|
55
|
+
*/
|
|
56
|
+
observabilityLogLevel?: () => string;
|
|
57
|
+
};
|
|
58
|
+
//# sourceMappingURL=ObservabilityConfigurationOptions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ObservabilityConfigurationOptions.d.ts","sourceRoot":"","sources":["../../../src/configuration/ObservabilityConfigurationOptions.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,2BAA2B,EAAE,MAAM,gCAAgC,CAAC;AAE7E;;;;;;;;;;GAUG;AACH,MAAM,MAAM,iCAAiC,GAAG,2BAA2B,GAAG;IAC5E;;;;;;;OAOG;IACH,iCAAiC,CAAC,EAAE,MAAM,MAAM,EAAE,CAAC;IAEnD;;;;;;;OAOG;IACH,8BAA8B,CAAC,EAAE,MAAM,OAAO,CAAC;IAE/C;;;;;;;OAOG;IACH,2BAA2B,CAAC,EAAE,MAAM,MAAM,GAAG,IAAI,CAAC;IAElD;;;;;;;;;;;;;;OAcG;IACH,qBAAqB,CAAC,EAAE,MAAM,MAAM,CAAC;CACtC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ObservabilityConfigurationOptions.js","sourceRoot":"","sources":["../../../src/configuration/ObservabilityConfigurationOptions.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { RuntimeConfiguration } from '@microsoft/agents-a365-runtime';
|
|
2
|
+
import { PerRequestSpanProcessorConfigurationOptions } from './PerRequestSpanProcessorConfigurationOptions';
|
|
3
|
+
/**
|
|
4
|
+
* Configuration for PerRequestSpanProcessor.
|
|
5
|
+
* Inherits runtime settings (clusterCategory, isNodeEnvDevelopment) and adds
|
|
6
|
+
* per-request processor guardrails.
|
|
7
|
+
*
|
|
8
|
+
* This is separated from ObservabilityConfiguration because PerRequestSpanProcessor
|
|
9
|
+
* is used only in specific scenarios and these settings should not be exposed
|
|
10
|
+
* in the common ObservabilityConfiguration.
|
|
11
|
+
*/
|
|
12
|
+
export declare class PerRequestSpanProcessorConfiguration extends RuntimeConfiguration {
|
|
13
|
+
protected get perRequestOverrides(): PerRequestSpanProcessorConfigurationOptions;
|
|
14
|
+
constructor(overrides?: PerRequestSpanProcessorConfigurationOptions);
|
|
15
|
+
get isPerRequestExportEnabled(): boolean;
|
|
16
|
+
get perRequestMaxTraces(): number;
|
|
17
|
+
get perRequestMaxSpansPerTrace(): number;
|
|
18
|
+
get perRequestMaxConcurrentExports(): number;
|
|
19
|
+
get perRequestFlushGraceMs(): number;
|
|
20
|
+
get perRequestMaxTraceAgeMs(): number;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=PerRequestSpanProcessorConfiguration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
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"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Copyright (c) Microsoft Corporation.
|
|
3
|
+
// Licensed under the MIT License.
|
|
4
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
|
+
exports.PerRequestSpanProcessorConfiguration = void 0;
|
|
6
|
+
const agents_a365_runtime_1 = require("@microsoft/agents-a365-runtime");
|
|
7
|
+
const PerRequestProcessorInternalOverrides_1 = require("../internal/PerRequestProcessorInternalOverrides");
|
|
8
|
+
/** Guardrails to prevent unbounded memory growth / export bursts. Used for PerRequestSpanProcessor only. */
|
|
9
|
+
const DEFAULT_MAX_BUFFERED_TRACES = 1000;
|
|
10
|
+
const DEFAULT_MAX_SPANS_PER_TRACE = 5000;
|
|
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
|
|
14
|
+
/**
|
|
15
|
+
* Configuration for PerRequestSpanProcessor.
|
|
16
|
+
* Inherits runtime settings (clusterCategory, isNodeEnvDevelopment) and adds
|
|
17
|
+
* per-request processor guardrails.
|
|
18
|
+
*
|
|
19
|
+
* This is separated from ObservabilityConfiguration because PerRequestSpanProcessor
|
|
20
|
+
* is used only in specific scenarios and these settings should not be exposed
|
|
21
|
+
* in the common ObservabilityConfiguration.
|
|
22
|
+
*/
|
|
23
|
+
class PerRequestSpanProcessorConfiguration extends agents_a365_runtime_1.RuntimeConfiguration {
|
|
24
|
+
get perRequestOverrides() {
|
|
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
|
+
};
|
|
36
|
+
}
|
|
37
|
+
constructor(overrides) {
|
|
38
|
+
super(overrides);
|
|
39
|
+
}
|
|
40
|
+
get isPerRequestExportEnabled() {
|
|
41
|
+
const result = this.perRequestOverrides.isPerRequestExportEnabled?.();
|
|
42
|
+
if (result !== undefined)
|
|
43
|
+
return result;
|
|
44
|
+
return agents_a365_runtime_1.RuntimeConfiguration.parseEnvBoolean(process.env.ENABLE_A365_OBSERVABILITY_PER_REQUEST_EXPORT);
|
|
45
|
+
}
|
|
46
|
+
get perRequestMaxTraces() {
|
|
47
|
+
const value = this.perRequestOverrides.perRequestMaxTraces?.()
|
|
48
|
+
?? agents_a365_runtime_1.RuntimeConfiguration.parseEnvInt(process.env.A365_PER_REQUEST_MAX_TRACES, DEFAULT_MAX_BUFFERED_TRACES);
|
|
49
|
+
return value > 0 ? value : DEFAULT_MAX_BUFFERED_TRACES;
|
|
50
|
+
}
|
|
51
|
+
get perRequestMaxSpansPerTrace() {
|
|
52
|
+
const value = this.perRequestOverrides.perRequestMaxSpansPerTrace?.()
|
|
53
|
+
?? agents_a365_runtime_1.RuntimeConfiguration.parseEnvInt(process.env.A365_PER_REQUEST_MAX_SPANS_PER_TRACE, DEFAULT_MAX_SPANS_PER_TRACE);
|
|
54
|
+
return value > 0 ? value : DEFAULT_MAX_SPANS_PER_TRACE;
|
|
55
|
+
}
|
|
56
|
+
get perRequestMaxConcurrentExports() {
|
|
57
|
+
const value = this.perRequestOverrides.perRequestMaxConcurrentExports?.()
|
|
58
|
+
?? agents_a365_runtime_1.RuntimeConfiguration.parseEnvInt(process.env.A365_PER_REQUEST_MAX_CONCURRENT_EXPORTS, DEFAULT_MAX_CONCURRENT_EXPORTS);
|
|
59
|
+
return value > 0 ? value : DEFAULT_MAX_CONCURRENT_EXPORTS;
|
|
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
|
+
}
|
|
71
|
+
}
|
|
72
|
+
exports.PerRequestSpanProcessorConfiguration = PerRequestSpanProcessorConfiguration;
|
|
73
|
+
//# sourceMappingURL=PerRequestSpanProcessorConfiguration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
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"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { RuntimeConfigurationOptions } from '@microsoft/agents-a365-runtime';
|
|
2
|
+
/**
|
|
3
|
+
* Configuration options for PerRequestSpanProcessor - extends runtime options.
|
|
4
|
+
* All overrides are functions called on each property access.
|
|
5
|
+
*
|
|
6
|
+
* Inherited from RuntimeConfigurationOptions:
|
|
7
|
+
* - clusterCategory, isNodeEnvDevelopment
|
|
8
|
+
*/
|
|
9
|
+
export type PerRequestSpanProcessorConfigurationOptions = RuntimeConfigurationOptions & {
|
|
10
|
+
/**
|
|
11
|
+
* Override to enable/disable per-request export mode.
|
|
12
|
+
* When enabled, spans are buffered per-request and exported when the request completes,
|
|
13
|
+
* rather than using a batch processor.
|
|
14
|
+
*
|
|
15
|
+
* @returns `true` to enable per-request export, `false` for batch export.
|
|
16
|
+
* @envvar ENABLE_A365_OBSERVABILITY_PER_REQUEST_EXPORT - 'true', '1', 'yes', 'on' to enable.
|
|
17
|
+
* @default false
|
|
18
|
+
*/
|
|
19
|
+
isPerRequestExportEnabled?: () => boolean;
|
|
20
|
+
/**
|
|
21
|
+
* Override for maximum number of traces to buffer in per-request export mode.
|
|
22
|
+
* When this limit is reached, oldest traces are dropped.
|
|
23
|
+
* Values <= 0 are ignored and the default is used.
|
|
24
|
+
*
|
|
25
|
+
* @returns Maximum number of buffered traces.
|
|
26
|
+
* @envvar A365_PER_REQUEST_MAX_TRACES
|
|
27
|
+
* @default 1000
|
|
28
|
+
*/
|
|
29
|
+
perRequestMaxTraces?: () => number;
|
|
30
|
+
/**
|
|
31
|
+
* Override for maximum number of spans per trace in per-request export mode.
|
|
32
|
+
* Traces with more spans than this limit will have excess spans dropped.
|
|
33
|
+
* Values <= 0 are ignored and the default is used.
|
|
34
|
+
*
|
|
35
|
+
* @returns Maximum spans per trace.
|
|
36
|
+
* @envvar A365_PER_REQUEST_MAX_SPANS_PER_TRACE
|
|
37
|
+
* @default 5000
|
|
38
|
+
*/
|
|
39
|
+
perRequestMaxSpansPerTrace?: () => number;
|
|
40
|
+
/**
|
|
41
|
+
* Override for maximum concurrent export operations in per-request export mode.
|
|
42
|
+
* Limits the number of parallel HTTP requests to the observability service.
|
|
43
|
+
* Values <= 0 are ignored and the default is used.
|
|
44
|
+
*
|
|
45
|
+
* @returns Maximum concurrent exports.
|
|
46
|
+
* @envvar A365_PER_REQUEST_MAX_CONCURRENT_EXPORTS
|
|
47
|
+
* @default 20
|
|
48
|
+
*/
|
|
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;
|
|
70
|
+
};
|
|
71
|
+
//# sourceMappingURL=PerRequestSpanProcessorConfigurationOptions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PerRequestSpanProcessorConfigurationOptions.js","sourceRoot":"","sources":["../../../src/configuration/PerRequestSpanProcessorConfigurationOptions.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { DefaultConfigurationProvider } from '@microsoft/agents-a365-runtime';
|
|
2
|
+
import { ObservabilityConfiguration } from './ObservabilityConfiguration';
|
|
3
|
+
import { PerRequestSpanProcessorConfiguration } from './PerRequestSpanProcessorConfiguration';
|
|
4
|
+
export * from './ObservabilityConfigurationOptions';
|
|
5
|
+
export * from './ObservabilityConfiguration';
|
|
6
|
+
export * from './PerRequestSpanProcessorConfigurationOptions';
|
|
7
|
+
export * from './PerRequestSpanProcessorConfiguration';
|
|
8
|
+
/**
|
|
9
|
+
* Shared default provider for ObservabilityConfiguration.
|
|
10
|
+
*/
|
|
11
|
+
export declare const defaultObservabilityConfigurationProvider: DefaultConfigurationProvider<ObservabilityConfiguration>;
|
|
12
|
+
/**
|
|
13
|
+
* Shared default provider for PerRequestSpanProcessorConfiguration.
|
|
14
|
+
*/
|
|
15
|
+
export declare const defaultPerRequestSpanProcessorConfigurationProvider: DefaultConfigurationProvider<PerRequestSpanProcessorConfiguration>;
|
|
16
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/configuration/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AAC9E,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,oCAAoC,EAAE,MAAM,wCAAwC,CAAC;AAE9F,cAAc,qCAAqC,CAAC;AACpD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,+CAA+C,CAAC;AAC9D,cAAc,wCAAwC,CAAC;AAEvD;;GAEG;AACH,eAAO,MAAM,yCAAyC,0DACoB,CAAC;AAE3E;;GAEG;AACH,eAAO,MAAM,mDAAmD,oEACoB,CAAC"}
|