diff options
Diffstat (limited to 'tests/registry/jsr/@deno/otel')
-rw-r--r-- | tests/registry/jsr/@deno/otel/0.0.2/deno.json | 14 | ||||
-rw-r--r-- | tests/registry/jsr/@deno/otel/0.0.2/src/index.ts | 38 | ||||
-rw-r--r-- | tests/registry/jsr/@deno/otel/0.0.2/src/register.ts | 5 | ||||
-rw-r--r-- | tests/registry/jsr/@deno/otel/0.0.2_meta.json | 6 | ||||
-rw-r--r-- | tests/registry/jsr/@deno/otel/meta.json | 8 |
5 files changed, 71 insertions, 0 deletions
diff --git a/tests/registry/jsr/@deno/otel/0.0.2/deno.json b/tests/registry/jsr/@deno/otel/0.0.2/deno.json new file mode 100644 index 000000000..cfa44a7d0 --- /dev/null +++ b/tests/registry/jsr/@deno/otel/0.0.2/deno.json @@ -0,0 +1,14 @@ +{ + "name": "@deno/otel", + "version": "0.0.2", + "exports": { + ".": "./src/index.ts", + "./register": "./src/register.ts" + }, + "tasks": { + "check:license": "deno run -A tools/check_license.ts", + "check:docs": "deno doc --lint src/index.ts", + "check": "deno task check:license --check", + "ok": "deno fmt --check && deno lint && deno task check" + } +} diff --git a/tests/registry/jsr/@deno/otel/0.0.2/src/index.ts b/tests/registry/jsr/@deno/otel/0.0.2/src/index.ts new file mode 100644 index 000000000..9c4445783 --- /dev/null +++ b/tests/registry/jsr/@deno/otel/0.0.2/src/index.ts @@ -0,0 +1,38 @@ +// Copyright 2024-2024 the Deno authors. All rights reserved. MIT license. + +import { context } from "npm:@opentelemetry/api@1"; +import { + BasicTracerProvider, + SimpleSpanProcessor, +} from "npm:@opentelemetry/sdk-trace-base@1"; + +// @ts-ignore Deno.telemetry is not typed yet +const telemetry = Deno.telemetry ?? Deno.tracing; + +let COUNTER = 1; + +/** + * Register `Deno.telemetry` with the OpenTelemetry library. + */ +export function register() { + context.setGlobalContextManager( + new telemetry.ContextManager() ?? telemetry.ContextManager(), + ); + + const provider = new BasicTracerProvider({ + idGenerator: Deno.env.get("DENO_UNSTABLE_OTEL_DETERMINISTIC") === "1" ? { + generateSpanId() { + return "1" + String(COUNTER++).padStart(15, "0"); + }, + generateTraceId() { + return "1" + String(COUNTER++).padStart(31, "0"); + } + } : undefined + }); + + // @ts-ignore Deno.tracing is not typed yet + const exporter = new telemetry.SpanExporter(); + provider.addSpanProcessor(new SimpleSpanProcessor(exporter)); + + provider.register(); +} diff --git a/tests/registry/jsr/@deno/otel/0.0.2/src/register.ts b/tests/registry/jsr/@deno/otel/0.0.2/src/register.ts new file mode 100644 index 000000000..544370707 --- /dev/null +++ b/tests/registry/jsr/@deno/otel/0.0.2/src/register.ts @@ -0,0 +1,5 @@ +// Copyright 2024-2024 the Deno authors. All rights reserved. MIT license. + +import { register } from "./index.ts"; + +register(); diff --git a/tests/registry/jsr/@deno/otel/0.0.2_meta.json b/tests/registry/jsr/@deno/otel/0.0.2_meta.json new file mode 100644 index 000000000..79c28d61d --- /dev/null +++ b/tests/registry/jsr/@deno/otel/0.0.2_meta.json @@ -0,0 +1,6 @@ +{ + "exports": { + ".": "./src/index.ts", + "./register": "./src/register.ts" + } +}
\ No newline at end of file diff --git a/tests/registry/jsr/@deno/otel/meta.json b/tests/registry/jsr/@deno/otel/meta.json new file mode 100644 index 000000000..1cb49741a --- /dev/null +++ b/tests/registry/jsr/@deno/otel/meta.json @@ -0,0 +1,8 @@ +{ + "scope": "deno", + "name": "otel", + "latest": "0.0.2", + "versions": { + "0.0.2": {} + } +}
\ No newline at end of file |