@microsoft/opentelemetry 0.1.0-alpha.4 → 0.1.0-alpha.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +136 -18
- package/dist/commonjs/a365/configuration/A365Configuration.d.ts +5 -12
- package/dist/commonjs/a365/configuration/A365Configuration.d.ts.map +1 -1
- package/dist/commonjs/a365/configuration/A365Configuration.js +8 -44
- package/dist/commonjs/a365/configuration/A365Configuration.js.map +1 -1
- package/dist/commonjs/a365/configuration/A365ConfigurationOptions.d.ts +2 -27
- package/dist/commonjs/a365/configuration/A365ConfigurationOptions.d.ts.map +1 -1
- package/dist/commonjs/a365/configuration/index.d.ts +2 -1
- package/dist/commonjs/a365/configuration/index.d.ts.map +1 -1
- package/dist/commonjs/a365/constants.d.ts +1 -2
- package/dist/commonjs/a365/constants.d.ts.map +1 -1
- package/dist/commonjs/a365/constants.js +0 -1
- package/dist/commonjs/a365/constants.js.map +1 -1
- package/dist/commonjs/a365/context/tokenContext.js +6 -6
- package/dist/commonjs/a365/context/tokenContext.js.map +1 -1
- package/dist/commonjs/a365/context.js +2 -2
- package/dist/commonjs/a365/context.js.map +1 -1
- package/dist/commonjs/a365/exporter/Agent365Exporter.d.ts +1 -0
- package/dist/commonjs/a365/exporter/Agent365Exporter.d.ts.map +1 -1
- package/dist/commonjs/a365/exporter/Agent365Exporter.js +28 -4
- package/dist/commonjs/a365/exporter/Agent365Exporter.js.map +1 -1
- package/dist/commonjs/a365/exporter/Agent365ExporterOptions.d.ts +4 -1
- package/dist/commonjs/a365/exporter/Agent365ExporterOptions.d.ts.map +1 -1
- package/dist/commonjs/a365/exporter/Agent365ExporterOptions.js +2 -0
- package/dist/commonjs/a365/exporter/Agent365ExporterOptions.js.map +1 -1
- package/dist/commonjs/a365/hosting/activityCompat.d.ts +9 -0
- package/dist/commonjs/a365/hosting/activityCompat.d.ts.map +1 -0
- package/dist/commonjs/a365/hosting/activityCompat.js +27 -0
- package/dist/commonjs/a365/hosting/activityCompat.js.map +1 -0
- package/dist/commonjs/a365/hosting/baggageMiddleware.d.ts.map +1 -1
- package/dist/commonjs/a365/hosting/baggageMiddleware.js +2 -0
- package/dist/commonjs/a365/hosting/baggageMiddleware.js.map +1 -1
- package/dist/commonjs/a365/hosting/configureA365Hosting.d.ts +10 -0
- package/dist/commonjs/a365/hosting/configureA365Hosting.d.ts.map +1 -0
- package/dist/commonjs/a365/hosting/configureA365Hosting.js +20 -0
- package/dist/commonjs/a365/hosting/configureA365Hosting.js.map +1 -0
- package/dist/commonjs/a365/hosting/index.d.ts +2 -1
- package/dist/commonjs/a365/hosting/index.d.ts.map +1 -1
- package/dist/commonjs/a365/hosting/index.js +3 -1
- package/dist/commonjs/a365/hosting/index.js.map +1 -1
- package/dist/commonjs/a365/hosting/observabilityHostingManager.d.ts +2 -4
- package/dist/commonjs/a365/hosting/observabilityHostingManager.d.ts.map +1 -1
- package/dist/commonjs/a365/hosting/observabilityHostingManager.js.map +1 -1
- package/dist/commonjs/a365/hosting/outputLoggingMiddleware.d.ts.map +1 -1
- package/dist/commonjs/a365/hosting/outputLoggingMiddleware.js +2 -0
- package/dist/commonjs/a365/hosting/outputLoggingMiddleware.js.map +1 -1
- package/dist/commonjs/a365/hosting/types.d.ts +4 -0
- package/dist/commonjs/a365/hosting/types.d.ts.map +1 -1
- package/dist/commonjs/a365/index.d.ts +5 -5
- package/dist/commonjs/a365/index.d.ts.map +1 -1
- package/dist/commonjs/a365/index.js +5 -2
- package/dist/commonjs/a365/index.js.map +1 -1
- package/dist/commonjs/a365/logging.d.ts +16 -0
- package/dist/commonjs/a365/logging.d.ts.map +1 -0
- package/dist/commonjs/a365/logging.js +81 -0
- package/dist/commonjs/a365/logging.js.map +1 -0
- package/dist/commonjs/a365/processors/index.d.ts +0 -2
- package/dist/commonjs/a365/processors/index.d.ts.map +1 -1
- package/dist/commonjs/a365/processors/index.js +1 -3
- package/dist/commonjs/a365/processors/index.js.map +1 -1
- package/dist/commonjs/azureMonitor/traces/handler.d.ts.map +1 -1
- package/dist/commonjs/azureMonitor/traces/handler.js +0 -10
- package/dist/commonjs/azureMonitor/traces/handler.js.map +1 -1
- package/dist/commonjs/distro/distro.d.ts +4 -0
- package/dist/commonjs/distro/distro.d.ts.map +1 -1
- package/dist/commonjs/distro/distro.js +105 -10
- package/dist/commonjs/distro/distro.js.map +1 -1
- package/dist/commonjs/distro/instrumentations.d.ts +2 -2
- package/dist/commonjs/distro/instrumentations.d.ts.map +1 -1
- package/dist/commonjs/distro/instrumentations.js +2 -6
- package/dist/commonjs/distro/instrumentations.js.map +1 -1
- package/dist/commonjs/genai/instrumentations/openai/openAIAgentsTraceInstrumentor.d.ts +1 -17
- package/dist/commonjs/genai/instrumentations/openai/openAIAgentsTraceInstrumentor.d.ts.map +1 -1
- package/dist/commonjs/genai/instrumentations/openai/openAIAgentsTraceInstrumentor.js +1 -1
- package/dist/commonjs/genai/instrumentations/openai/openAIAgentsTraceInstrumentor.js.map +1 -1
- package/dist/commonjs/index.d.ts +6 -5
- package/dist/commonjs/index.d.ts.map +1 -1
- package/dist/commonjs/index.js +45 -43
- package/dist/commonjs/index.js.map +1 -1
- package/dist/commonjs/shared/config.d.ts +0 -1
- package/dist/commonjs/shared/config.d.ts.map +1 -1
- package/dist/commonjs/shared/config.js +2 -39
- package/dist/commonjs/shared/config.js.map +1 -1
- package/dist/commonjs/types.d.ts +7 -9
- package/dist/commonjs/types.d.ts.map +1 -1
- package/dist/commonjs/types.js +1 -1
- package/dist/commonjs/types.js.map +1 -1
- package/dist/esm/a365/configuration/A365Configuration.d.ts +5 -12
- package/dist/esm/a365/configuration/A365Configuration.d.ts.map +1 -1
- package/dist/esm/a365/configuration/A365Configuration.js +8 -44
- package/dist/esm/a365/configuration/A365Configuration.js.map +1 -1
- package/dist/esm/a365/configuration/A365ConfigurationOptions.d.ts +2 -27
- package/dist/esm/a365/configuration/A365ConfigurationOptions.d.ts.map +1 -1
- package/dist/esm/a365/configuration/index.d.ts +2 -1
- package/dist/esm/a365/configuration/index.d.ts.map +1 -1
- package/dist/esm/a365/constants.d.ts +1 -2
- package/dist/esm/a365/constants.d.ts.map +1 -1
- package/dist/esm/a365/constants.js +0 -1
- package/dist/esm/a365/constants.js.map +1 -1
- package/dist/esm/a365/context/tokenContext.js +6 -6
- package/dist/esm/a365/context/tokenContext.js.map +1 -1
- package/dist/esm/a365/context.js +2 -2
- package/dist/esm/a365/context.js.map +1 -1
- package/dist/esm/a365/exporter/Agent365Exporter.d.ts +1 -0
- package/dist/esm/a365/exporter/Agent365Exporter.d.ts.map +1 -1
- package/dist/esm/a365/exporter/Agent365Exporter.js +28 -4
- package/dist/esm/a365/exporter/Agent365Exporter.js.map +1 -1
- package/dist/esm/a365/exporter/Agent365ExporterOptions.d.ts +4 -1
- package/dist/esm/a365/exporter/Agent365ExporterOptions.d.ts.map +1 -1
- package/dist/esm/a365/exporter/Agent365ExporterOptions.js +2 -0
- package/dist/esm/a365/exporter/Agent365ExporterOptions.js.map +1 -1
- package/dist/esm/a365/hosting/activityCompat.d.ts +9 -0
- package/dist/esm/a365/hosting/activityCompat.d.ts.map +1 -0
- package/dist/esm/a365/hosting/activityCompat.js +24 -0
- package/dist/esm/a365/hosting/activityCompat.js.map +1 -0
- package/dist/esm/a365/hosting/baggageMiddleware.d.ts.map +1 -1
- package/dist/esm/a365/hosting/baggageMiddleware.js +2 -0
- package/dist/esm/a365/hosting/baggageMiddleware.js.map +1 -1
- package/dist/esm/a365/hosting/configureA365Hosting.d.ts +10 -0
- package/dist/esm/a365/hosting/configureA365Hosting.d.ts.map +1 -0
- package/dist/esm/a365/hosting/configureA365Hosting.js +17 -0
- package/dist/esm/a365/hosting/configureA365Hosting.js.map +1 -0
- package/dist/esm/a365/hosting/index.d.ts +2 -1
- package/dist/esm/a365/hosting/index.d.ts.map +1 -1
- package/dist/esm/a365/hosting/index.js +1 -0
- package/dist/esm/a365/hosting/index.js.map +1 -1
- package/dist/esm/a365/hosting/observabilityHostingManager.d.ts +2 -4
- package/dist/esm/a365/hosting/observabilityHostingManager.d.ts.map +1 -1
- package/dist/esm/a365/hosting/observabilityHostingManager.js.map +1 -1
- package/dist/esm/a365/hosting/outputLoggingMiddleware.d.ts.map +1 -1
- package/dist/esm/a365/hosting/outputLoggingMiddleware.js +2 -0
- package/dist/esm/a365/hosting/outputLoggingMiddleware.js.map +1 -1
- package/dist/esm/a365/hosting/types.d.ts +4 -0
- package/dist/esm/a365/hosting/types.d.ts.map +1 -1
- package/dist/esm/a365/index.d.ts +5 -5
- package/dist/esm/a365/index.d.ts.map +1 -1
- package/dist/esm/a365/index.js +3 -2
- package/dist/esm/a365/index.js.map +1 -1
- package/dist/esm/a365/logging.d.ts +16 -0
- package/dist/esm/a365/logging.d.ts.map +1 -0
- package/dist/esm/a365/logging.js +76 -0
- package/dist/esm/a365/logging.js.map +1 -0
- package/dist/esm/a365/processors/index.d.ts +0 -2
- package/dist/esm/a365/processors/index.d.ts.map +1 -1
- package/dist/esm/a365/processors/index.js +0 -1
- package/dist/esm/a365/processors/index.js.map +1 -1
- package/dist/esm/azureMonitor/traces/handler.d.ts.map +1 -1
- package/dist/esm/azureMonitor/traces/handler.js +0 -8
- package/dist/esm/azureMonitor/traces/handler.js.map +1 -1
- package/dist/esm/distro/distro.d.ts +4 -0
- package/dist/esm/distro/distro.d.ts.map +1 -1
- package/dist/esm/distro/distro.js +72 -11
- package/dist/esm/distro/distro.js.map +1 -1
- package/dist/esm/distro/instrumentations.d.ts +2 -2
- package/dist/esm/distro/instrumentations.d.ts.map +1 -1
- package/dist/esm/distro/instrumentations.js +2 -6
- package/dist/esm/distro/instrumentations.js.map +1 -1
- package/dist/esm/genai/instrumentations/openai/openAIAgentsTraceInstrumentor.d.ts +1 -17
- package/dist/esm/genai/instrumentations/openai/openAIAgentsTraceInstrumentor.d.ts.map +1 -1
- package/dist/esm/genai/instrumentations/openai/openAIAgentsTraceInstrumentor.js +1 -1
- package/dist/esm/genai/instrumentations/openai/openAIAgentsTraceInstrumentor.js.map +1 -1
- package/dist/esm/index.d.ts +6 -5
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +3 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/shared/config.d.ts +0 -1
- package/dist/esm/shared/config.d.ts.map +1 -1
- package/dist/esm/shared/config.js +2 -39
- package/dist/esm/shared/config.js.map +1 -1
- package/dist/esm/types.d.ts +7 -9
- package/dist/esm/types.d.ts.map +1 -1
- package/dist/esm/types.js +1 -1
- package/dist/esm/types.js.map +1 -1
- package/package.json +4 -2
- package/dist/commonjs/a365/processors/PerRequestSpanProcessor.d.ts +0 -44
- package/dist/commonjs/a365/processors/PerRequestSpanProcessor.d.ts.map +0 -1
- package/dist/commonjs/a365/processors/PerRequestSpanProcessor.js +0 -260
- package/dist/commonjs/a365/processors/PerRequestSpanProcessor.js.map +0 -1
- package/dist/commonjs/shared/jsonConfig.d.ts +0 -35
- package/dist/commonjs/shared/jsonConfig.d.ts.map +0 -1
- package/dist/commonjs/shared/jsonConfig.js +0 -122
- package/dist/commonjs/shared/jsonConfig.js.map +0 -1
- package/dist/esm/a365/processors/PerRequestSpanProcessor.d.ts +0 -44
- package/dist/esm/a365/processors/PerRequestSpanProcessor.d.ts.map +0 -1
- package/dist/esm/a365/processors/PerRequestSpanProcessor.js +0 -256
- package/dist/esm/a365/processors/PerRequestSpanProcessor.js.map +0 -1
- package/dist/esm/shared/jsonConfig.d.ts +0 -35
- package/dist/esm/shared/jsonConfig.d.ts.map +0 -1
- package/dist/esm/shared/jsonConfig.js +0 -115
- package/dist/esm/shared/jsonConfig.js.map +0 -1
package/README.md
CHANGED
|
@@ -68,16 +68,22 @@ That's it — traces, metrics, and logs are collected automatically with built-i
|
|
|
68
68
|
| `views` | `ViewOptions[]` | — | Metric views |
|
|
69
69
|
| `azureMonitor` | `AzureMonitorOpenTelemetryOptions` | — | Azure Monitor backend config. When provided, Azure Monitor export is enabled |
|
|
70
70
|
| `a365` | `A365Options` | — | A365 observability config |
|
|
71
|
+
| `enableConsoleExporters` | `boolean` | auto | Enable console exporters for traces, metrics, and logs |
|
|
71
72
|
|
|
72
73
|
### `InstrumentationOptions`
|
|
73
74
|
|
|
74
|
-
Most instrumentations
|
|
75
|
+
Most instrumentations use `InstrumentationConfig` shape (`{ enabled?: boolean, ... }`).
|
|
76
|
+
|
|
77
|
+
- Built-in infra instrumentations (`http`, `azureSdk`, `azureFunctions`, `mongoDb`, `mySql`, `postgreSql`, `redis`, `redis4`) are enabled by default.
|
|
78
|
+
- Logging instrumentations (`bunyan`, `winston`) are disabled by default.
|
|
79
|
+
- GenAI instrumentations (`openaiAgents`, `langchain`) are enabled by default.
|
|
80
|
+
|
|
81
|
+
Set `enabled: true` or `enabled: false` explicitly for predictable behavior.
|
|
75
82
|
|
|
76
83
|
| Key | Type | Default | Description |
|
|
77
84
|
|---|---|---|---|
|
|
78
85
|
| `http` | `InstrumentationConfig` | enabled | HTTP client/server instrumentation |
|
|
79
86
|
| `azureSdk` | `InstrumentationConfig` | enabled | Azure SDK instrumentation |
|
|
80
|
-
| `azureFunctions` | `InstrumentationConfig` | enabled | Azure Functions instrumentation |
|
|
81
87
|
| `mongoDb` | `InstrumentationConfig` | enabled | MongoDB instrumentation |
|
|
82
88
|
| `mySql` | `InstrumentationConfig` | enabled | MySQL instrumentation |
|
|
83
89
|
| `postgreSql` | `InstrumentationConfig` | enabled | PostgreSQL instrumentation |
|
|
@@ -85,8 +91,67 @@ Most instrumentations are enabled by default. Pass `{ enabled: false }` to disab
|
|
|
85
91
|
| `redis4` | `InstrumentationConfig` | enabled | Redis 4 instrumentation |
|
|
86
92
|
| `bunyan` | `InstrumentationConfig` | disabled | Bunyan log instrumentation |
|
|
87
93
|
| `winston` | `InstrumentationConfig` | disabled | Winston log instrumentation |
|
|
88
|
-
| `openaiAgents` | `
|
|
89
|
-
| `langchain` | `
|
|
94
|
+
| `openaiAgents` | `OpenAIAgentsInstrumentationConfig` | enabled | OpenAI Agents SDK instrumentation (requires `@openai/agents`) |
|
|
95
|
+
| `langchain` | `LangChainInstrumentationConfig` | enabled | LangChain instrumentation (requires `@langchain/core`) |
|
|
96
|
+
|
|
97
|
+
#### Turn instrumentations on/off
|
|
98
|
+
|
|
99
|
+
```typescript
|
|
100
|
+
useMicrosoftOpenTelemetry({
|
|
101
|
+
instrumentationOptions: {
|
|
102
|
+
// Disable specific built-in instrumentations
|
|
103
|
+
http: { enabled: false },
|
|
104
|
+
redis: { enabled: false },
|
|
105
|
+
|
|
106
|
+
// Enable GenAI instrumentations
|
|
107
|
+
openaiAgents: {
|
|
108
|
+
enabled: true,
|
|
109
|
+
isContentRecordingEnabled: true,
|
|
110
|
+
},
|
|
111
|
+
langchain: {
|
|
112
|
+
enabled: true,
|
|
113
|
+
isContentRecordingEnabled: true,
|
|
114
|
+
},
|
|
115
|
+
},
|
|
116
|
+
});
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
Disable most built-in auto-instrumentation:
|
|
120
|
+
|
|
121
|
+
```typescript
|
|
122
|
+
useMicrosoftOpenTelemetry({
|
|
123
|
+
instrumentationOptions: {
|
|
124
|
+
http: { enabled: false },
|
|
125
|
+
azureSdk: { enabled: false },
|
|
126
|
+
azureFunctions: { enabled: false },
|
|
127
|
+
mongoDb: { enabled: false },
|
|
128
|
+
mySql: { enabled: false },
|
|
129
|
+
postgreSql: { enabled: false },
|
|
130
|
+
redis: { enabled: false },
|
|
131
|
+
redis4: { enabled: false },
|
|
132
|
+
bunyan: { enabled: false },
|
|
133
|
+
winston: { enabled: false },
|
|
134
|
+
openaiAgents: { enabled: false },
|
|
135
|
+
langchain: { enabled: false },
|
|
136
|
+
},
|
|
137
|
+
});
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
### Console exporters
|
|
141
|
+
|
|
142
|
+
Use console exporters when validating local telemetry or debugging setup.
|
|
143
|
+
|
|
144
|
+
```typescript
|
|
145
|
+
useMicrosoftOpenTelemetry({
|
|
146
|
+
enableConsoleExporters: true,
|
|
147
|
+
});
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
Behavior:
|
|
151
|
+
|
|
152
|
+
- `enableConsoleExporters: true`: always enable console exporters (traces, metrics, logs).
|
|
153
|
+
- `enableConsoleExporters: false`: do not auto-add the standard console exporters, except for the A365 span console fallback when `a365` options are provided but `a365.enabled` is `false` or omitted.
|
|
154
|
+
- Omitted: console exporters auto-enable only when no other exporter path is active; if `a365` options are provided but `a365.enabled` is `false` or omitted, the A365 span console fallback can still be added.
|
|
90
155
|
|
|
91
156
|
### `azureMonitor` options
|
|
92
157
|
|
|
@@ -110,26 +175,73 @@ See the [OpenTelemetry OTLP Exporter specification](https://opentelemetry.io/doc
|
|
|
110
175
|
| Option | Type | Default | Description |
|
|
111
176
|
|---|---|---|---|
|
|
112
177
|
| `enabled` | `boolean` | `false` | Enable A365 observability export |
|
|
113
|
-
| `tokenResolver` | `(agentId, tenantId) => string \| Promise<string>` | — | Token resolver for A365 service authentication |
|
|
178
|
+
| `tokenResolver` | `(agentId, tenantId, authScopes?) => string \| Promise<string>` | — | Token resolver for A365 service authentication |
|
|
114
179
|
| `clusterCategory` | `ClusterCategory` | `"prod"` | Cluster category for endpoint resolution (`local`, `dev`, `test`, `preprod`, `firstrelease`, `prod`, `gov`, `high`, `dod`, `mooncake`, `ex`, `rx`) |
|
|
115
180
|
| `domainOverride` | `string` | — | Override the A365 observability service domain |
|
|
116
181
|
| `authScopes` | `string[]` | `["https://api.powerplatform.com/.default"]` | OAuth scopes for A365 service authentication |
|
|
117
|
-
|
|
118
|
-
| `baggage` | `A365BaggageOptions` | see below | Baggage propagation and span enrichment options |
|
|
119
|
-
| `hosting` | `A365HostingOptions` | see below | Hosting middleware options (requires `@microsoft/agents-hosting`) |
|
|
182
|
+
#### A365 hosting middleware setup
|
|
120
183
|
|
|
121
|
-
|
|
184
|
+
Hosting middleware is configured separately from `a365` exporter options.
|
|
185
|
+
To use A365 hosting middleware, attach it to your adapter explicitly.
|
|
122
186
|
|
|
123
|
-
|
|
124
|
-
|---|---|---|---|
|
|
125
|
-
| `propagationEnabled` | `boolean` | `true` | Enable baggage propagation from request headers to span context |
|
|
126
|
-
| `enrichSpans` | `boolean` | `true` | Copy baggage items (tenant, agent, session, etc.) to span attributes |
|
|
187
|
+
Use the one-liner helper:
|
|
127
188
|
|
|
128
|
-
|
|
189
|
+
```typescript
|
|
190
|
+
import { configureA365Hosting } from "@microsoft/opentelemetry";
|
|
129
191
|
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
192
|
+
configureA365Hosting(adapter);
|
|
193
|
+
```
|
|
194
|
+
|
|
195
|
+
By default this registers both `BaggageMiddleware` and `OutputLoggingMiddleware`.
|
|
196
|
+
|
|
197
|
+
`OutputLoggingMiddleware` captures outgoing message content as span attributes. If your responses may contain sensitive content, disable output logging:
|
|
198
|
+
|
|
199
|
+
```typescript
|
|
200
|
+
configureA365Hosting(adapter, {
|
|
201
|
+
enableBaggage: true,
|
|
202
|
+
enableOutputLogging: false,
|
|
203
|
+
});
|
|
204
|
+
```
|
|
205
|
+
|
|
206
|
+
If you need explicit flags:
|
|
207
|
+
|
|
208
|
+
```typescript
|
|
209
|
+
configureA365Hosting(adapter, {
|
|
210
|
+
enableBaggage: true,
|
|
211
|
+
enableOutputLogging: true,
|
|
212
|
+
});
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
For previously published package versions that do not include `configureA365Hosting`, use:
|
|
216
|
+
|
|
217
|
+
```typescript
|
|
218
|
+
import { ObservabilityHostingManager } from "@microsoft/opentelemetry";
|
|
219
|
+
|
|
220
|
+
new ObservabilityHostingManager().configure(adapter as unknown as { use(...m: unknown[]): void }, {
|
|
221
|
+
enableBaggage: true,
|
|
222
|
+
enableOutputLogging: true,
|
|
223
|
+
});
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
|
|
227
|
+
| `httpRequestTimeoutMilliseconds` | `number` | `30000` | HTTP request timeout (ms) when sending spans to A365 service |
|
|
228
|
+
|
|
229
|
+
Example:
|
|
230
|
+
|
|
231
|
+
```typescript
|
|
232
|
+
useMicrosoftOpenTelemetry({
|
|
233
|
+
a365: {
|
|
234
|
+
enabled: true,
|
|
235
|
+
tokenResolver: (agentId, tenantId) => getToken(agentId, tenantId),
|
|
236
|
+
exporterOptions: {
|
|
237
|
+
maxQueueSize: 4096,
|
|
238
|
+
maxExportBatchSize: 1024,
|
|
239
|
+
scheduledDelayMilliseconds: 10000,
|
|
240
|
+
httpRequestTimeoutMilliseconds: 15000,
|
|
241
|
+
},
|
|
242
|
+
},
|
|
243
|
+
});
|
|
244
|
+
```
|
|
133
245
|
|
|
134
246
|
#### A365 environment variables
|
|
135
247
|
|
|
@@ -138,10 +250,16 @@ A365 options can also be set via environment variables (highest precedence):
|
|
|
138
250
|
| Environment Variable | Description |
|
|
139
251
|
|---|---|
|
|
140
252
|
| `ENABLE_A365_OBSERVABILITY_EXPORTER` | `"true"` / `"false"` — override `enabled` |
|
|
141
|
-
| `ENABLE_A365_OBSERVABILITY_PER_REQUEST_EXPORT` | `"true"` / `"false"` — override `perRequestExport` |
|
|
142
253
|
| `A365_OBSERVABILITY_SCOPES_OVERRIDE` | Space-separated list of OAuth scopes |
|
|
143
254
|
| `A365_OBSERVABILITY_DOMAIN_OVERRIDE` | Override service domain |
|
|
144
255
|
| `CLUSTER_CATEGORY` | Override cluster category |
|
|
256
|
+
| `A365_OBSERVABILITY_LOG_LEVEL` | A365 internal logger filter level (`none`, `info`, `warn`, `error`, or pipe-delimited combination) — overrides `observabilityLogLevel` |
|
|
257
|
+
| `A365_PER_REQUEST_MAX_TRACES` | Max buffered traces (default: `1000`) |
|
|
258
|
+
| `A365_PER_REQUEST_MAX_SPANS_PER_TRACE` | Max spans per trace (default: `5000`) |
|
|
259
|
+
| `A365_PER_REQUEST_MAX_CONCURRENT_EXPORTS` | Max concurrent exports (default: `20`) |
|
|
260
|
+
| `A365_PER_REQUEST_FLUSH_GRACE_MS` | Grace period after root span ends (default: `250`) |
|
|
261
|
+
| `A365_PER_REQUEST_MAX_TRACE_AGE_MS` | Max trace age before forced flush (default: `1800000`) |
|
|
262
|
+
|
|
145
263
|
|
|
146
264
|
### Example
|
|
147
265
|
|
|
@@ -1,41 +1,34 @@
|
|
|
1
|
-
import type { A365Options, ClusterCategory
|
|
1
|
+
import type { A365Options, ClusterCategory } from "./A365ConfigurationOptions.js";
|
|
2
2
|
/**
|
|
3
3
|
* Environment variable names for A365 configuration.
|
|
4
4
|
* These match the upstream Agent365-nodejs conventions.
|
|
5
5
|
*/
|
|
6
6
|
export declare const A365_ENV_VARS: {
|
|
7
7
|
readonly EXPORTER_ENABLED: "ENABLE_A365_OBSERVABILITY_EXPORTER";
|
|
8
|
-
readonly PER_REQUEST_EXPORT: "ENABLE_A365_OBSERVABILITY_PER_REQUEST_EXPORT";
|
|
9
8
|
readonly AUTH_SCOPES: "A365_OBSERVABILITY_SCOPES_OVERRIDE";
|
|
10
9
|
readonly DOMAIN: "A365_OBSERVABILITY_DOMAIN_OVERRIDE";
|
|
11
10
|
readonly CLUSTER_CATEGORY: "CLUSTER_CATEGORY";
|
|
11
|
+
readonly LOG_LEVEL: "A365_OBSERVABILITY_LOG_LEVEL";
|
|
12
12
|
};
|
|
13
13
|
/**
|
|
14
14
|
* Resolved A365 configuration.
|
|
15
15
|
*
|
|
16
|
-
* Merges values from
|
|
16
|
+
* Merges values from three sources (lowest to highest precedence):
|
|
17
17
|
* 1. Defaults
|
|
18
18
|
* 2. Programmatic options (`A365Options`)
|
|
19
|
-
* 3.
|
|
20
|
-
* 4. Environment variables (see `A365_ENV_VARS`)
|
|
19
|
+
* 3. Environment variables (see `A365_ENV_VARS`)
|
|
21
20
|
*/
|
|
22
21
|
export declare class A365Configuration {
|
|
23
22
|
/** Whether A365 observability is enabled. */
|
|
24
23
|
readonly enabled: boolean;
|
|
25
24
|
/** Token resolver callback for A365 service authentication. */
|
|
26
|
-
readonly tokenResolver?: (agentId: string, tenantId: string) => string | Promise<string>;
|
|
25
|
+
readonly tokenResolver?: (agentId: string, tenantId: string, authScopes?: string[]) => string | Promise<string>;
|
|
27
26
|
/** Cluster category. */
|
|
28
27
|
readonly clusterCategory: ClusterCategory;
|
|
29
28
|
/** Domain override for the A365 observability service. */
|
|
30
29
|
readonly domainOverride?: string;
|
|
31
30
|
/** OAuth scopes for A365 service authentication. */
|
|
32
31
|
readonly authScopes: string[];
|
|
33
|
-
/** Whether to use per-request export mode. */
|
|
34
|
-
readonly perRequestExport: boolean;
|
|
35
|
-
/** Baggage options. */
|
|
36
|
-
readonly baggage: Required<A365BaggageOptions>;
|
|
37
|
-
/** Hosting options. */
|
|
38
|
-
readonly hosting: Required<A365HostingOptions>;
|
|
39
32
|
constructor(options?: A365Options);
|
|
40
33
|
private _warnIfOptionsSetButDisabled;
|
|
41
34
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"A365Configuration.d.ts","sourceRoot":"","sources":["../../../../src/a365/configuration/A365Configuration.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"A365Configuration.d.ts","sourceRoot":"","sources":["../../../../src/a365/configuration/A365Configuration.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAuBlF;;;GAGG;AACH,eAAO,MAAM,aAAa;;;;;;CAMhB,CAAC;AAmBX;;;;;;;GAOG;AACH,qBAAa,iBAAiB;IAC5B,6CAA6C;IAC7C,SAAgB,OAAO,EAAE,OAAO,CAAC;IAEjC,+DAA+D;IAC/D,SAAgB,aAAa,CAAC,EAAE,CAC9B,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,EAAE,KAClB,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAE9B,wBAAwB;IACxB,SAAgB,eAAe,EAAE,eAAe,CAAC;IAEjD,0DAA0D;IAC1D,SAAgB,cAAc,CAAC,EAAE,MAAM,CAAC;IAExC,oDAAoD;IACpD,SAAgB,UAAU,EAAE,MAAM,EAAE,CAAC;gBAEzB,OAAO,CAAC,EAAE,WAAW;IAmDjC,OAAO,CAAC,4BAA4B;CAarC"}
|
|
@@ -3,8 +3,7 @@
|
|
|
3
3
|
// Licensed under the MIT License.
|
|
4
4
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
5
5
|
exports.A365Configuration = exports.A365_ENV_VARS = void 0;
|
|
6
|
-
const
|
|
7
|
-
const jsonConfig_js_1 = require("../../shared/jsonConfig.js");
|
|
6
|
+
const logging_js_1 = require("../logging.js");
|
|
8
7
|
/**
|
|
9
8
|
* Parse an environment variable as a boolean.
|
|
10
9
|
* Recognizes 'true', '1', 'yes', 'on' (case-insensitive) as true and
|
|
@@ -32,10 +31,10 @@ function parseEnvBoolean(envValue) {
|
|
|
32
31
|
*/
|
|
33
32
|
exports.A365_ENV_VARS = {
|
|
34
33
|
EXPORTER_ENABLED: "ENABLE_A365_OBSERVABILITY_EXPORTER",
|
|
35
|
-
PER_REQUEST_EXPORT: "ENABLE_A365_OBSERVABILITY_PER_REQUEST_EXPORT",
|
|
36
34
|
AUTH_SCOPES: "A365_OBSERVABILITY_SCOPES_OVERRIDE",
|
|
37
35
|
DOMAIN: "A365_OBSERVABILITY_DOMAIN_OVERRIDE",
|
|
38
36
|
CLUSTER_CATEGORY: "CLUSTER_CATEGORY",
|
|
37
|
+
LOG_LEVEL: "A365_OBSERVABILITY_LOG_LEVEL",
|
|
39
38
|
};
|
|
40
39
|
const DEFAULT_AUTH_SCOPE = "https://api.powerplatform.com/.default";
|
|
41
40
|
const VALID_CLUSTER_CATEGORIES = new Set([
|
|
@@ -55,11 +54,10 @@ const VALID_CLUSTER_CATEGORIES = new Set([
|
|
|
55
54
|
/**
|
|
56
55
|
* Resolved A365 configuration.
|
|
57
56
|
*
|
|
58
|
-
* Merges values from
|
|
57
|
+
* Merges values from three sources (lowest to highest precedence):
|
|
59
58
|
* 1. Defaults
|
|
60
59
|
* 2. Programmatic options (`A365Options`)
|
|
61
|
-
* 3.
|
|
62
|
-
* 4. Environment variables (see `A365_ENV_VARS`)
|
|
60
|
+
* 3. Environment variables (see `A365_ENV_VARS`)
|
|
63
61
|
*/
|
|
64
62
|
class A365Configuration {
|
|
65
63
|
/** Whether A365 observability is enabled. */
|
|
@@ -72,45 +70,22 @@ class A365Configuration {
|
|
|
72
70
|
domainOverride;
|
|
73
71
|
/** OAuth scopes for A365 service authentication. */
|
|
74
72
|
authScopes;
|
|
75
|
-
/** Whether to use per-request export mode. */
|
|
76
|
-
perRequestExport;
|
|
77
|
-
/** Baggage options. */
|
|
78
|
-
baggage;
|
|
79
|
-
/** Hosting options. */
|
|
80
|
-
hosting;
|
|
81
73
|
constructor(options) {
|
|
82
74
|
// 1. Set defaults
|
|
83
75
|
let enabled = false;
|
|
84
76
|
let clusterCategory = "prod";
|
|
85
77
|
let domainOverride = options?.domainOverride;
|
|
86
78
|
let authScopes = options?.authScopes ?? [DEFAULT_AUTH_SCOPE];
|
|
87
|
-
let perRequestExport = false;
|
|
88
79
|
// 2. Apply programmatic options
|
|
89
80
|
if (options) {
|
|
90
81
|
enabled = options.enabled ?? enabled;
|
|
91
82
|
clusterCategory = options.clusterCategory ?? clusterCategory;
|
|
92
|
-
perRequestExport = options.perRequestExport ?? perRequestExport;
|
|
93
83
|
}
|
|
94
|
-
// 3. Apply
|
|
95
|
-
const jsonA365 = jsonConfig_js_1.JsonConfig.getInstance().a365;
|
|
96
|
-
if (jsonA365) {
|
|
97
|
-
enabled = jsonA365.enabled ?? enabled;
|
|
98
|
-
clusterCategory = jsonA365.clusterCategory ?? clusterCategory;
|
|
99
|
-
domainOverride = jsonA365.domainOverride ?? domainOverride;
|
|
100
|
-
perRequestExport = jsonA365.perRequestExport ?? perRequestExport;
|
|
101
|
-
if (jsonA365.authScopes) {
|
|
102
|
-
authScopes = jsonA365.authScopes;
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
// 4. Apply environment variable overrides (highest precedence)
|
|
84
|
+
// 3. Apply environment variable overrides (highest precedence)
|
|
106
85
|
const envEnabled = parseEnvBoolean(process.env[exports.A365_ENV_VARS.EXPORTER_ENABLED]);
|
|
107
86
|
if (envEnabled !== undefined) {
|
|
108
87
|
enabled = envEnabled;
|
|
109
88
|
}
|
|
110
|
-
const envPerRequest = parseEnvBoolean(process.env[exports.A365_ENV_VARS.PER_REQUEST_EXPORT]);
|
|
111
|
-
if (envPerRequest !== undefined) {
|
|
112
|
-
perRequestExport = envPerRequest;
|
|
113
|
-
}
|
|
114
89
|
const envScopes = process.env[exports.A365_ENV_VARS.AUTH_SCOPES]?.trim();
|
|
115
90
|
if (envScopes) {
|
|
116
91
|
authScopes = envScopes.split(/\s+/).filter(Boolean);
|
|
@@ -124,7 +99,7 @@ class A365Configuration {
|
|
|
124
99
|
clusterCategory = envCluster;
|
|
125
100
|
}
|
|
126
101
|
else if (envCluster) {
|
|
127
|
-
|
|
102
|
+
(0, logging_js_1.getA365Logger)().warn(`Invalid ${exports.A365_ENV_VARS.CLUSTER_CATEGORY} value '${envCluster}'. Using default cluster category.`);
|
|
128
103
|
}
|
|
129
104
|
// Assign resolved values
|
|
130
105
|
this.enabled = enabled;
|
|
@@ -132,14 +107,6 @@ class A365Configuration {
|
|
|
132
107
|
this.clusterCategory = clusterCategory;
|
|
133
108
|
this.domainOverride = domainOverride;
|
|
134
109
|
this.authScopes = authScopes;
|
|
135
|
-
this.perRequestExport = perRequestExport;
|
|
136
|
-
this.baggage = {
|
|
137
|
-
propagationEnabled: jsonA365?.baggage?.propagationEnabled ?? options?.baggage?.propagationEnabled ?? true,
|
|
138
|
-
enrichSpans: jsonA365?.baggage?.enrichSpans ?? options?.baggage?.enrichSpans ?? true,
|
|
139
|
-
};
|
|
140
|
-
this.hosting = {
|
|
141
|
-
enabled: jsonA365?.hosting?.enabled ?? options?.hosting?.enabled ?? false,
|
|
142
|
-
};
|
|
143
110
|
// Warn when A365-scoped options are set but A365 is not enabled
|
|
144
111
|
if (!this.enabled) {
|
|
145
112
|
this._warnIfOptionsSetButDisabled(options);
|
|
@@ -148,12 +115,9 @@ class A365Configuration {
|
|
|
148
115
|
_warnIfOptionsSetButDisabled(options) {
|
|
149
116
|
if (!options)
|
|
150
117
|
return;
|
|
151
|
-
const hasNonTrivialOptions = options.tokenResolver !== undefined ||
|
|
152
|
-
options.domainOverride !== undefined ||
|
|
153
|
-
options.perRequestExport !== undefined ||
|
|
154
|
-
options.hosting?.enabled === true;
|
|
118
|
+
const hasNonTrivialOptions = options.tokenResolver !== undefined || options.domainOverride !== undefined;
|
|
155
119
|
if (hasNonTrivialOptions) {
|
|
156
|
-
|
|
120
|
+
(0, logging_js_1.getA365Logger)().warn("A365 configuration options are set but A365 is not enabled. " +
|
|
157
121
|
"Set `a365.enabled: true` or `ENABLE_A365_OBSERVABILITY_EXPORTER=true` to enable.");
|
|
158
122
|
}
|
|
159
123
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"A365Configuration.js","sourceRoot":"","sources":["../../../../src/a365/configuration/A365Configuration.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;
|
|
1
|
+
{"version":3,"file":"A365Configuration.js","sourceRoot":"","sources":["../../../../src/a365/configuration/A365Configuration.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,40 +14,15 @@ export interface A365Options {
|
|
|
14
14
|
enabled?: boolean;
|
|
15
15
|
/**
|
|
16
16
|
* Token resolver for authenticating with the A365 observability service.
|
|
17
|
-
* Called with (agentId, tenantId) extracted from span attributes.
|
|
17
|
+
* Called with (agentId, tenantId, authScopes) extracted from span attributes/config.
|
|
18
18
|
* Must return a bearer token string or a promise resolving to one.
|
|
19
19
|
*/
|
|
20
|
-
tokenResolver?: (agentId: string, tenantId: string) => string | Promise<string>;
|
|
20
|
+
tokenResolver?: (agentId: string, tenantId: string, authScopes?: string[]) => string | Promise<string>;
|
|
21
21
|
/** Cluster category for the A365 service endpoint. */
|
|
22
22
|
clusterCategory?: ClusterCategory;
|
|
23
23
|
/** Override the A365 observability service domain. */
|
|
24
24
|
domainOverride?: string;
|
|
25
25
|
/** OAuth scopes for A365 service authentication. */
|
|
26
26
|
authScopes?: string[];
|
|
27
|
-
/**
|
|
28
|
-
* Use per-request export mode (buffer spans per trace, export on root completion).
|
|
29
|
-
* When false, uses standard batch export.
|
|
30
|
-
* @default false
|
|
31
|
-
*/
|
|
32
|
-
perRequestExport?: boolean;
|
|
33
|
-
/** Baggage propagation and span enrichment options. */
|
|
34
|
-
baggage?: A365BaggageOptions;
|
|
35
|
-
/** Hosting middleware options (requires @microsoft/agents-hosting). */
|
|
36
|
-
hosting?: A365HostingOptions;
|
|
37
|
-
}
|
|
38
|
-
/** Baggage propagation and span enrichment options. */
|
|
39
|
-
export interface A365BaggageOptions {
|
|
40
|
-
/** Enable baggage propagation from request headers to span context. */
|
|
41
|
-
propagationEnabled?: boolean;
|
|
42
|
-
/** Copy baggage items to span attributes. */
|
|
43
|
-
enrichSpans?: boolean;
|
|
44
|
-
}
|
|
45
|
-
/** Hosting middleware options. */
|
|
46
|
-
export interface A365HostingOptions {
|
|
47
|
-
/**
|
|
48
|
-
* Enable hosting middleware integration (baggage middleware, output logging, etc.).
|
|
49
|
-
* Requires `@microsoft/agents-hosting` as an optional peer dependency.
|
|
50
|
-
*/
|
|
51
|
-
enabled?: boolean;
|
|
52
27
|
}
|
|
53
28
|
//# sourceMappingURL=A365ConfigurationOptions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"A365ConfigurationOptions.d.ts","sourceRoot":"","sources":["../../../../src/a365/configuration/A365ConfigurationOptions.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,MAAM,MAAM,eAAe,GACvB,OAAO,GACP,KAAK,GACL,MAAM,GACN,SAAS,GACT,cAAc,GACd,MAAM,GACN,KAAK,GACL,MAAM,GACN,KAAK,GACL,UAAU,GACV,IAAI,GACJ,IAAI,CAAC;AAET;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC1B,6EAA6E;IAC7E,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;;OAIG;IACH,aAAa,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"A365ConfigurationOptions.d.ts","sourceRoot":"","sources":["../../../../src/a365/configuration/A365ConfigurationOptions.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,MAAM,MAAM,eAAe,GACvB,OAAO,GACP,KAAK,GACL,MAAM,GACN,SAAS,GACT,cAAc,GACd,MAAM,GACN,KAAK,GACL,MAAM,GACN,KAAK,GACL,UAAU,GACV,IAAI,GACJ,IAAI,CAAC;AAET;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC1B,6EAA6E;IAC7E,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;;OAIG;IACH,aAAa,CAAC,EAAE,CACd,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,EAAE,KAClB,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAE9B,sDAAsD;IACtD,eAAe,CAAC,EAAE,eAAe,CAAC;IAElC,sDAAsD;IACtD,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,oDAAoD;IACpD,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
export { A365Configuration, A365_ENV_VARS } from "./A365Configuration.js";
|
|
2
|
-
export type { A365Options, ClusterCategory
|
|
2
|
+
export type { A365Options, ClusterCategory } from "./A365ConfigurationOptions.js";
|
|
3
|
+
export type { ILogger } from "../logging.js";
|
|
3
4
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/a365/configuration/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC1E,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/a365/configuration/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC1E,YAAY,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAElF,YAAY,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC"}
|
|
@@ -25,7 +25,6 @@ export declare class OpenTelemetryConstants {
|
|
|
25
25
|
static readonly ENABLE_OBSERVABILITY = "ENABLE_OBSERVABILITY";
|
|
26
26
|
static readonly ENABLE_A365_OBSERVABILITY_EXPORTER = "ENABLE_A365_OBSERVABILITY_EXPORTER";
|
|
27
27
|
static readonly ENABLE_A365_OBSERVABILITY = "ENABLE_A365_OBSERVABILITY";
|
|
28
|
-
static readonly ENABLE_A365_OBSERVABILITY_PER_REQUEST_EXPORT = "ENABLE_A365_OBSERVABILITY_PER_REQUEST_EXPORT";
|
|
29
28
|
static readonly GEN_AI_OPERATION_NAME_KEY = "gen_ai.operation.name";
|
|
30
29
|
static readonly GEN_AI_REQUEST_MODEL_KEY = "gen_ai.request.model";
|
|
31
30
|
static readonly GEN_AI_RESPONSE_MODEL_KEY = "gen_ai.response.model";
|
|
@@ -88,6 +87,6 @@ export declare class OpenTelemetryConstants {
|
|
|
88
87
|
static readonly TELEMETRY_SDK_VERSION_KEY = "telemetry.sdk.version";
|
|
89
88
|
static readonly TELEMETRY_SDK_NAME_VALUE = "A365ObservabilitySDK";
|
|
90
89
|
static readonly TELEMETRY_SDK_LANGUAGE_VALUE = "nodejs";
|
|
91
|
-
static readonly TELEMETRY_SDK_VERSION_VALUE = "0.1.0-alpha.
|
|
90
|
+
static readonly TELEMETRY_SDK_VERSION_VALUE = "0.1.0-alpha.6";
|
|
92
91
|
}
|
|
93
92
|
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/a365/constants.ts"],"names":[],"mappings":"AAKA;;;;;;;GAOG;AACH,qBAAa,sBAAsB;IAEjC,gBAAuB,2BAA2B,kBAAkB;IACpE,gBAAuB,2BAA2B,kBAAkB;IACpE,gBAAuB,8BAA8B,qBAAqB;IAC1E,gBAAuB,mBAAmB,UAAU;IAGpD,gBAAuB,cAAc,gBAAgB;IACrD,gBAAuB,oBAAoB,2BAA2B;IACtE,gBAAuB,iBAAiB,mBAAmB;IAC3D,gBAAuB,gBAAgB,kBAAkB;IACzD,gBAAuB,kBAAkB,oBAAoB;IAC7D,gBAAuB,eAAe,iBAAiB;IACvD,gBAAuB,wBAAwB,iCAAiC;IAGhF,gBAAuB,WAAW,iBAAiB;IAGnD,gBAAuB,2BAA2B,6CAA6C;IAC/F,gBAAuB,qBAAqB,iDAAiD;IAC7F,gBAAuB,mCAAmC,oDACP;IACnD,gBAAuB,oBAAoB,0BAA0B;IACrE,gBAAuB,kCAAkC,wCAAwC;IACjG,gBAAuB,yBAAyB,+BAA+B;
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/a365/constants.ts"],"names":[],"mappings":"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"}
|
|
@@ -35,7 +35,6 @@ class OpenTelemetryConstants {
|
|
|
35
35
|
static ENABLE_OBSERVABILITY = "ENABLE_OBSERVABILITY";
|
|
36
36
|
static ENABLE_A365_OBSERVABILITY_EXPORTER = "ENABLE_A365_OBSERVABILITY_EXPORTER";
|
|
37
37
|
static ENABLE_A365_OBSERVABILITY = "ENABLE_A365_OBSERVABILITY";
|
|
38
|
-
static ENABLE_A365_OBSERVABILITY_PER_REQUEST_EXPORT = "ENABLE_A365_OBSERVABILITY_PER_REQUEST_EXPORT";
|
|
39
38
|
// ── GenAI core attributes ────────────────────────────────────────
|
|
40
39
|
static GEN_AI_OPERATION_NAME_KEY = "gen_ai.operation.name";
|
|
41
40
|
static GEN_AI_REQUEST_MODEL_KEY = "gen_ai.request.model";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/a365/constants.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC,0CAA8D;AAE9D;;;;;;;GAOG;AACH,MAAa,sBAAsB;IACjC,qEAAqE;IAC9D,MAAM,CAAU,2BAA2B,GAAG,cAAc,CAAC;IAC7D,MAAM,CAAU,2BAA2B,GAAG,cAAc,CAAC;IAC7D,MAAM,CAAU,8BAA8B,GAAG,iBAAiB,CAAC;IACnE,MAAM,CAAU,mBAAmB,GAAG,MAAM,CAAC;IAEpD,qEAAqE;IAC9D,MAAM,CAAU,cAAc,GAAG,YAAY,CAAC;IAC9C,MAAM,CAAU,oBAAoB,GAAG,uBAAuB,CAAC;IAC/D,MAAM,CAAU,iBAAiB,GAAG,eAAe,CAAC;IACpD,MAAM,CAAU,gBAAgB,GAAG,cAAc,CAAC;IAClD,MAAM,CAAU,kBAAkB,GAAG,gBAAgB,CAAC;IACtD,MAAM,CAAU,eAAe,GAAG,aAAa,CAAC;IAChD,MAAM,CAAU,wBAAwB,GAAG,6BAA6B,CAAC;IAEhF,qEAAqE;IAC9D,MAAM,CAAU,WAAW,GAAG,aAAa,CAAC;IAEnD,qEAAqE;IAC9D,MAAM,CAAU,2BAA2B,GAAG,yCAAyC,CAAC;IACxF,MAAM,CAAU,qBAAqB,GAAG,6CAA6C,CAAC;IACtF,MAAM,CAAU,mCAAmC,GACxD,gDAAgD,CAAC;IAC5C,MAAM,CAAU,oBAAoB,GAAG,sBAAsB,CAAC;IAC9D,MAAM,CAAU,kCAAkC,GAAG,oCAAoC,CAAC;IAC1F,MAAM,CAAU,yBAAyB,GAAG,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/a365/constants.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,13 +9,13 @@ exports.getExportToken = getExportToken;
|
|
|
9
9
|
* Per-request export token context propagation.
|
|
10
10
|
*
|
|
11
11
|
* Uses OpenTelemetry Context (backed by AsyncLocalStorage) to carry and
|
|
12
|
-
* refresh a per-request bearer token that the
|
|
13
|
-
*
|
|
12
|
+
* refresh a per-request bearer token that the export pipeline
|
|
13
|
+
* reads at export time.
|
|
14
14
|
*
|
|
15
15
|
* Adapted from microsoft/Agent365-nodejs agents-a365-observability/src/tracing/context/token-context.ts
|
|
16
16
|
*/
|
|
17
17
|
const api_1 = require("@opentelemetry/api");
|
|
18
|
-
const
|
|
18
|
+
const logging_js_1 = require("../logging.js");
|
|
19
19
|
const EXPORT_TOKEN_KEY = (0, api_1.createContextKey)("a365_export_token");
|
|
20
20
|
/**
|
|
21
21
|
* Run a function within a Context that carries the per-request export token.
|
|
@@ -28,7 +28,7 @@ const EXPORT_TOKEN_KEY = (0, api_1.createContextKey)("a365_export_token");
|
|
|
28
28
|
function runWithExportToken(token, fn) {
|
|
29
29
|
const holder = { token };
|
|
30
30
|
const ctxWithToken = api_1.context.active().setValue(EXPORT_TOKEN_KEY, holder);
|
|
31
|
-
|
|
31
|
+
(0, logging_js_1.getA365Logger)().info("[TokenContext] Running function with export token in context.");
|
|
32
32
|
return api_1.context.with(ctxWithToken, fn);
|
|
33
33
|
}
|
|
34
34
|
/**
|
|
@@ -44,10 +44,10 @@ function updateExportToken(token) {
|
|
|
44
44
|
const value = api_1.context.active().getValue(EXPORT_TOKEN_KEY);
|
|
45
45
|
if (value && typeof value === "object" && "token" in value) {
|
|
46
46
|
value.token = token;
|
|
47
|
-
|
|
47
|
+
(0, logging_js_1.getA365Logger)().info("[TokenContext] Export token updated in context.");
|
|
48
48
|
return true;
|
|
49
49
|
}
|
|
50
|
-
|
|
50
|
+
(0, logging_js_1.getA365Logger)().warn("[TokenContext] updateExportToken called but no token holder found in active context. Was runWithExportToken called?");
|
|
51
51
|
return false;
|
|
52
52
|
}
|
|
53
53
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tokenContext.js","sourceRoot":"","sources":["../../../../src/a365/context/tokenContext.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;AAmClC,gDAKC;AAWD,8CAWC;AAKD,wCAUC;AA3ED;;;;;;;;GAQG;AAEH,4CAA+D;AAE/D,
|
|
1
|
+
{"version":3,"file":"tokenContext.js","sourceRoot":"","sources":["../../../../src/a365/context/tokenContext.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;AAmClC,gDAKC;AAWD,8CAWC;AAKD,wCAUC;AA3ED;;;;;;;;GAQG;AAEH,4CAA+D;AAE/D,8CAA8C;AAE9C,MAAM,gBAAgB,GAAG,IAAA,sBAAgB,EAAC,mBAAmB,CAAC,CAAC;AAW/D;;;;;;;GAOG;AACH,SAAgB,kBAAkB,CAAI,KAAa,EAAE,EAAW;IAC9D,MAAM,MAAM,GAAgB,EAAE,KAAK,EAAE,CAAC;IACtC,MAAM,YAAY,GAAG,aAAO,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;IACzE,IAAA,0BAAa,GAAE,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAC;IACtF,OAAO,aAAO,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;AACxC,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,iBAAiB,CAAC,KAAa;IAC7C,MAAM,KAAK,GAAG,aAAO,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAC1D,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;QAC1D,KAAqB,CAAC,KAAK,GAAG,KAAK,CAAC;QACrC,IAAA,0BAAa,GAAE,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC;QACxE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAA,0BAAa,GAAE,CAAC,IAAI,CAClB,qHAAqH,CACtH,CAAC;IACF,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,SAAgB,cAAc,CAAC,MAAe,aAAO,CAAC,MAAM,EAAE;IAC5D,MAAM,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;IAC7C,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;QAC3D,OAAQ,KAAqB,CAAC,KAAK,CAAC;IACtC,CAAC;IACD,gEAAgE;IAChE,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -21,7 +21,7 @@ exports.runWithExtractedTraceContext = runWithExtractedTraceContext;
|
|
|
21
21
|
*/
|
|
22
22
|
const api_1 = require("@opentelemetry/api");
|
|
23
23
|
const api_2 = require("@opentelemetry/api");
|
|
24
|
-
const
|
|
24
|
+
const logging_js_1 = require("./logging.js");
|
|
25
25
|
// ---------------------------------------------------------------------------
|
|
26
26
|
// Validation helpers
|
|
27
27
|
// ---------------------------------------------------------------------------
|
|
@@ -58,7 +58,7 @@ function isParentSpanRef(value) {
|
|
|
58
58
|
* This allows child spans to be correctly parented even when async context is broken.
|
|
59
59
|
*/
|
|
60
60
|
function createContextWithParentSpanRef(base, parent) {
|
|
61
|
-
const logger =
|
|
61
|
+
const logger = (0, logging_js_1.getA365Logger)();
|
|
62
62
|
if (!isValidTraceId(parent.traceId) || !isValidSpanId(parent.spanId)) {
|
|
63
63
|
logger.warn(`[A365] Invalid parent span reference; returning base context. traceId=${parent.traceId}, spanId=${parent.spanId}`);
|
|
64
64
|
return base;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/a365/context.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;AAqClC,0CAmBC;AAUD,wEA0BC;AAKD,oDAGC;AAaD,wDAMC;AAMD,8DAEC;AAMD,oEAEC;AArID;;;;;;;;;;GAUG;AAEH,4CAAiE;AAEjE,4CAAgD;AAEhD,
|
|
1
|
+
{"version":3,"file":"context.js","sourceRoot":"","sources":["../../../src/a365/context.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;AAqClC,0CAmBC;AAUD,wEA0BC;AAKD,oDAGC;AAaD,wDAMC;AAMD,8DAEC;AAMD,oEAEC;AArID;;;;;;;;;;GAUG;AAEH,4CAAiE;AAEjE,4CAAgD;AAEhD,6CAA6C;AAE7C,8EAA8E;AAC9E,qBAAqB;AACrB,8EAA8E;AAE9E,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,8EAA8E;AAC9E,aAAa;AACb,8EAA8E;AAE9E,sEAAsE;AACtE,SAAgB,eAAe,CAAC,KAAc;IAC5C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAE9D,MAAM,QAAQ,GAAG,KAAgC,CAAC;IAClD,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,8EAA8E;AAC9E,sBAAsB;AACtB,8EAA8E;AAE9E;;;GAGG;AACH,SAAgB,8BAA8B,CAAC,IAAa,EAAE,MAAqB;IACjF,MAAM,MAAM,GAAG,IAAA,0BAAa,GAAE,CAAC;IAE/B,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;QACrE,MAAM,CAAC,IAAI,CACT,yEAAyE,MAAM,CAAC,OAAO,YAAY,MAAM,CAAC,MAAM,EAAE,CACnH,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,SAAS,GAAG,WAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,CAAC;IACrD,MAAM,UAAU,GACd,MAAM,CAAC,UAAU;QACjB,CAAC,SAAS,EAAE,OAAO,KAAK,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1E,gBAAU,CAAC,OAAO,CAAC;IAErB,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,MAAM,UAAU,GAAG,WAAK,CAAC,eAAe,CAAC,iBAAiB,CAAC,CAAC;IAC5D,OAAO,WAAK,CAAC,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;AACzC,CAAC;AAED;;GAEG;AACH,SAAgB,oBAAoB,CAAI,MAAqB,EAAE,QAAiB;IAC9E,MAAM,iBAAiB,GAAG,8BAA8B,CAAC,aAAO,CAAC,MAAM,EAAE,EAAE,MAAM,CAAC,CAAC;IACnF,OAAO,aAAO,CAAC,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;AACnD,CAAC;AASD;;;GAGG;AACH,SAAgB,sBAAsB,CACpC,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;;;GAGG;AACH,SAAgB,yBAAyB,CAAC,OAAuB,EAAE,OAAiB;IAClF,OAAO,iBAAW,CAAC,OAAO,CAAC,OAAO,IAAI,aAAO,CAAC,MAAM,EAAE,EAAE,OAAO,CAAC,CAAC;AACnE,CAAC;AAED;;;GAGG;AACH,SAAgB,4BAA4B,CAAI,OAAuB,EAAE,QAAiB;IACxF,OAAO,aAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC,CAAC;AACpE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Agent365Exporter.d.ts","sourceRoot":"","sources":["../../../../src/a365/exporter/Agent365Exporter.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAEhF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"Agent365Exporter.d.ts","sourceRoot":"","sources":["../../../../src/a365/exporter/Agent365Exporter.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAEhF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAgE5E;;;;;;GAMG;AACH,qBAAa,gBAAiB,YAAW,YAAY;IACnD,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA0B;IAClD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAmB;gBAE9B,OAAO,CAAC,EAAE,uBAAuB;IAIvC,MAAM,CACV,KAAK,EAAE,YAAY,EAAE,EACrB,cAAc,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,GAC7C,OAAO,CAAC,IAAI,CAAC;YAuDF,WAAW;YAuDX,YAAY;YAMZ,eAAe;IA0D7B,OAAO,CAAC,kBAAkB;IAwC1B,OAAO,CAAC,OAAO;IAwDT,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAIzB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAIjC,OAAO,CAAC,gBAAgB;CAoBzB"}
|