@alumnium/telemetry 0.24.0-alpha.1 → 0.24.0-alpha.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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alumnium/telemetry",
3
- "version": "0.24.0-alpha.1",
3
+ "version": "0.24.0-alpha.2",
4
4
  "description": "Alumnium OpenTelemetry trace and log exporters",
5
5
  "license": "MIT",
6
6
  "author": "Alex Rodionov <p0deje@gmail.com>",
package/src/index.cjs CHANGED
@@ -39,8 +39,8 @@ var __export = (target, all) => {
39
39
  // telemetry/src/index.ts
40
40
  var exports_src = {};
41
41
  __export(exports_src, {
42
- startTracing: () => startTracing,
43
42
  getLogSink: () => getLogSink,
43
+ startTracing: () => startTracing,
44
44
  });
45
45
  module.exports = __toCommonJS(exports_src);
46
46
  var import_otel = require("@logtape/otel");
@@ -99,5 +99,5 @@ function env(...names) {
99
99
  return names.map((name) => process.env[name]).find(Boolean);
100
100
  }
101
101
 
102
- //# debugId=9F39564F187DFB3C64756E2164756E21
102
+ //# debugId=5988BC3DEE98F43864756E2164756E21
103
103
  //# sourceMappingURL=index.cjs.map
package/src/index.cjs.map CHANGED
@@ -2,9 +2,9 @@
2
2
  "version": 3,
3
3
  "sources": ["../../telemetry/src/index.ts"],
4
4
  "sourcesContent": [
5
- "// OpenTelemetry exporters of Alumnium traces and logs. `@alumnium/core` loads\n// this package when tracing is enabled (`ALUMNIUM_TRACE=true`), so installs\n// without tracing skip the OpenTelemetry SDK.\n\nimport type { Sink } from \"@logtape/logtape\";\nimport { getOpenTelemetrySink } from \"@logtape/otel\";\nimport { OTLPLogExporter as GrpcLogExporter } from \"@opentelemetry/exporter-logs-otlp-grpc\";\nimport { OTLPLogExporter as HttpLogExporter } from \"@opentelemetry/exporter-logs-otlp-http\";\nimport { OTLPLogExporter as ProtoLogExporter } from \"@opentelemetry/exporter-logs-otlp-proto\";\nimport { OTLPTraceExporter } from \"@opentelemetry/exporter-trace-otlp-http\";\nimport {\n defaultResource,\n resourceFromAttributes,\n} from \"@opentelemetry/resources\";\nimport {\n LoggerProvider,\n SimpleLogRecordProcessor,\n} from \"@opentelemetry/sdk-logs\";\nimport { BatchSpanProcessor } from \"@opentelemetry/sdk-trace-base\";\nimport { NodeTracerProvider } from \"@opentelemetry/sdk-trace-node\";\n\nexport interface Tracing {\n /** Exports the pending spans. */\n flush(): Promise<void>;\n}\n\n/**\n * Registers the global tracer provider, exporting spans over OTLP as\n * configured by the standard `OTEL_*` environment variables.\n */\nexport function startTracing(serviceName: string): Tracing {\n const provider = new NodeTracerProvider({\n resource: resourceFromAttributes({ \"service.name\": serviceName }),\n spanProcessors: [new BatchSpanProcessor(new OTLPTraceExporter())],\n });\n provider.register();\n return { flush: () => provider.forceFlush() };\n}\n\n/**\n * Creates a LogTape sink exporting logs over OTLP, when an OTLP endpoint is\n * configured.\n */\nexport function getLogSink(serviceName: string): Sink {\n // NOTE: The exporter is created here rather than by `@logtape/otel`, which\n // imports it by a dynamic specifier the Bun compiler can't bundle.\n if (!env(\"OTEL_EXPORTER_OTLP_LOGS_ENDPOINT\", \"OTEL_EXPORTER_OTLP_ENDPOINT\"))\n return () => {};\n const loggerProvider = new LoggerProvider({\n resource: defaultResource().merge(\n resourceFromAttributes({ \"service.name\": serviceName }),\n ),\n processors: [new SimpleLogRecordProcessor(createLogExporter())],\n });\n return getOpenTelemetrySink({ loggerProvider });\n}\n\n/** Creates the log exporter for the configured OTLP protocol. */\nfunction createLogExporter() {\n switch (\n env(\"OTEL_EXPORTER_OTLP_LOGS_PROTOCOL\", \"OTEL_EXPORTER_OTLP_PROTOCOL\")\n ) {\n case \"grpc\":\n return new GrpcLogExporter();\n case \"http/protobuf\":\n return new ProtoLogExporter();\n default:\n return new HttpLogExporter();\n }\n}\n\nfunction env(...names: string[]): string | undefined {\n return names.map((name) => process.env[name]).find(Boolean);\n}\n"
5
+ "import type { Sink } from \"@logtape/logtape\";\nimport { getOpenTelemetrySink } from \"@logtape/otel\";\nimport { OTLPLogExporter as GrpcLogExporter } from \"@opentelemetry/exporter-logs-otlp-grpc\";\nimport { OTLPLogExporter as HttpLogExporter } from \"@opentelemetry/exporter-logs-otlp-http\";\nimport { OTLPLogExporter as ProtoLogExporter } from \"@opentelemetry/exporter-logs-otlp-proto\";\nimport { OTLPTraceExporter } from \"@opentelemetry/exporter-trace-otlp-http\";\nimport {\n defaultResource,\n resourceFromAttributes,\n} from \"@opentelemetry/resources\";\nimport {\n LoggerProvider,\n SimpleLogRecordProcessor,\n} from \"@opentelemetry/sdk-logs\";\nimport { BatchSpanProcessor } from \"@opentelemetry/sdk-trace-base\";\nimport { NodeTracerProvider } from \"@opentelemetry/sdk-trace-node\";\n\nexport interface Tracing {\n /** Exports the pending spans. */\n flush(): Promise<void>;\n}\n\n/**\n * Registers the global tracer provider, exporting spans over OTLP as\n * configured by the standard `OTEL_*` environment variables.\n */\nexport function startTracing(serviceName: string): Tracing {\n const provider = new NodeTracerProvider({\n resource: resourceFromAttributes({ \"service.name\": serviceName }),\n spanProcessors: [new BatchSpanProcessor(new OTLPTraceExporter())],\n });\n provider.register();\n return { flush: () => provider.forceFlush() };\n}\n\n/**\n * Creates a LogTape sink exporting logs over OTLP, when an OTLP endpoint is\n * configured.\n */\nexport function getLogSink(serviceName: string): Sink {\n // NOTE: The exporter is created here rather than by `@logtape/otel`, which\n // imports it by a dynamic specifier the Bun compiler can't bundle.\n if (!env(\"OTEL_EXPORTER_OTLP_LOGS_ENDPOINT\", \"OTEL_EXPORTER_OTLP_ENDPOINT\"))\n return () => {};\n const loggerProvider = new LoggerProvider({\n resource: defaultResource().merge(\n resourceFromAttributes({ \"service.name\": serviceName }),\n ),\n processors: [new SimpleLogRecordProcessor(createLogExporter())],\n });\n return getOpenTelemetrySink({ loggerProvider });\n}\n\n/** Creates the log exporter for the configured OTLP protocol. */\nfunction createLogExporter() {\n switch (\n env(\"OTEL_EXPORTER_OTLP_LOGS_PROTOCOL\", \"OTEL_EXPORTER_OTLP_PROTOCOL\")\n ) {\n case \"grpc\":\n return new GrpcLogExporter();\n case \"http/protobuf\":\n return new ProtoLogExporter();\n default:\n return new HttpLogExporter();\n }\n}\n\nfunction env(...names: string[]): string | undefined {\n // oxlint-disable-next-line no-process-env -- Reads the standard OTEL_* vars like the OpenTelemetry SDK, as this package doesn't depend on core's Env\n return names.map((name) => process.env[name]).find(Boolean);\n}\n"
6
6
  ],
7
- "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKqC,IAArC;AACmD,IAAnD;AACmD,IAAnD;AACoD,IAApD;AACkC,IAAlC;AAIO,IAHP;AAOO,IAHP;AAImC,IAAnC;AACmC,IAAnC;AAWO,SAAS,YAAY,CAAC,aAA8B;AAAA,EACzD,MAAM,WAAW,IAAI,yCAAmB;AAAA,IACtC,UAAU,wCAAuB,EAAE,gBAAgB,YAAY,CAAC;AAAA,IAChE,gBAAgB,CAAC,IAAI,yCAAmB,IAAI,iDAAmB,CAAC;AAAA,EAClE,CAAC;AAAA,EACD,SAAS,SAAS;AAAA,EAClB,OAAO,EAAE,OAAO,MAAM,SAAS,WAAW,EAAE;AAAA;AAOvC,SAAS,UAAU,CAAC,aAA2B;AAAA,EAGpD,IAAI,CAAC,IAAI,oCAAoC,6BAA6B;AAAA,IACxE,OAAO,MAAM;AAAA,EACf,MAAM,iBAAiB,IAAI,+BAAe;AAAA,IACxC,UAAU,iCAAgB,EAAE,MAC1B,wCAAuB,EAAE,gBAAgB,YAAY,CAAC,CACxD;AAAA,IACA,YAAY,CAAC,IAAI,yCAAyB,kBAAkB,CAAC,CAAC;AAAA,EAChE,CAAC;AAAA,EACD,OAAO,iCAAqB,EAAE,eAAe,CAAC;AAAA;AAIhD,SAAS,iBAAiB,GAAG;AAAA,EAC3B,QACE,IAAI,oCAAoC,6BAA6B;AAAA,SAEhE;AAAA,MACH,OAAO,IAAI;AAAA,SACR;AAAA,MACH,OAAO,IAAI;AAAA;AAAA,MAEX,OAAO,IAAI;AAAA;AAAA;AAIjB,SAAS,GAAG,IAAI,OAAqC;AAAA,EACnD,OAAO,MAAM,IAAI,CAAC,SAAS,QAAQ,IAAI,KAAK,EAAE,KAAK,OAAO;AAAA;",
8
- "debugId": "9F39564F187DFB3C64756E2164756E21",
7
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACqC,IAArC;AACmD,IAAnD;AACmD,IAAnD;AACoD,IAApD;AACkC,IAAlC;AAIO,IAHP;AAOO,IAHP;AAImC,IAAnC;AACmC,IAAnC;AAWO,SAAS,YAAY,CAAC,aAA8B;AAAA,EACzD,MAAM,WAAW,IAAI,yCAAmB;AAAA,IACtC,UAAU,wCAAuB,EAAE,gBAAgB,YAAY,CAAC;AAAA,IAChE,gBAAgB,CAAC,IAAI,yCAAmB,IAAI,iDAAmB,CAAC;AAAA,EAClE,CAAC;AAAA,EACD,SAAS,SAAS;AAAA,EAClB,OAAO,EAAE,OAAO,MAAM,SAAS,WAAW,EAAE;AAAA;AAOvC,SAAS,UAAU,CAAC,aAA2B;AAAA,EAGpD,IAAI,CAAC,IAAI,oCAAoC,6BAA6B;AAAA,IACxE,OAAO,MAAM;AAAA,EACf,MAAM,iBAAiB,IAAI,+BAAe;AAAA,IACxC,UAAU,iCAAgB,EAAE,MAC1B,wCAAuB,EAAE,gBAAgB,YAAY,CAAC,CACxD;AAAA,IACA,YAAY,CAAC,IAAI,yCAAyB,kBAAkB,CAAC,CAAC;AAAA,EAChE,CAAC;AAAA,EACD,OAAO,iCAAqB,EAAE,eAAe,CAAC;AAAA;AAIhD,SAAS,iBAAiB,GAAG;AAAA,EAC3B,QACE,IAAI,oCAAoC,6BAA6B;AAAA,SAEhE;AAAA,MACH,OAAO,IAAI;AAAA,SACR;AAAA,MACH,OAAO,IAAI;AAAA;AAAA,MAEX,OAAO,IAAI;AAAA;AAAA;AAIjB,SAAS,GAAG,IAAI,OAAqC;AAAA,EAEnD,OAAO,MAAM,IAAI,CAAC,SAAS,QAAQ,IAAI,KAAK,EAAE,KAAK,OAAO;AAAA;",
8
+ "debugId": "5988BC3DEE98F43864756E2164756E21",
9
9
  "names": []
10
10
  }
package/src/index.js CHANGED
@@ -48,7 +48,7 @@ function createLogExporter() {
48
48
  function env(...names) {
49
49
  return names.map((name) => process.env[name]).find(Boolean);
50
50
  }
51
- export { startTracing, getLogSink };
51
+ export { getLogSink, startTracing };
52
52
 
53
- //# debugId=0412FC55ED961EDC64756E2164756E21
53
+ //# debugId=7D47D2EFB105F0F164756E2164756E21
54
54
  //# sourceMappingURL=index.js.map
package/src/index.js.map CHANGED
@@ -2,9 +2,9 @@
2
2
  "version": 3,
3
3
  "sources": ["../../telemetry/src/index.ts"],
4
4
  "sourcesContent": [
5
- "// OpenTelemetry exporters of Alumnium traces and logs. `@alumnium/core` loads\n// this package when tracing is enabled (`ALUMNIUM_TRACE=true`), so installs\n// without tracing skip the OpenTelemetry SDK.\n\nimport type { Sink } from \"@logtape/logtape\";\nimport { getOpenTelemetrySink } from \"@logtape/otel\";\nimport { OTLPLogExporter as GrpcLogExporter } from \"@opentelemetry/exporter-logs-otlp-grpc\";\nimport { OTLPLogExporter as HttpLogExporter } from \"@opentelemetry/exporter-logs-otlp-http\";\nimport { OTLPLogExporter as ProtoLogExporter } from \"@opentelemetry/exporter-logs-otlp-proto\";\nimport { OTLPTraceExporter } from \"@opentelemetry/exporter-trace-otlp-http\";\nimport {\n defaultResource,\n resourceFromAttributes,\n} from \"@opentelemetry/resources\";\nimport {\n LoggerProvider,\n SimpleLogRecordProcessor,\n} from \"@opentelemetry/sdk-logs\";\nimport { BatchSpanProcessor } from \"@opentelemetry/sdk-trace-base\";\nimport { NodeTracerProvider } from \"@opentelemetry/sdk-trace-node\";\n\nexport interface Tracing {\n /** Exports the pending spans. */\n flush(): Promise<void>;\n}\n\n/**\n * Registers the global tracer provider, exporting spans over OTLP as\n * configured by the standard `OTEL_*` environment variables.\n */\nexport function startTracing(serviceName: string): Tracing {\n const provider = new NodeTracerProvider({\n resource: resourceFromAttributes({ \"service.name\": serviceName }),\n spanProcessors: [new BatchSpanProcessor(new OTLPTraceExporter())],\n });\n provider.register();\n return { flush: () => provider.forceFlush() };\n}\n\n/**\n * Creates a LogTape sink exporting logs over OTLP, when an OTLP endpoint is\n * configured.\n */\nexport function getLogSink(serviceName: string): Sink {\n // NOTE: The exporter is created here rather than by `@logtape/otel`, which\n // imports it by a dynamic specifier the Bun compiler can't bundle.\n if (!env(\"OTEL_EXPORTER_OTLP_LOGS_ENDPOINT\", \"OTEL_EXPORTER_OTLP_ENDPOINT\"))\n return () => {};\n const loggerProvider = new LoggerProvider({\n resource: defaultResource().merge(\n resourceFromAttributes({ \"service.name\": serviceName }),\n ),\n processors: [new SimpleLogRecordProcessor(createLogExporter())],\n });\n return getOpenTelemetrySink({ loggerProvider });\n}\n\n/** Creates the log exporter for the configured OTLP protocol. */\nfunction createLogExporter() {\n switch (\n env(\"OTEL_EXPORTER_OTLP_LOGS_PROTOCOL\", \"OTEL_EXPORTER_OTLP_PROTOCOL\")\n ) {\n case \"grpc\":\n return new GrpcLogExporter();\n case \"http/protobuf\":\n return new ProtoLogExporter();\n default:\n return new HttpLogExporter();\n }\n}\n\nfunction env(...names: string[]): string | undefined {\n return names.map((name) => process.env[name]).find(Boolean);\n}\n"
5
+ "import type { Sink } from \"@logtape/logtape\";\nimport { getOpenTelemetrySink } from \"@logtape/otel\";\nimport { OTLPLogExporter as GrpcLogExporter } from \"@opentelemetry/exporter-logs-otlp-grpc\";\nimport { OTLPLogExporter as HttpLogExporter } from \"@opentelemetry/exporter-logs-otlp-http\";\nimport { OTLPLogExporter as ProtoLogExporter } from \"@opentelemetry/exporter-logs-otlp-proto\";\nimport { OTLPTraceExporter } from \"@opentelemetry/exporter-trace-otlp-http\";\nimport {\n defaultResource,\n resourceFromAttributes,\n} from \"@opentelemetry/resources\";\nimport {\n LoggerProvider,\n SimpleLogRecordProcessor,\n} from \"@opentelemetry/sdk-logs\";\nimport { BatchSpanProcessor } from \"@opentelemetry/sdk-trace-base\";\nimport { NodeTracerProvider } from \"@opentelemetry/sdk-trace-node\";\n\nexport interface Tracing {\n /** Exports the pending spans. */\n flush(): Promise<void>;\n}\n\n/**\n * Registers the global tracer provider, exporting spans over OTLP as\n * configured by the standard `OTEL_*` environment variables.\n */\nexport function startTracing(serviceName: string): Tracing {\n const provider = new NodeTracerProvider({\n resource: resourceFromAttributes({ \"service.name\": serviceName }),\n spanProcessors: [new BatchSpanProcessor(new OTLPTraceExporter())],\n });\n provider.register();\n return { flush: () => provider.forceFlush() };\n}\n\n/**\n * Creates a LogTape sink exporting logs over OTLP, when an OTLP endpoint is\n * configured.\n */\nexport function getLogSink(serviceName: string): Sink {\n // NOTE: The exporter is created here rather than by `@logtape/otel`, which\n // imports it by a dynamic specifier the Bun compiler can't bundle.\n if (!env(\"OTEL_EXPORTER_OTLP_LOGS_ENDPOINT\", \"OTEL_EXPORTER_OTLP_ENDPOINT\"))\n return () => {};\n const loggerProvider = new LoggerProvider({\n resource: defaultResource().merge(\n resourceFromAttributes({ \"service.name\": serviceName }),\n ),\n processors: [new SimpleLogRecordProcessor(createLogExporter())],\n });\n return getOpenTelemetrySink({ loggerProvider });\n}\n\n/** Creates the log exporter for the configured OTLP protocol. */\nfunction createLogExporter() {\n switch (\n env(\"OTEL_EXPORTER_OTLP_LOGS_PROTOCOL\", \"OTEL_EXPORTER_OTLP_PROTOCOL\")\n ) {\n case \"grpc\":\n return new GrpcLogExporter();\n case \"http/protobuf\":\n return new ProtoLogExporter();\n default:\n return new HttpLogExporter();\n }\n}\n\nfunction env(...names: string[]): string | undefined {\n // oxlint-disable-next-line no-process-env -- Reads the standard OTEL_* vars like the OpenTelemetry SDK, as this package doesn't depend on core's Env\n return names.map((name) => process.env[name]).find(Boolean);\n}\n"
6
6
  ],
7
- "mappings": ";AAKA;AACA,4BAAS;AACT,4BAAS;AACT,4BAAS;AACT;AACA;AAAA;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAIA;AACA;AAWO,SAAS,YAAY,CAAC,aAA8B;AAAA,EACzD,MAAM,WAAW,IAAI,mBAAmB;AAAA,IACtC,UAAU,uBAAuB,EAAE,gBAAgB,YAAY,CAAC;AAAA,IAChE,gBAAgB,CAAC,IAAI,mBAAmB,IAAI,iBAAmB,CAAC;AAAA,EAClE,CAAC;AAAA,EACD,SAAS,SAAS;AAAA,EAClB,OAAO,EAAE,OAAO,MAAM,SAAS,WAAW,EAAE;AAAA;AAOvC,SAAS,UAAU,CAAC,aAA2B;AAAA,EAGpD,IAAI,CAAC,IAAI,oCAAoC,6BAA6B;AAAA,IACxE,OAAO,MAAM;AAAA,EACf,MAAM,iBAAiB,IAAI,eAAe;AAAA,IACxC,UAAU,gBAAgB,EAAE,MAC1B,uBAAuB,EAAE,gBAAgB,YAAY,CAAC,CACxD;AAAA,IACA,YAAY,CAAC,IAAI,yBAAyB,kBAAkB,CAAC,CAAC;AAAA,EAChE,CAAC;AAAA,EACD,OAAO,qBAAqB,EAAE,eAAe,CAAC;AAAA;AAIhD,SAAS,iBAAiB,GAAG;AAAA,EAC3B,QACE,IAAI,oCAAoC,6BAA6B;AAAA,SAEhE;AAAA,MACH,OAAO,IAAI;AAAA,SACR;AAAA,MACH,OAAO,IAAI;AAAA;AAAA,MAEX,OAAO,IAAI;AAAA;AAAA;AAIjB,SAAS,GAAG,IAAI,OAAqC;AAAA,EACnD,OAAO,MAAM,IAAI,CAAC,SAAS,QAAQ,IAAI,KAAK,EAAE,KAAK,OAAO;AAAA;",
8
- "debugId": "0412FC55ED961EDC64756E2164756E21",
7
+ "mappings": ";AACA;AACA,4BAAS;AACT,4BAAS;AACT,4BAAS;AACT;AACA;AAAA;AAAA;AAAA;AAIA;AAAA;AAAA;AAAA;AAIA;AACA;AAWO,SAAS,YAAY,CAAC,aAA8B;AAAA,EACzD,MAAM,WAAW,IAAI,mBAAmB;AAAA,IACtC,UAAU,uBAAuB,EAAE,gBAAgB,YAAY,CAAC;AAAA,IAChE,gBAAgB,CAAC,IAAI,mBAAmB,IAAI,iBAAmB,CAAC;AAAA,EAClE,CAAC;AAAA,EACD,SAAS,SAAS;AAAA,EAClB,OAAO,EAAE,OAAO,MAAM,SAAS,WAAW,EAAE;AAAA;AAOvC,SAAS,UAAU,CAAC,aAA2B;AAAA,EAGpD,IAAI,CAAC,IAAI,oCAAoC,6BAA6B;AAAA,IACxE,OAAO,MAAM;AAAA,EACf,MAAM,iBAAiB,IAAI,eAAe;AAAA,IACxC,UAAU,gBAAgB,EAAE,MAC1B,uBAAuB,EAAE,gBAAgB,YAAY,CAAC,CACxD;AAAA,IACA,YAAY,CAAC,IAAI,yBAAyB,kBAAkB,CAAC,CAAC;AAAA,EAChE,CAAC;AAAA,EACD,OAAO,qBAAqB,EAAE,eAAe,CAAC;AAAA;AAIhD,SAAS,iBAAiB,GAAG;AAAA,EAC3B,QACE,IAAI,oCAAoC,6BAA6B;AAAA,SAEhE;AAAA,MACH,OAAO,IAAI;AAAA,SACR;AAAA,MACH,OAAO,IAAI;AAAA;AAAA,MAEX,OAAO,IAAI;AAAA;AAAA;AAIjB,SAAS,GAAG,IAAI,OAAqC;AAAA,EAEnD,OAAO,MAAM,IAAI,CAAC,SAAS,QAAQ,IAAI,KAAK,EAAE,KAAK,OAAO;AAAA;",
8
+ "debugId": "7D47D2EFB105F0F164756E2164756E21",
9
9
  "names": []
10
10
  }