@nodetool-ai/runtime 0.8.1 → 0.8.2
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/.nodetool-build-stamp +1 -1
- package/dist/context.d.ts +31 -3
- package/dist/context.d.ts.map +1 -1
- package/dist/context.js +366 -158
- package/dist/context.js.map +1 -1
- package/dist/generation-registry.d.ts +8 -0
- package/dist/generation-registry.d.ts.map +1 -1
- package/dist/generation-registry.js +18 -0
- package/dist/generation-registry.js.map +1 -1
- package/dist/host-binaries.d.ts.map +1 -1
- package/dist/host-binaries.js +18 -10
- package/dist/host-binaries.js.map +1 -1
- package/dist/image-codec.d.ts +2 -0
- package/dist/image-codec.d.ts.map +1 -1
- package/dist/image-codec.js +23 -3
- package/dist/image-codec.js.map +1 -1
- package/dist/image-model-tasks.d.ts +15 -0
- package/dist/image-model-tasks.d.ts.map +1 -0
- package/dist/image-model-tasks.js +24 -0
- package/dist/image-model-tasks.js.map +1 -0
- package/dist/index.d.ts +14 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -2
- package/dist/index.js.map +1 -1
- package/dist/media-ref-bytes.d.ts +18 -2
- package/dist/media-ref-bytes.d.ts.map +1 -1
- package/dist/media-ref-bytes.js +26 -16
- package/dist/media-ref-bytes.js.map +1 -1
- package/dist/node-executor.d.ts +6 -0
- package/dist/node-executor.d.ts.map +1 -1
- package/dist/providers/aki-provider.d.ts +2 -0
- package/dist/providers/aki-provider.d.ts.map +1 -1
- package/dist/providers/aki-provider.js +6 -0
- package/dist/providers/aki-provider.js.map +1 -1
- package/dist/providers/atlascloud-provider.d.ts +2 -0
- package/dist/providers/atlascloud-provider.d.ts.map +1 -1
- package/dist/providers/atlascloud-provider.js +22 -0
- package/dist/providers/atlascloud-provider.js.map +1 -1
- package/dist/providers/base-provider.d.ts +36 -24
- package/dist/providers/base-provider.d.ts.map +1 -1
- package/dist/providers/base-provider.js +124 -148
- package/dist/providers/base-provider.js.map +1 -1
- package/dist/providers/claude-agent-provider.d.ts +6 -36
- package/dist/providers/claude-agent-provider.d.ts.map +1 -1
- package/dist/providers/claude-agent-provider.js +208 -26
- package/dist/providers/claude-agent-provider.js.map +1 -1
- package/dist/providers/codex-provider.d.ts +2 -0
- package/dist/providers/codex-provider.d.ts.map +1 -1
- package/dist/providers/codex-provider.js +15 -2
- package/dist/providers/codex-provider.js.map +1 -1
- package/dist/providers/cohere-provider.d.ts +2 -1
- package/dist/providers/cohere-provider.d.ts.map +1 -1
- package/dist/providers/cohere-provider.js +5 -0
- package/dist/providers/cohere-provider.js.map +1 -1
- package/dist/providers/core-tools.d.ts +2 -1
- package/dist/providers/core-tools.d.ts.map +1 -1
- package/dist/providers/core-tools.js +2 -1
- package/dist/providers/core-tools.js.map +1 -1
- package/dist/providers/credential-check.d.ts.map +1 -1
- package/dist/providers/credential-check.js +5 -0
- package/dist/providers/credential-check.js.map +1 -1
- package/dist/providers/custom-openai-provider.d.ts +2 -0
- package/dist/providers/custom-openai-provider.d.ts.map +1 -1
- package/dist/providers/custom-openai-provider.js +8 -0
- package/dist/providers/custom-openai-provider.js.map +1 -1
- package/dist/providers/dreamina-models.d.ts +5 -0
- package/dist/providers/dreamina-models.d.ts.map +1 -0
- package/dist/providers/dreamina-models.js +57 -0
- package/dist/providers/dreamina-models.js.map +1 -0
- package/dist/providers/dreamina-music.d.ts +52 -0
- package/dist/providers/dreamina-music.d.ts.map +1 -0
- package/dist/providers/dreamina-music.js +115 -0
- package/dist/providers/dreamina-music.js.map +1 -0
- package/dist/providers/dreamina-provider.d.ts +62 -0
- package/dist/providers/dreamina-provider.d.ts.map +1 -0
- package/dist/providers/dreamina-provider.js +790 -0
- package/dist/providers/dreamina-provider.js.map +1 -0
- package/dist/providers/elevenlabs-provider.d.ts +2 -1
- package/dist/providers/elevenlabs-provider.d.ts.map +1 -1
- package/dist/providers/elevenlabs-provider.js +5 -0
- package/dist/providers/elevenlabs-provider.js.map +1 -1
- package/dist/providers/evolink-provider.d.ts +2 -0
- package/dist/providers/evolink-provider.d.ts.map +1 -1
- package/dist/providers/evolink-provider.js +8 -0
- package/dist/providers/evolink-provider.js.map +1 -1
- package/dist/providers/fake-provider.d.ts +2 -1
- package/dist/providers/fake-provider.d.ts.map +1 -1
- package/dist/providers/fake-provider.js +10 -0
- package/dist/providers/fake-provider.js.map +1 -1
- package/dist/providers/fal-provider.d.ts +2 -1
- package/dist/providers/fal-provider.d.ts.map +1 -1
- package/dist/providers/fal-provider.js +27 -0
- package/dist/providers/fal-provider.js.map +1 -1
- package/dist/providers/gemini-provider.d.ts +2 -1
- package/dist/providers/gemini-provider.d.ts.map +1 -1
- package/dist/providers/gemini-provider.js +15 -0
- package/dist/providers/gemini-provider.js.map +1 -1
- package/dist/providers/higgsfield-provider.d.ts +2 -1
- package/dist/providers/higgsfield-provider.d.ts.map +1 -1
- package/dist/providers/higgsfield-provider.js +12 -0
- package/dist/providers/higgsfield-provider.js.map +1 -1
- package/dist/providers/huggingface-provider.d.ts +2 -1
- package/dist/providers/huggingface-provider.d.ts.map +1 -1
- package/dist/providers/huggingface-provider.js +10 -0
- package/dist/providers/huggingface-provider.js.map +1 -1
- package/dist/providers/index.d.ts +5 -2
- package/dist/providers/index.d.ts.map +1 -1
- package/dist/providers/index.js +13 -2
- package/dist/providers/index.js.map +1 -1
- package/dist/providers/jina-provider.d.ts +2 -1
- package/dist/providers/jina-provider.d.ts.map +1 -1
- package/dist/providers/jina-provider.js +5 -0
- package/dist/providers/jina-provider.js.map +1 -1
- package/dist/providers/kie-provider.d.ts +2 -1
- package/dist/providers/kie-provider.d.ts.map +1 -1
- package/dist/providers/kie-provider.js +14 -0
- package/dist/providers/kie-provider.js.map +1 -1
- package/dist/providers/llama-provider.d.ts +4 -1
- package/dist/providers/llama-provider.d.ts.map +1 -1
- package/dist/providers/llama-provider.js +9 -3
- package/dist/providers/llama-provider.js.map +1 -1
- package/dist/providers/loop-tracing.d.ts +17 -0
- package/dist/providers/loop-tracing.d.ts.map +1 -0
- package/dist/providers/loop-tracing.js +132 -0
- package/dist/providers/loop-tracing.js.map +1 -0
- package/dist/providers/meshy-provider.d.ts +2 -1
- package/dist/providers/meshy-provider.d.ts.map +1 -1
- package/dist/providers/meshy-provider.js +6 -0
- package/dist/providers/meshy-provider.js.map +1 -1
- package/dist/providers/minimax-provider.d.ts +2 -0
- package/dist/providers/minimax-provider.d.ts.map +1 -1
- package/dist/providers/minimax-provider.js +11 -0
- package/dist/providers/minimax-provider.js.map +1 -1
- package/dist/providers/mistral-provider.d.ts +2 -0
- package/dist/providers/mistral-provider.d.ts.map +1 -1
- package/dist/providers/mistral-provider.js +5 -0
- package/dist/providers/mistral-provider.js.map +1 -1
- package/dist/providers/node-llama-cpp-provider.d.ts +2 -1
- package/dist/providers/node-llama-cpp-provider.d.ts.map +1 -1
- package/dist/providers/node-llama-cpp-provider.js +8 -3
- package/dist/providers/node-llama-cpp-provider.js.map +1 -1
- package/dist/providers/nodetool-provider.d.ts +1 -1
- package/dist/providers/nodetool-provider.d.ts.map +1 -1
- package/dist/providers/nodetool-provider.js +0 -2
- package/dist/providers/nodetool-provider.js.map +1 -1
- package/dist/providers/ollama-provider.d.ts +2 -1
- package/dist/providers/ollama-provider.d.ts.map +1 -1
- package/dist/providers/ollama-provider.js +5 -0
- package/dist/providers/ollama-provider.js.map +1 -1
- package/dist/providers/openai-provider.d.ts +10 -2
- package/dist/providers/openai-provider.d.ts.map +1 -1
- package/dist/providers/openai-provider.js +63 -16
- package/dist/providers/openai-provider.js.map +1 -1
- package/dist/providers/openrouter-provider.d.ts +52 -1
- package/dist/providers/openrouter-provider.d.ts.map +1 -1
- package/dist/providers/openrouter-provider.js +372 -11
- package/dist/providers/openrouter-provider.js.map +1 -1
- package/dist/providers/provider-error.d.ts.map +1 -1
- package/dist/providers/provider-error.js +7 -1
- package/dist/providers/provider-error.js.map +1 -1
- package/dist/providers/provider-generations.d.ts +2 -2
- package/dist/providers/provider-generations.js +2 -2
- package/dist/providers/provider-request-log.d.ts.map +1 -1
- package/dist/providers/provider-request-log.js +18 -7
- package/dist/providers/provider-request-log.js.map +1 -1
- package/dist/providers/python-provider.d.ts +6 -1
- package/dist/providers/python-provider.d.ts.map +1 -1
- package/dist/providers/python-provider.js +30 -11
- package/dist/providers/python-provider.js.map +1 -1
- package/dist/providers/replicate-provider.d.ts +2 -1
- package/dist/providers/replicate-provider.d.ts.map +1 -1
- package/dist/providers/replicate-provider.js +22 -0
- package/dist/providers/replicate-provider.js.map +1 -1
- package/dist/providers/requesty-provider.d.ts +30 -0
- package/dist/providers/requesty-provider.d.ts.map +1 -0
- package/dist/providers/requesty-provider.js +87 -0
- package/dist/providers/requesty-provider.js.map +1 -0
- package/dist/providers/reve-provider.d.ts +2 -1
- package/dist/providers/reve-provider.d.ts.map +1 -1
- package/dist/providers/reve-provider.js +6 -0
- package/dist/providers/reve-provider.js.map +1 -1
- package/dist/providers/rodin-provider.d.ts +2 -1
- package/dist/providers/rodin-provider.d.ts.map +1 -1
- package/dist/providers/rodin-provider.js +6 -0
- package/dist/providers/rodin-provider.js.map +1 -1
- package/dist/providers/together-operations.d.ts +27 -0
- package/dist/providers/together-operations.d.ts.map +1 -0
- package/dist/providers/together-operations.js +95 -0
- package/dist/providers/together-operations.js.map +1 -0
- package/dist/providers/together-provider.d.ts +5 -8
- package/dist/providers/together-provider.d.ts.map +1 -1
- package/dist/providers/together-provider.js +54 -159
- package/dist/providers/together-provider.js.map +1 -1
- package/dist/providers/topaz-provider.d.ts +2 -1
- package/dist/providers/topaz-provider.d.ts.map +1 -1
- package/dist/providers/topaz-provider.js +5 -0
- package/dist/providers/topaz-provider.js.map +1 -1
- package/dist/providers/types.d.ts +38 -0
- package/dist/providers/types.d.ts.map +1 -1
- package/dist/providers/types.js.map +1 -1
- package/dist/providers/useapi-provider.d.ts +2 -1
- package/dist/providers/useapi-provider.d.ts.map +1 -1
- package/dist/providers/useapi-provider.js +8 -0
- package/dist/providers/useapi-provider.js.map +1 -1
- package/dist/providers/vllm-provider.d.ts +2 -4
- package/dist/providers/vllm-provider.d.ts.map +1 -1
- package/dist/providers/vllm-provider.js +1 -5
- package/dist/providers/vllm-provider.js.map +1 -1
- package/dist/providers/voyage-provider.d.ts +2 -1
- package/dist/providers/voyage-provider.d.ts.map +1 -1
- package/dist/providers/voyage-provider.js +5 -0
- package/dist/providers/voyage-provider.js.map +1 -1
- package/dist/providers/xai-provider.d.ts +2 -0
- package/dist/providers/xai-provider.d.ts.map +1 -1
- package/dist/providers/xai-provider.js +8 -0
- package/dist/providers/xai-provider.js.map +1 -1
- package/dist/recommended-models.d.ts.map +1 -1
- package/dist/recommended-models.js +20 -0
- package/dist/recommended-models.js.map +1 -1
- package/dist/run-context.d.ts +20 -0
- package/dist/run-context.d.ts.map +1 -0
- package/dist/run-context.js +18 -0
- package/dist/run-context.js.map +1 -0
- package/dist/run-trace-context.d.ts +30 -0
- package/dist/run-trace-context.d.ts.map +1 -0
- package/dist/run-trace-context.js +80 -0
- package/dist/run-trace-context.js.map +1 -0
- package/dist/run-trace-processor.d.ts +65 -0
- package/dist/run-trace-processor.d.ts.map +1 -0
- package/dist/run-trace-processor.js +417 -0
- package/dist/run-trace-processor.js.map +1 -0
- package/dist/run-trace-serialization.d.ts +5 -0
- package/dist/run-trace-serialization.d.ts.map +1 -0
- package/dist/run-trace-serialization.js +113 -0
- package/dist/run-trace-serialization.js.map +1 -0
- package/dist/storage-workspace.d.ts +3 -0
- package/dist/storage-workspace.d.ts.map +1 -1
- package/dist/storage-workspace.js +32 -17
- package/dist/storage-workspace.js.map +1 -1
- package/dist/telemetry.d.ts +9 -3
- package/dist/telemetry.d.ts.map +1 -1
- package/dist/telemetry.js +53 -20
- package/dist/telemetry.js.map +1 -1
- package/dist/trace-exporters.d.ts +2 -29
- package/dist/trace-exporters.d.ts.map +1 -1
- package/dist/trace-exporters.js +10 -2
- package/dist/trace-exporters.js.map +1 -1
- package/dist/tracing-helpers.d.ts +15 -22
- package/dist/tracing-helpers.d.ts.map +1 -1
- package/dist/tracing-helpers.js +38 -6
- package/dist/tracing-helpers.js.map +1 -1
- package/dist/trim-video-window.d.ts +8 -0
- package/dist/trim-video-window.d.ts.map +1 -0
- package/dist/trim-video-window.js +50 -0
- package/dist/trim-video-window.js.map +1 -0
- package/package.json +19 -5
|
@@ -9,6 +9,7 @@ import { getNodeBuiltinSync } from "@nodetool-ai/config";
|
|
|
9
9
|
import { FileStorageAdapter } from "@nodetool-ai/storage";
|
|
10
10
|
import { setWorkspaceFactory } from "./context.js";
|
|
11
11
|
import { PrefixedStorageAdapter } from "./prefixed-storage-adapter.js";
|
|
12
|
+
import { withTaskSpan } from "./tracing-helpers.js";
|
|
12
13
|
import { WorkspacePathError } from "./workspace.js";
|
|
13
14
|
// Loaded lazily so this module still imports in browser / Edge runtimes, the
|
|
14
15
|
// same way the storage adapters above it do. Only `materialize`, `absorb`,
|
|
@@ -191,26 +192,31 @@ export class StorageWorkspace {
|
|
|
191
192
|
uri(path) {
|
|
192
193
|
return this.storage.uriForKey(this.key(path));
|
|
193
194
|
}
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
195
|
+
read(path) {
|
|
196
|
+
return withTaskSpan("io", "workspace.read", {}, async (span) => {
|
|
197
|
+
await this.assertContained(path);
|
|
198
|
+
const bytes = await this.storage.retrieve(this.uri(path));
|
|
199
|
+
span?.setAttribute("nodetool.workspace.bytes", bytes?.byteLength ?? 0);
|
|
200
|
+
// The file backend answers with a Buffer, the object stores with a plain
|
|
201
|
+
// Uint8Array. A caller comparing or structured-cloning the result must
|
|
202
|
+
// not be able to tell which backend it got, so narrow to the common type.
|
|
203
|
+
if (bytes === null)
|
|
204
|
+
return null;
|
|
205
|
+
return bytes instanceof Uint8Array && bytes.constructor === Uint8Array
|
|
206
|
+
? bytes
|
|
207
|
+
: new Uint8Array(bytes);
|
|
208
|
+
});
|
|
205
209
|
}
|
|
206
210
|
async readText(path) {
|
|
207
211
|
const bytes = await this.read(path);
|
|
208
212
|
return bytes === null ? null : textDecoder.decode(bytes);
|
|
209
213
|
}
|
|
210
|
-
|
|
211
|
-
await this.assertContained(path);
|
|
214
|
+
write(path, data, contentType) {
|
|
212
215
|
const bytes = typeof data === "string" ? textEncoder.encode(data) : data;
|
|
213
|
-
|
|
216
|
+
return withTaskSpan("io", "workspace.write", { "nodetool.workspace.bytes": bytes.byteLength }, async () => {
|
|
217
|
+
await this.assertContained(path);
|
|
218
|
+
await this.storage.store(this.key(path), bytes, contentType);
|
|
219
|
+
});
|
|
214
220
|
}
|
|
215
221
|
async exists(path) {
|
|
216
222
|
try {
|
|
@@ -262,7 +268,10 @@ export class StorageWorkspace {
|
|
|
262
268
|
}
|
|
263
269
|
return null;
|
|
264
270
|
}
|
|
265
|
-
|
|
271
|
+
list(path = "", opts = {}) {
|
|
272
|
+
return withTaskSpan("io", "workspace.list", { "nodetool.workspace.recursive": opts.recursive === true }, () => this.listEntries(path, opts));
|
|
273
|
+
}
|
|
274
|
+
async listEntries(path, opts) {
|
|
266
275
|
const key = normalize(path);
|
|
267
276
|
if (key)
|
|
268
277
|
await this.assertContained(key);
|
|
@@ -344,7 +353,10 @@ export class StorageWorkspace {
|
|
|
344
353
|
await this.copy(from, to);
|
|
345
354
|
await this.delete(from);
|
|
346
355
|
}
|
|
347
|
-
|
|
356
|
+
materialize(path) {
|
|
357
|
+
return withTaskSpan("io", "workspace.materialize", {}, () => this.stage(path));
|
|
358
|
+
}
|
|
359
|
+
async stage(path) {
|
|
348
360
|
await this.assertContained(path);
|
|
349
361
|
const key = this.key(path);
|
|
350
362
|
if (this.localDir)
|
|
@@ -359,7 +371,10 @@ export class StorageWorkspace {
|
|
|
359
371
|
await node.fs.writeFile(target, bytes);
|
|
360
372
|
return target;
|
|
361
373
|
}
|
|
362
|
-
|
|
374
|
+
absorb(localPath, path) {
|
|
375
|
+
return withTaskSpan("io", "workspace.absorb", {}, () => this.absorbFile(localPath, path));
|
|
376
|
+
}
|
|
377
|
+
async absorbFile(localPath, path) {
|
|
363
378
|
const node = requireNode();
|
|
364
379
|
if (this.localDir &&
|
|
365
380
|
node.path.resolve(localPath) ===
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"storage-workspace.js","sourceRoot":"","sources":["../src/storage-workspace.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"storage-workspace.js","sourceRoot":"","sources":["../src/storage-workspace.ts"],"names":[],"mappings":"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"}
|
package/dist/telemetry.d.ts
CHANGED
|
@@ -10,7 +10,11 @@
|
|
|
10
10
|
*
|
|
11
11
|
* OpenTelemetry / OTLP:
|
|
12
12
|
* TRACELOOP_API_KEY — Traceloop cloud API key
|
|
13
|
-
* OTEL_EXPORTER_OTLP_ENDPOINT — Any OTLP-compatible backend
|
|
13
|
+
* OTEL_EXPORTER_OTLP_ENDPOINT — Any OTLP-compatible backend (`/v1/traces`
|
|
14
|
+
* is appended)
|
|
15
|
+
* OTEL_EXPORTER_OTLP_TRACES_ENDPOINT — Full traces URL, used as given;
|
|
16
|
+
* wins over OTEL_EXPORTER_OTLP_ENDPOINT
|
|
17
|
+
* OTEL_EXPORTER_OTLP_HEADERS — Extra exporter headers (read by the SDK)
|
|
14
18
|
* OTEL_SERVICE_NAME — Service name tag (default: "nodetool")
|
|
15
19
|
* OTEL_TRACES_EXPORTER=console — Print spans to stdout via OTel SDK
|
|
16
20
|
* TRACELOOP_DISABLE_BATCH=true — Flush spans immediately (dev mode)
|
|
@@ -22,7 +26,7 @@
|
|
|
22
26
|
* All NodeTool sinks emit the same {@link TraceRecord} shape (see
|
|
23
27
|
* trace-exporters.ts) so a downstream agent can ingest either one.
|
|
24
28
|
*/
|
|
25
|
-
import type
|
|
29
|
+
import { type Tracer } from "@opentelemetry/api";
|
|
26
30
|
import type { StdoutFormat } from "./trace-exporters.js";
|
|
27
31
|
export interface TelemetryOptions {
|
|
28
32
|
/** Override the service name (defaults to OTEL_SERVICE_NAME or "nodetool"). */
|
|
@@ -48,7 +52,7 @@ export interface TelemetryOptions {
|
|
|
48
52
|
* Initialize OpenTelemetry instrumentation.
|
|
49
53
|
*
|
|
50
54
|
* Idempotent: calling more than once is a no-op (returns the previous result).
|
|
51
|
-
*
|
|
55
|
+
* The durable processor is always active. External sinks remain optional.
|
|
52
56
|
*/
|
|
53
57
|
export declare function initTelemetry(options?: TelemetryOptions): Promise<boolean>;
|
|
54
58
|
/** Returns the active tracer, or null if telemetry is not initialized. */
|
|
@@ -60,6 +64,8 @@ export declare function getTracer(): Tracer | null;
|
|
|
60
64
|
* this a CLI that finishes before the batch delay delivers zero traces.
|
|
61
65
|
*/
|
|
62
66
|
export declare function shutdownTelemetry(): Promise<void>;
|
|
67
|
+
/** Wait until the durable processor has persisted every queued completed record. */
|
|
68
|
+
export declare function flushTelemetry(): Promise<void>;
|
|
63
69
|
/**
|
|
64
70
|
* Reset the telemetry singleton. Test-only — production code should call
|
|
65
71
|
* `initTelemetry()` exactly once at startup.
|
package/dist/telemetry.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telemetry.d.ts","sourceRoot":"","sources":["../src/telemetry.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"telemetry.d.ts","sourceRoot":"","sources":["../src/telemetry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAEH,OAAO,EAA+B,KAAK,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE9E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAYzD,MAAM,WAAW,gBAAgB;IAC/B,+EAA+E;IAC/E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uEAAuE;IACvE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,MAAM,CAAC,EAAE,YAAY,GAAG,KAAK,CAAC;IAC9B;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wDAAwD;IACxD,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,uCAAuC;IACvC,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;;;GAKG;AACH,wBAAsB,aAAa,CACjC,OAAO,GAAE,gBAAqB,GAC7B,OAAO,CAAC,OAAO,CAAC,CAwHlB;AAED,0EAA0E;AAC1E,wBAAgB,SAAS,IAAI,MAAM,GAAG,IAAI,CAEzC;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAiBvD;AAED,oFAAoF;AACpF,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAEpD;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,IAAI,IAAI,CAS7C"}
|
package/dist/telemetry.js
CHANGED
|
@@ -10,7 +10,11 @@
|
|
|
10
10
|
*
|
|
11
11
|
* OpenTelemetry / OTLP:
|
|
12
12
|
* TRACELOOP_API_KEY — Traceloop cloud API key
|
|
13
|
-
* OTEL_EXPORTER_OTLP_ENDPOINT — Any OTLP-compatible backend
|
|
13
|
+
* OTEL_EXPORTER_OTLP_ENDPOINT — Any OTLP-compatible backend (`/v1/traces`
|
|
14
|
+
* is appended)
|
|
15
|
+
* OTEL_EXPORTER_OTLP_TRACES_ENDPOINT — Full traces URL, used as given;
|
|
16
|
+
* wins over OTEL_EXPORTER_OTLP_ENDPOINT
|
|
17
|
+
* OTEL_EXPORTER_OTLP_HEADERS — Extra exporter headers (read by the SDK)
|
|
14
18
|
* OTEL_SERVICE_NAME — Service name tag (default: "nodetool")
|
|
15
19
|
* OTEL_TRACES_EXPORTER=console — Print spans to stdout via OTel SDK
|
|
16
20
|
* TRACELOOP_DISABLE_BATCH=true — Flush spans immediately (dev mode)
|
|
@@ -22,22 +26,28 @@
|
|
|
22
26
|
* All NodeTool sinks emit the same {@link TraceRecord} shape (see
|
|
23
27
|
* trace-exporters.ts) so a downstream agent can ingest either one.
|
|
24
28
|
*/
|
|
25
|
-
import {
|
|
29
|
+
import { context, propagation, trace } from "@opentelemetry/api";
|
|
30
|
+
import { createLogger, setLogHook } from "@nodetool-ai/config";
|
|
31
|
+
import { ContentFilteringSpanExporter, RunTraceSpanProcessor, installRunTraceLogHook } from "./run-trace-processor.js";
|
|
32
|
+
import { getRunTraceScope } from "./run-trace-context.js";
|
|
33
|
+
import { TRACE_SPAN_EVENT_LIMIT } from "@nodetool-ai/protocol";
|
|
26
34
|
const log = createLogger("nodetool.runtime.telemetry");
|
|
27
35
|
let _tracer = null;
|
|
28
36
|
let _initialized = false;
|
|
29
37
|
let _sdk = null;
|
|
38
|
+
let _processors = [];
|
|
30
39
|
/**
|
|
31
40
|
* Initialize OpenTelemetry instrumentation.
|
|
32
41
|
*
|
|
33
42
|
* Idempotent: calling more than once is a no-op (returns the previous result).
|
|
34
|
-
*
|
|
43
|
+
* The durable processor is always active. External sinks remain optional.
|
|
35
44
|
*/
|
|
36
45
|
export async function initTelemetry(options = {}) {
|
|
37
46
|
if (_initialized)
|
|
38
47
|
return _tracer !== null;
|
|
39
48
|
const traceloopKey = process.env["TRACELOOP_API_KEY"];
|
|
40
49
|
const otlpEndpoint = process.env["OTEL_EXPORTER_OTLP_ENDPOINT"];
|
|
50
|
+
const otlpTracesEndpoint = process.env["OTEL_EXPORTER_OTLP_TRACES_ENDPOINT"];
|
|
41
51
|
const consoleMode = options.console || process.env["OTEL_TRACES_EXPORTER"] === "console";
|
|
42
52
|
const stdoutFormat = (() => {
|
|
43
53
|
if (options.stdout === false)
|
|
@@ -53,52 +63,63 @@ export async function initTelemetry(options = {}) {
|
|
|
53
63
|
return null;
|
|
54
64
|
})();
|
|
55
65
|
const traceFilePath = options.traceFile ?? process.env["NODETOOL_TRACE_FILE"];
|
|
56
|
-
const hasOtlp = !!(traceloopKey || otlpEndpoint);
|
|
57
|
-
if (!hasOtlp && !consoleMode && !stdoutFormat && !traceFilePath) {
|
|
58
|
-
_initialized = true;
|
|
59
|
-
return false;
|
|
60
|
-
}
|
|
66
|
+
const hasOtlp = !!(traceloopKey || otlpEndpoint || otlpTracesEndpoint);
|
|
61
67
|
const { NodeSDK } = await import("@opentelemetry/sdk-node");
|
|
62
68
|
const { resourceFromAttributes } = await import("@opentelemetry/resources");
|
|
63
69
|
const { ATTR_SERVICE_NAME } = await import("@opentelemetry/semantic-conventions");
|
|
64
70
|
const otelApi = await import("@opentelemetry/api");
|
|
65
|
-
const { BatchSpanProcessor, SimpleSpanProcessor, ConsoleSpanExporter } = await import("@opentelemetry/sdk-trace-base");
|
|
71
|
+
const { BatchSpanProcessor, SimpleSpanProcessor, ConsoleSpanExporter, RandomIdGenerator, AlwaysOnSampler } = await import("@opentelemetry/sdk-trace-base");
|
|
66
72
|
const serviceName = options.serviceName ?? process.env["OTEL_SERVICE_NAME"] ?? "nodetool";
|
|
67
73
|
const disableBatch = options.disableBatch ?? process.env["TRACELOOP_DISABLE_BATCH"] === "true";
|
|
68
|
-
const
|
|
69
|
-
const
|
|
74
|
+
const processor = new RunTraceSpanProcessor();
|
|
75
|
+
const processors = [processor];
|
|
76
|
+
_processors = processors;
|
|
77
|
+
const destinations = ["run-store"];
|
|
70
78
|
if (hasOtlp) {
|
|
71
79
|
const { OTLPTraceExporter } = await import("@opentelemetry/exporter-trace-otlp-proto");
|
|
72
|
-
const url =
|
|
73
|
-
?
|
|
74
|
-
:
|
|
80
|
+
const url = otlpTracesEndpoint
|
|
81
|
+
? otlpTracesEndpoint
|
|
82
|
+
: otlpEndpoint
|
|
83
|
+
? `${otlpEndpoint.replace(/\/+$/, "")}/v1/traces`
|
|
84
|
+
: "https://api.traceloop.com/v1/traces";
|
|
75
85
|
const headers = traceloopKey
|
|
76
86
|
? { Authorization: `Bearer ${traceloopKey}` }
|
|
77
87
|
: {};
|
|
78
88
|
const exporter = new OTLPTraceExporter({ url, headers });
|
|
79
89
|
const Proc = disableBatch ? SimpleSpanProcessor : BatchSpanProcessor;
|
|
80
|
-
processors.push(new Proc(exporter));
|
|
81
|
-
destinations.push(traceloopKey ? "traceloop" : `otlp:${
|
|
90
|
+
processors.push(new Proc(new ContentFilteringSpanExporter(exporter)));
|
|
91
|
+
destinations.push(traceloopKey ? "traceloop" : `otlp:${url}`);
|
|
82
92
|
}
|
|
83
93
|
if (consoleMode) {
|
|
84
|
-
processors.push(new SimpleSpanProcessor(new ConsoleSpanExporter()));
|
|
94
|
+
processors.push(new SimpleSpanProcessor(new ContentFilteringSpanExporter(new ConsoleSpanExporter())));
|
|
85
95
|
destinations.push("otel-console");
|
|
86
96
|
}
|
|
87
97
|
if (stdoutFormat) {
|
|
88
98
|
const { StdoutSpanExporter } = await import("./trace-exporters.js");
|
|
89
|
-
processors.push(new SimpleSpanProcessor(new StdoutSpanExporter(stdoutFormat)));
|
|
99
|
+
processors.push(new SimpleSpanProcessor(new ContentFilteringSpanExporter(new StdoutSpanExporter(stdoutFormat))));
|
|
90
100
|
destinations.push(`stdout:${stdoutFormat}`);
|
|
91
101
|
}
|
|
92
102
|
if (traceFilePath) {
|
|
93
103
|
const { JsonlFileSpanExporter } = await import("./trace-exporters.js");
|
|
94
104
|
// SimpleSpanProcessor — we want the file written eagerly so a crash
|
|
95
105
|
// doesn't lose recent spans, and disk I/O is cheap enough.
|
|
96
|
-
processors.push(new SimpleSpanProcessor(new JsonlFileSpanExporter(traceFilePath)));
|
|
106
|
+
processors.push(new SimpleSpanProcessor(new ContentFilteringSpanExporter(new JsonlFileSpanExporter(traceFilePath))));
|
|
97
107
|
destinations.push(`file:${traceFilePath}`);
|
|
98
108
|
}
|
|
109
|
+
// Outbound `fetch` (provider APIs, S3, Supabase, safeFetch) becomes
|
|
110
|
+
// `HTTP <method>` client spans. undici publishes on diagnostics_channel, so
|
|
111
|
+
// this works in ESM and in the bundled backend without a loader hook. The
|
|
112
|
+
// OTLP exporter sends over `node:http`, so it never traces itself.
|
|
113
|
+
const { UndiciInstrumentation } = await import("@opentelemetry/instrumentation-undici");
|
|
114
|
+
const ids = new RandomIdGenerator();
|
|
99
115
|
const sdk = new NodeSDK({
|
|
100
116
|
resource: resourceFromAttributes({ [ATTR_SERVICE_NAME]: serviceName }),
|
|
101
|
-
|
|
117
|
+
autoDetectResources: false,
|
|
118
|
+
spanProcessors: processors,
|
|
119
|
+
sampler: new AlwaysOnSampler(),
|
|
120
|
+
spanLimits: { eventCountLimit: TRACE_SPAN_EVENT_LIMIT },
|
|
121
|
+
idGenerator: { generateTraceId: () => getRunTraceScope()?.traceId ?? ids.generateTraceId(), generateSpanId: () => ids.generateSpanId() },
|
|
122
|
+
instrumentations: [new UndiciInstrumentation()]
|
|
102
123
|
});
|
|
103
124
|
// sdk.start() is typed as void in current SDK versions, but historically
|
|
104
125
|
// returned a Promise — `await` is a no-op on non-thenable values, so this
|
|
@@ -108,6 +129,7 @@ export async function initTelemetry(options = {}) {
|
|
|
108
129
|
_sdk = sdk;
|
|
109
130
|
_tracer = otelApi.trace.getTracer("nodetool", "0.1.0");
|
|
110
131
|
_initialized = true;
|
|
132
|
+
installRunTraceLogHook();
|
|
111
133
|
if (!options.silent) {
|
|
112
134
|
log.info("OpenTelemetry initialized", {
|
|
113
135
|
destinations: destinations.join(", ")
|
|
@@ -130,6 +152,7 @@ export async function shutdownTelemetry() {
|
|
|
130
152
|
_sdk = null;
|
|
131
153
|
_tracer = null;
|
|
132
154
|
_initialized = false;
|
|
155
|
+
_processors = [];
|
|
133
156
|
if (sdk) {
|
|
134
157
|
try {
|
|
135
158
|
await sdk.shutdown();
|
|
@@ -138,6 +161,11 @@ export async function shutdownTelemetry() {
|
|
|
138
161
|
log.warn("Telemetry shutdown failed", err instanceof Error ? err : new Error(String(err)));
|
|
139
162
|
}
|
|
140
163
|
}
|
|
164
|
+
setLogHook(null);
|
|
165
|
+
}
|
|
166
|
+
/** Wait until the durable processor has persisted every queued completed record. */
|
|
167
|
+
export async function flushTelemetry() {
|
|
168
|
+
await Promise.all(_processors.map((processor) => processor.forceFlush()));
|
|
141
169
|
}
|
|
142
170
|
/**
|
|
143
171
|
* Reset the telemetry singleton. Test-only — production code should call
|
|
@@ -147,5 +175,10 @@ export function _resetTelemetryForTest() {
|
|
|
147
175
|
_tracer = null;
|
|
148
176
|
_initialized = false;
|
|
149
177
|
_sdk = null;
|
|
178
|
+
_processors = [];
|
|
179
|
+
setLogHook(null);
|
|
180
|
+
trace.disable();
|
|
181
|
+
context.disable();
|
|
182
|
+
propagation.disable();
|
|
150
183
|
}
|
|
151
184
|
//# sourceMappingURL=telemetry.js.map
|
package/dist/telemetry.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telemetry.js","sourceRoot":"","sources":["../src/telemetry.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"telemetry.js","sourceRoot":"","sources":["../src/telemetry.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,34 +11,8 @@
|
|
|
11
11
|
type WriteStream = ReturnType<typeof import("node:fs").createWriteStream>;
|
|
12
12
|
import type { ReadableSpan, SpanExporter } from "@opentelemetry/sdk-trace-base";
|
|
13
13
|
import { type ExportResult } from "@opentelemetry/core";
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
*
|
|
17
|
-
* `start_time_ms` / `end_time_ms` are unix-epoch milliseconds; `duration_ms`
|
|
18
|
-
* is end−start. Timestamps are ms (not ns) because that's what every
|
|
19
|
-
* downstream consumer (logs, dashboards, LLMs) actually uses.
|
|
20
|
-
*/
|
|
21
|
-
export interface TraceRecord {
|
|
22
|
-
trace_id: string;
|
|
23
|
-
span_id: string;
|
|
24
|
-
parent_span_id: string | null;
|
|
25
|
-
name: string;
|
|
26
|
-
kind: string;
|
|
27
|
-
start_time_ms: number;
|
|
28
|
-
end_time_ms: number;
|
|
29
|
-
duration_ms: number;
|
|
30
|
-
status: {
|
|
31
|
-
code: string;
|
|
32
|
-
message?: string;
|
|
33
|
-
};
|
|
34
|
-
attributes: Record<string, unknown>;
|
|
35
|
-
events: Array<{
|
|
36
|
-
name: string;
|
|
37
|
-
time_ms: number;
|
|
38
|
-
attributes?: Record<string, unknown>;
|
|
39
|
-
}>;
|
|
40
|
-
resource: Record<string, unknown>;
|
|
41
|
-
}
|
|
14
|
+
import type { TraceRecord } from "@nodetool-ai/protocol";
|
|
15
|
+
export type { TraceRecord } from "@nodetool-ai/protocol";
|
|
42
16
|
export declare function spanToRecord(span: ReadableSpan): TraceRecord;
|
|
43
17
|
/**
|
|
44
18
|
* Append spans as JSONL to a file. Creates parent directories as needed.
|
|
@@ -78,5 +52,4 @@ export declare class StdoutSpanExporter implements SpanExporter {
|
|
|
78
52
|
shutdown(): Promise<void>;
|
|
79
53
|
forceFlush(): Promise<void>;
|
|
80
54
|
}
|
|
81
|
-
export {};
|
|
82
55
|
//# sourceMappingURL=trace-exporters.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trace-exporters.d.ts","sourceRoot":"","sources":["../src/trace-exporters.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAWH,KAAK,WAAW,GAAG,UAAU,CAAC,cAAc,SAAS,EAAE,iBAAiB,CAAC,CAAC;AAiC1E,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,EAAoB,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"trace-exporters.d.ts","sourceRoot":"","sources":["../src/trace-exporters.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAWH,KAAK,WAAW,GAAG,UAAU,CAAC,cAAc,SAAS,EAAE,iBAAiB,CAAC,CAAC;AAiC1E,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAChF,OAAO,EAAoB,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,YAAY,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAuBzD,wBAAgB,YAAY,CAAC,IAAI,EAAE,YAAY,GAAG,WAAW,CA2B5D;AAED;;;;;;;;;GASG;AACH,qBAAa,qBAAsB,YAAW,YAAY;IACxD,OAAO,CAAC,MAAM,CAA4B;IAC1C,OAAO,CAAC,WAAW,CAAgB;IAEnC,YAAY,QAAQ,EAAE,MAAM,EAK3B;IAED,MAAM,CACJ,KAAK,EAAE,YAAY,EAAE,EACrB,cAAc,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,GAC7C,IAAI,CAkBN;IAGK,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAS9B;IAEK,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAEhC;CACF;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAgC1E;AAED,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,MAAM,CAAC;AAE7C;;;GAGG;AACH,qBAAa,kBAAmB,YAAW,YAAY;IAEzC,OAAO,CAAC,QAAQ,CAAC,MAAM;IAAnC,YAA6B,MAAM,GAAE,YAAuB,EAAI;IAEhE,MAAM,CACJ,KAAK,EAAE,YAAY,EAAE,EACrB,cAAc,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,IAAI,GAC7C,IAAI,CAcN;IAEK,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAE9B;IAEK,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAEhC;CACF"}
|
package/dist/trace-exporters.js
CHANGED
|
@@ -41,6 +41,14 @@ function dirname(p) {
|
|
|
41
41
|
return nodePath.dirname(p);
|
|
42
42
|
}
|
|
43
43
|
import { ExportResultCode } from "@opentelemetry/core";
|
|
44
|
+
import { externalSpanRecord } from "./run-trace-processor.js";
|
|
45
|
+
/**
|
|
46
|
+
* Stable, analyzer-friendly JSON shape derived from a {@link ReadableSpan}.
|
|
47
|
+
*
|
|
48
|
+
* `start_time_ms` / `end_time_ms` are unix-epoch milliseconds; `duration_ms`
|
|
49
|
+
* is end−start. Timestamps are ms (not ns) because that's what every
|
|
50
|
+
* downstream consumer (logs, dashboards, LLMs) actually uses.
|
|
51
|
+
*/
|
|
44
52
|
const SPAN_KINDS = ["INTERNAL", "SERVER", "CLIENT", "PRODUCER", "CONSUMER"];
|
|
45
53
|
const STATUS_CODES = ["UNSET", "OK", "ERROR"];
|
|
46
54
|
/**
|
|
@@ -109,7 +117,7 @@ export class JsonlFileSpanExporter {
|
|
|
109
117
|
if (!this.stream)
|
|
110
118
|
throw new Error("trace stream not initialized");
|
|
111
119
|
for (const span of spans) {
|
|
112
|
-
await writeLine(this.stream, JSON.stringify(
|
|
120
|
+
await writeLine(this.stream, JSON.stringify(externalSpanRecord(span)) + "\n");
|
|
113
121
|
}
|
|
114
122
|
resultCallback({ code: ExportResultCode.SUCCESS });
|
|
115
123
|
})
|
|
@@ -187,7 +195,7 @@ export class StdoutSpanExporter {
|
|
|
187
195
|
export(spans, resultCallback) {
|
|
188
196
|
try {
|
|
189
197
|
for (const span of spans) {
|
|
190
|
-
const rec =
|
|
198
|
+
const rec = externalSpanRecord(span);
|
|
191
199
|
if (this.format === "json") {
|
|
192
200
|
process.stdout.write(JSON.stringify(rec) + "\n");
|
|
193
201
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"trace-exporters.js","sourceRoot":"","sources":["../src/trace-exporters.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAEzD,mEAAmE;AACnE,uEAAuE;AACvE,MAAM,MAAM,GAAG,kBAAkB,CAA2B,SAAS,CAAC,CAAC;AACvE,MAAM,OAAO,GACX,kBAAkB,CAAoC,kBAAkB,CAAC,CAAC;AAC5E,MAAM,QAAQ,GAAG,kBAAkB,CAA6B,WAAW,CAAC,CAAC;AAG7E,4EAA4E;AAC5E,yEAAyE;AACzE,SAAS,iBAAiB,CACxB,GAAG,IAA4D;IAE/D,sBAAsB;IACtB,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CACb,4DAA4D,CAC7D,CAAC;IACJ,CAAC;IACD,sBAAsB;IACtB,OAAO,MAAM,CAAC,iBAAiB,CAAC,GAAG,IAAI,CAAC,CAAC;AAC3C,CAAC;AACD,KAAK,UAAU,KAAK,CAClB,GAAG,IAAyD;IAE5D,sBAAsB;IACtB,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IACD,sBAAsB;IACtB,OAAO,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;AAChC,CAAC;AACD,SAAS,OAAO,CAAC,CAAS;IACxB,sBAAsB;IACtB,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;IAC3D,CAAC;IACD,sBAAsB;IACtB,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AAC7B,CAAC;AAED,OAAO,EAAE,gBAAgB,EAAqB,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"trace-exporters.js","sourceRoot":"","sources":["../src/trace-exporters.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,25 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
* Helpers for wrapping agent / workflow / node code in OpenTelemetry spans.
|
|
3
|
-
*
|
|
4
|
-
* All helpers degrade gracefully when telemetry is disabled (no tracer
|
|
5
|
-
* configured) — the wrapped function runs as if no span existed, with
|
|
6
|
-
* essentially zero overhead.
|
|
7
|
-
*
|
|
8
|
-
* # Span hierarchy
|
|
9
|
-
*
|
|
10
|
-
* workflow.run ← `withWorkflowSpan`
|
|
11
|
-
* node.process (per node) ← `withNodeSpan`
|
|
12
|
-
* llm.chat / llm.stream ← BaseProvider (existing)
|
|
13
|
-
*
|
|
14
|
-
* agent.execute ← `withAgentSpan({ kind: "execute" })`
|
|
15
|
-
* agent.plan ← `withAgentSpan({ kind: "plan" })`
|
|
16
|
-
* agent.step ← `withAgentSpan({ kind: "step" })`
|
|
17
|
-
* llm.chat / llm.stream ← BaseProvider (existing)
|
|
18
|
-
*
|
|
19
|
-
* Child spans nest automatically because OTel's `startActiveSpan` makes the
|
|
20
|
-
* span active in AsyncLocalStorage for the duration of the callback.
|
|
21
|
-
*/
|
|
22
|
-
import { type Span } from "@opentelemetry/api";
|
|
1
|
+
import { SpanStatusCode, type Span } from "@opentelemetry/api";
|
|
23
2
|
export type AgentSpanKind = "execute" | "plan" | "step";
|
|
24
3
|
/** Token counts and computed cost for one LLM call. */
|
|
25
4
|
export interface LlmUsage {
|
|
@@ -91,6 +70,12 @@ export declare function createUsageSlot(): {
|
|
|
91
70
|
getUsage: () => LlmUsage | null;
|
|
92
71
|
getRequest: () => RecordedRequestPayload;
|
|
93
72
|
};
|
|
73
|
+
/**
|
|
74
|
+
* Mark a span failed: ERROR status with the error text (the run-store
|
|
75
|
+
* `error_summary` source) and the recorded exception. Use it when a failure
|
|
76
|
+
* is returned instead of thrown, so the span does not end OK.
|
|
77
|
+
*/
|
|
78
|
+
export declare function markSpanError(span: Span | null, err: unknown): void;
|
|
94
79
|
/** Wrap a function in an OTel span; pass-through if telemetry is disabled. */
|
|
95
80
|
export declare function withSpan<T>(name: string, attributes: Record<string, unknown>, fn: (span: Span | null) => Promise<T>): Promise<T>;
|
|
96
81
|
/**
|
|
@@ -130,6 +115,13 @@ export declare function withWorkflowSpan<T>(attributes: {
|
|
|
130
115
|
}, fn: (span: Span | null) => Promise<T>): Promise<T>;
|
|
131
116
|
/** Async-generator variant of {@link withAgentSpan}. */
|
|
132
117
|
export declare function withAgentSpanGen<T, TReturn = void>(kind: AgentSpanKind, attributes: Parameters<typeof withAgentSpan>[1], genFactory: () => AsyncGenerator<T, TReturn>): AsyncGenerator<T, TReturn>;
|
|
118
|
+
/** Which resource a task span spends: waiting on IO, or burning CPU. */
|
|
119
|
+
export type TaskKind = "io" | "cpu";
|
|
120
|
+
/**
|
|
121
|
+
* Wrap an IO- or CPU-bound task in a span named `name` carrying
|
|
122
|
+
* `nodetool.task.kind`. Pass-through when telemetry is disabled.
|
|
123
|
+
*/
|
|
124
|
+
export declare function withTaskSpan<T>(kind: TaskKind, name: string, attributes: Record<string, unknown>, fn: (span: Span | null) => Promise<T>): Promise<T>;
|
|
133
125
|
/** Wrap a single node execution (kernel Actor) in a span. */
|
|
134
126
|
export declare function withNodeSpan<T>(attributes: {
|
|
135
127
|
nodeId: string;
|
|
@@ -137,4 +129,5 @@ export declare function withNodeSpan<T>(attributes: {
|
|
|
137
129
|
workflowId?: string;
|
|
138
130
|
extra?: Record<string, unknown>;
|
|
139
131
|
}, fn: (span: Span | null) => Promise<T>): Promise<T>;
|
|
132
|
+
export { SpanStatusCode };
|
|
140
133
|
//# sourceMappingURL=tracing-helpers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tracing-helpers.d.ts","sourceRoot":"","sources":["../src/tracing-helpers.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tracing-helpers.d.ts","sourceRoot":"","sources":["../src/tracing-helpers.ts"],"names":[],"mappings":"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"}
|