openlit 1.6.0 → 1.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/README.md +19 -1
  2. package/dist/helpers.js +8 -4
  3. package/dist/helpers.js.map +1 -1
  4. package/dist/index.d.ts +2 -2
  5. package/dist/index.js +19 -6
  6. package/dist/index.js.map +1 -1
  7. package/dist/instrumentation/__tests__/anthropic-wrapper.test.d.ts +1 -0
  8. package/dist/instrumentation/__tests__/anthropic-wrapper.test.js +92 -0
  9. package/dist/instrumentation/__tests__/anthropic-wrapper.test.js.map +1 -0
  10. package/dist/instrumentation/__tests__/base-wrapper.test.d.ts +1 -0
  11. package/dist/instrumentation/__tests__/base-wrapper.test.js +175 -0
  12. package/dist/instrumentation/__tests__/base-wrapper.test.js.map +1 -0
  13. package/dist/instrumentation/__tests__/cohere-wrapper.test.d.ts +1 -0
  14. package/dist/instrumentation/__tests__/cohere-wrapper.test.js +131 -0
  15. package/dist/instrumentation/__tests__/cohere-wrapper.test.js.map +1 -0
  16. package/dist/instrumentation/__tests__/openai-wrapper.test.d.ts +1 -0
  17. package/dist/instrumentation/__tests__/openai-wrapper.test.js +181 -0
  18. package/dist/instrumentation/__tests__/openai-wrapper.test.js.map +1 -0
  19. package/dist/instrumentation/anthropic/wrapper.d.ts +7 -1
  20. package/dist/instrumentation/anthropic/wrapper.js +16 -1
  21. package/dist/instrumentation/anthropic/wrapper.js.map +1 -1
  22. package/dist/instrumentation/base-wrapper.d.ts +3 -2
  23. package/dist/instrumentation/base-wrapper.js +81 -1
  24. package/dist/instrumentation/base-wrapper.js.map +1 -1
  25. package/dist/instrumentation/cohere/wrapper.d.ts +7 -1
  26. package/dist/instrumentation/cohere/wrapper.js +19 -2
  27. package/dist/instrumentation/cohere/wrapper.js.map +1 -1
  28. package/dist/instrumentation/ollama/wrapper.d.ts +2 -1
  29. package/dist/instrumentation/ollama/wrapper.js +2 -2
  30. package/dist/instrumentation/ollama/wrapper.js.map +1 -1
  31. package/dist/instrumentation/openai/index.js +11 -0
  32. package/dist/instrumentation/openai/index.js.map +1 -1
  33. package/dist/instrumentation/openai/wrapper.d.ts +39 -3
  34. package/dist/instrumentation/openai/wrapper.js +537 -26
  35. package/dist/instrumentation/openai/wrapper.js.map +1 -1
  36. package/dist/otel/__tests__/metrics.test.d.ts +1 -0
  37. package/dist/otel/__tests__/metrics.test.js +51 -0
  38. package/dist/otel/__tests__/metrics.test.js.map +1 -0
  39. package/dist/otel/metrics.d.ts +22 -0
  40. package/dist/otel/metrics.js +132 -0
  41. package/dist/otel/metrics.js.map +1 -0
  42. package/dist/{tracing.d.ts → otel/tracing.d.ts} +1 -1
  43. package/dist/{tracing.js → otel/tracing.js} +17 -15
  44. package/dist/otel/tracing.js.map +1 -0
  45. package/dist/semantic-convention.d.ts +36 -0
  46. package/dist/semantic-convention.js +53 -11
  47. package/dist/semantic-convention.js.map +1 -1
  48. package/dist/types.d.ts +7 -0
  49. package/package.json +10 -11
  50. package/dist/tracing.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"wrapper.js","sourceRoot":"","sources":["../../../src/instrumentation/openai/wrapper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wrapper.js","sourceRoot":"","sources":["../../../src/instrumentation/openai/wrapper.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const metrics_1 = __importDefault(require("../metrics"));
7
+ const semantic_convention_1 = __importDefault(require("../../semantic-convention"));
8
+ const resources_1 = require("@opentelemetry/resources");
9
+ const sdk_metrics_1 = require("@opentelemetry/sdk-metrics");
10
+ describe('Metrics creation', () => {
11
+ beforeEach(() => {
12
+ metrics_1.default.setup({ resource: (0, resources_1.defaultResource)(), otlpEndpoint: 'http://localhost:4318' }); // Ensure metrics are initialized
13
+ });
14
+ it('should create genaiRequests counter and allow increment', () => {
15
+ expect(metrics_1.default.genaiRequests).toBeDefined();
16
+ expect(typeof metrics_1.default.genaiRequests.add).toBe('function');
17
+ expect(() => metrics_1.default.genaiRequests.add(1, { [semantic_convention_1.default.GEN_AI_SYSTEM]: 'openai' })).not.toThrow();
18
+ });
19
+ it('should create genaiPromptTokens counter and allow increment', () => {
20
+ expect(metrics_1.default.genaiPromptTokens).toBeDefined();
21
+ expect(typeof metrics_1.default.genaiPromptTokens.add).toBe('function');
22
+ expect(() => metrics_1.default.genaiPromptTokens.add(42, { [semantic_convention_1.default.GEN_AI_SYSTEM]: 'openai' })).not.toThrow();
23
+ });
24
+ it('should create genaiCompletionTokens counter and allow increment', () => {
25
+ expect(metrics_1.default.genaiCompletionTokens).toBeDefined();
26
+ expect(typeof metrics_1.default.genaiCompletionTokens.add).toBe('function');
27
+ expect(() => metrics_1.default.genaiCompletionTokens.add(24, { [semantic_convention_1.default.GEN_AI_SYSTEM]: 'openai' })).not.toThrow();
28
+ });
29
+ it('should create genaiClientOperationDuration histogram and allow record', () => {
30
+ expect(metrics_1.default.genaiClientOperationDuration).toBeDefined();
31
+ expect(typeof metrics_1.default.genaiClientOperationDuration.record).toBe('function');
32
+ expect(() => metrics_1.default.genaiClientOperationDuration.record(1.23, { [semantic_convention_1.default.GEN_AI_SYSTEM]: 'openai' })).not.toThrow();
33
+ });
34
+ it('should create genaiCost histogram and allow record', () => {
35
+ expect(metrics_1.default.genaiCost).toBeDefined();
36
+ expect(typeof metrics_1.default.genaiCost.record).toBe('function');
37
+ expect(() => metrics_1.default.genaiCost.record(0.99, { [semantic_convention_1.default.GEN_AI_SYSTEM]: 'openai' })).not.toThrow();
38
+ });
39
+ it('should throw an error when allowConsoleExporterFallback is not set and fallback is required', () => {
40
+ expect(() => {
41
+ metrics_1.default.handleExporterFallback(new Error('Simulated OTLPMetricExporter failure'), false);
42
+ }).toThrow('[Metrics] Failed to initialize OTLPMetricExporter and fallback to ConsoleMetricExporter is disabled. Set allowConsoleExporterFallback=true to enable fallback (not recommended for production).');
43
+ });
44
+ it('should use ConsoleMetricExporter when allowConsoleExporterFallback is set to true', () => {
45
+ expect(() => {
46
+ const exporter = metrics_1.default.handleExporterFallback(new Error('Simulated OTLPMetricExporter failure'), true);
47
+ expect(exporter).toBeInstanceOf(sdk_metrics_1.ConsoleMetricExporter);
48
+ }).not.toThrow();
49
+ });
50
+ });
51
+ //# sourceMappingURL=metrics.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metrics.test.js","sourceRoot":"","sources":["../../../src/otel/__tests__/metrics.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import { MeterProvider, PeriodicExportingMetricReader, ConsoleMetricExporter } from '@opentelemetry/sdk-metrics';
2
+ import { metrics } from '@opentelemetry/api';
3
+ import { SetupMetricsOptions } from '../types';
4
+ export default class Metrics {
5
+ static meterProvider: MeterProvider;
6
+ static meter: ReturnType<typeof metrics.getMeter>;
7
+ static metricReaders: PeriodicExportingMetricReader[];
8
+ static genaiClientUsageTokens: ReturnType<ReturnType<typeof metrics.getMeter>['createHistogram']>;
9
+ static genaiClientOperationDuration: ReturnType<ReturnType<typeof metrics.getMeter>['createHistogram']>;
10
+ static genaiServerTbt: ReturnType<ReturnType<typeof metrics.getMeter>['createHistogram']>;
11
+ static genaiServerTtft: ReturnType<ReturnType<typeof metrics.getMeter>['createHistogram']>;
12
+ static dbClientOperationDuration: ReturnType<ReturnType<typeof metrics.getMeter>['createHistogram']>;
13
+ static genaiRequests: ReturnType<ReturnType<typeof metrics.getMeter>['createCounter']>;
14
+ static genaiPromptTokens: ReturnType<ReturnType<typeof metrics.getMeter>['createCounter']>;
15
+ static genaiCompletionTokens: ReturnType<ReturnType<typeof metrics.getMeter>['createCounter']>;
16
+ static genaiReasoningTokens: ReturnType<ReturnType<typeof metrics.getMeter>['createCounter']>;
17
+ static genaiCost: ReturnType<ReturnType<typeof metrics.getMeter>['createHistogram']>;
18
+ static dbRequests: ReturnType<ReturnType<typeof metrics.getMeter>['createCounter']>;
19
+ static initializeMetrics(): void;
20
+ static handleExporterFallback(err: Error, allowConsoleExporterFallback: boolean): ConsoleMetricExporter;
21
+ static setup(options: SetupMetricsOptions): import("@opentelemetry/api").Meter | null;
22
+ }
@@ -0,0 +1,132 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const sdk_metrics_1 = require("@opentelemetry/sdk-metrics");
7
+ const api_1 = require("@opentelemetry/api");
8
+ const semantic_convention_1 = __importDefault(require("../semantic-convention"));
9
+ const exporter_metrics_otlp_http_1 = require("@opentelemetry/exporter-metrics-otlp-http");
10
+ const DB_CLIENT_OPERATION_DURATION_BUCKETS = [0.001, 0.005, 0.01, 0.05, 0.1, 0.5, 1, 5, 10];
11
+ const GEN_AI_CLIENT_OPERATION_DURATION_BUCKETS = [
12
+ 0.01, 0.02, 0.04, 0.08, 0.16, 0.32, 0.64, 1.28, 2.56, 5.12, 10.24, 20.48, 40.96, 81.92,
13
+ ];
14
+ const GEN_AI_SERVER_TBT = [0.01, 0.025, 0.05, 0.075, 0.1, 0.15, 0.2, 0.3, 0.4, 0.5, 0.75, 1.0, 2.5];
15
+ const GEN_AI_SERVER_TFTT = [
16
+ 0.001, 0.005, 0.01, 0.02, 0.04, 0.06, 0.08, 0.1, 0.25, 0.5, 0.75, 1.0, 2.5, 5.0, 7.5, 10.0,
17
+ ];
18
+ const GEN_AI_CLIENT_TOKEN_USAGE_BUCKETS = [
19
+ 1, 4, 16, 64, 256, 1024, 4096, 16384, 65536, 262144, 1048576, 4194304, 16777216, 67108864,
20
+ ];
21
+ class Metrics {
22
+ static initializeMetrics() {
23
+ this.genaiClientUsageTokens = this.meter.createHistogram(semantic_convention_1.default.GEN_AI_USAGE_TOTAL_TOKENS, {
24
+ description: 'Measures number of input and output tokens used',
25
+ unit: '{token}',
26
+ advice: {
27
+ explicitBucketBoundaries: GEN_AI_CLIENT_TOKEN_USAGE_BUCKETS,
28
+ },
29
+ });
30
+ this.genaiClientOperationDuration = this.meter.createHistogram(semantic_convention_1.default.GEN_AI_CLIENT_OPERATION_DURATION, {
31
+ description: 'GenAI operation duration',
32
+ unit: 's',
33
+ advice: {
34
+ explicitBucketBoundaries: GEN_AI_CLIENT_OPERATION_DURATION_BUCKETS,
35
+ },
36
+ });
37
+ this.genaiServerTbt = this.meter.createHistogram(semantic_convention_1.default.GEN_AI_SERVER_TBT, {
38
+ description: 'Time per output token generated after the first token for successful responses',
39
+ unit: 's',
40
+ advice: {
41
+ explicitBucketBoundaries: GEN_AI_SERVER_TBT,
42
+ },
43
+ });
44
+ this.genaiServerTtft = this.meter.createHistogram(semantic_convention_1.default.GEN_AI_SERVER_TTFT, {
45
+ description: 'Time to generate first token for successful responses',
46
+ unit: 's',
47
+ advice: {
48
+ explicitBucketBoundaries: GEN_AI_SERVER_TFTT,
49
+ },
50
+ });
51
+ this.dbClientOperationDuration = this.meter.createHistogram(semantic_convention_1.default.DB_CLIENT_OPERATION_DURATION, {
52
+ description: 'DB operation duration',
53
+ unit: 's',
54
+ advice: {
55
+ explicitBucketBoundaries: DB_CLIENT_OPERATION_DURATION_BUCKETS,
56
+ },
57
+ });
58
+ this.genaiRequests = this.meter.createCounter(semantic_convention_1.default.GEN_AI_REQUESTS, {
59
+ description: 'Number of requests to GenAI',
60
+ unit: '1',
61
+ });
62
+ this.genaiPromptTokens = this.meter.createCounter(semantic_convention_1.default.GEN_AI_USAGE_INPUT_TOKENS, {
63
+ description: 'Number of prompt tokens processed.',
64
+ unit: '1',
65
+ });
66
+ this.genaiCompletionTokens = this.meter.createCounter(semantic_convention_1.default.GEN_AI_USAGE_OUTPUT_TOKENS, {
67
+ description: 'Number of completion tokens processed.',
68
+ unit: '1',
69
+ });
70
+ this.genaiReasoningTokens = this.meter.createCounter(semantic_convention_1.default.GEN_AI_USAGE_REASONING_TOKENS, {
71
+ description: 'Number of reasoning thought tokens processed.',
72
+ unit: '1',
73
+ });
74
+ this.genaiCost = this.meter.createHistogram(semantic_convention_1.default.GEN_AI_USAGE_COST, {
75
+ description: 'The distribution of GenAI request costs.',
76
+ unit: 'USD',
77
+ });
78
+ this.dbRequests = this.meter.createCounter(semantic_convention_1.default.DB_REQUESTS, {
79
+ description: 'Number of requests to VectorDBs.',
80
+ unit: '1',
81
+ });
82
+ }
83
+ static handleExporterFallback(err, allowConsoleExporterFallback) {
84
+ if (allowConsoleExporterFallback) {
85
+ console.warn('[Metrics] Falling back to ConsoleMetricExporter. WARNING: ConsoleMetricExporter may expose sensitive data in logs. Do NOT use in production!', err);
86
+ return new sdk_metrics_1.ConsoleMetricExporter();
87
+ }
88
+ else {
89
+ throw new Error('[Metrics] Failed to initialize OTLPMetricExporter and fallback to ConsoleMetricExporter is disabled. Set allowConsoleExporterFallback=true to enable fallback (not recommended for production).');
90
+ }
91
+ }
92
+ static setup(options) {
93
+ if (options.meter) {
94
+ this.meter = options.meter;
95
+ this.initializeMetrics();
96
+ return this.meter;
97
+ }
98
+ try {
99
+ let metricExporter;
100
+ try {
101
+ const url = options.otlpEndpoint + '/v1/metrics';
102
+ metricExporter = new exporter_metrics_otlp_http_1.OTLPMetricExporter({
103
+ url,
104
+ headers: options.otlpHeaders,
105
+ });
106
+ }
107
+ catch (err) {
108
+ metricExporter = this.handleExporterFallback(err, options.allowConsoleExporterFallback ?? false);
109
+ }
110
+ const metricReader = new sdk_metrics_1.PeriodicExportingMetricReader({
111
+ exportIntervalMillis: options.exportIntervalMillis || 60000,
112
+ exporter: metricExporter,
113
+ });
114
+ this.meterProvider = new sdk_metrics_1.MeterProvider({
115
+ resource: options.resource,
116
+ readers: [metricReader],
117
+ });
118
+ api_1.metrics.setGlobalMeterProvider(this.meterProvider);
119
+ this.meter = this.meterProvider.getMeter('openlit', '1.0.0');
120
+ this.metricReaders.push(metricReader);
121
+ this.initializeMetrics();
122
+ return this.meter;
123
+ }
124
+ catch (e) {
125
+ console.error('[Metrics] Failed to initialize metrics:', e);
126
+ return null;
127
+ }
128
+ }
129
+ }
130
+ Metrics.metricReaders = [];
131
+ exports.default = Metrics;
132
+ //# sourceMappingURL=metrics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../src/otel/metrics.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { SetupTracerOptions } from './types';
1
+ import { SetupTracerOptions } from '../types';
2
2
  import { NodeTracerProvider } from '@opentelemetry/sdk-trace-node';
3
3
  import { OTLPTraceExporter } from '@opentelemetry/exporter-trace-otlp-http';
4
4
  export default class Tracing {
@@ -5,37 +5,39 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const sdk_trace_node_1 = require("@opentelemetry/sdk-trace-node");
7
7
  const exporter_trace_otlp_http_1 = require("@opentelemetry/exporter-trace-otlp-http");
8
- const instrumentation_1 = __importDefault(require("./instrumentation"));
9
- const config_1 = __importDefault(require("./config"));
8
+ const instrumentation_1 = __importDefault(require("../instrumentation"));
9
+ const config_1 = __importDefault(require("../config"));
10
10
  class Tracing {
11
11
  static async setup(options) {
12
12
  if (options.tracer)
13
13
  return options.tracer;
14
14
  try {
15
+ const consoleSpanExporter = new sdk_trace_node_1.ConsoleSpanExporter();
16
+ const url = options.otlpEndpoint + "/v1/traces";
17
+ const otlpTraceExporter = new exporter_trace_otlp_http_1.OTLPTraceExporter({
18
+ url,
19
+ headers: options.otlpHeaders,
20
+ });
21
+ const spanProcessors = [
22
+ new sdk_trace_node_1.SimpleSpanProcessor(consoleSpanExporter),
23
+ options.disableBatch
24
+ ? new sdk_trace_node_1.SimpleSpanProcessor(otlpTraceExporter)
25
+ : new sdk_trace_node_1.BatchSpanProcessor(otlpTraceExporter),
26
+ ];
15
27
  this.traceProvider = new sdk_trace_node_1.NodeTracerProvider({
16
28
  resource: options.resource,
29
+ spanProcessors,
17
30
  });
18
31
  config_1.default.updateConfig({
19
32
  ...options,
20
33
  tracer: options.tracer || Tracing.traceProvider,
21
34
  });
22
35
  instrumentation_1.default.setup(Tracing.traceProvider, options?.disabledInstrumentations, options?.instrumentations);
23
- const consoleSpanExporter = new sdk_trace_node_1.ConsoleSpanExporter();
24
- // Adding span to console
25
- this.traceProvider.addSpanProcessor(new sdk_trace_node_1.SimpleSpanProcessor(consoleSpanExporter));
26
- this.traceExporter = new exporter_trace_otlp_http_1.OTLPTraceExporter({
27
- url: options.otlpEndpoint,
28
- headers: options.otlpHeaders,
29
- });
30
- if (options.disableBatch) {
31
- this.traceProvider.addSpanProcessor(new sdk_trace_node_1.SimpleSpanProcessor(this.traceExporter));
32
- }
33
- else {
34
- this.traceProvider.addSpanProcessor(new sdk_trace_node_1.BatchSpanProcessor(this.traceExporter));
35
- }
36
+ this.traceExporter = otlpTraceExporter;
36
37
  this.traceProvider.register();
37
38
  }
38
39
  catch (e) {
40
+ console.error('[Traces] Failed to initialize traces:', e);
39
41
  return null;
40
42
  }
41
43
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tracing.js","sourceRoot":"","sources":["../../src/otel/tracing.ts"],"names":[],"mappings":";;;;;AACA,kEAMuC;AACvC,sFAA4E;AAE5E,yEAAkD;AAClD,uDAAsC;AAEtC,MAAqB,OAAO;IAG1B,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,OAA2B;QAC5C,IAAI,OAAO,CAAC,MAAM;YAAE,OAAO,OAAO,CAAC,MAAM,CAAC;QAC1C,IAAI,CAAC;YACH,MAAM,mBAAmB,GAAG,IAAI,oCAAmB,EAAE,CAAC;YACtD,MAAM,GAAG,GAAG,OAAO,CAAC,YAAY,GAAG,YAAY,CAAC;YAChD,MAAM,iBAAiB,GAAG,IAAI,4CAAiB,CAAC;gBAC9C,GAAG;gBACH,OAAO,EAAE,OAAO,CAAC,WAAiD;aACnE,CAAC,CAAC;YAEH,MAAM,cAAc,GAAG;gBACrB,IAAI,oCAAmB,CAAC,mBAAmB,CAAC;gBAC5C,OAAO,CAAC,YAAY;oBAClB,CAAC,CAAC,IAAI,oCAAmB,CAAC,iBAAiC,CAAC;oBAC5D,CAAC,CAAC,IAAI,mCAAkB,CAAC,iBAAiC,CAAC;aAC9D,CAAC;YAEF,IAAI,CAAC,aAAa,GAAG,IAAI,mCAAkB,CAAC;gBAC1C,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,cAAc;aACf,CAAC,CAAC;YAEH,gBAAa,CAAC,YAAY,CAAC;gBACzB,GAAG,OAAO;gBACV,MAAM,EAAE,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,aAAa;aAChD,CAAC,CAAC;YAEH,yBAAgB,CAAC,KAAK,CACpB,OAAO,CAAC,aAAa,EACrB,OAAO,EAAE,wBAAwB,EACjC,OAAO,EAAE,gBAAgB,CAC1B,CAAC;YAEF,IAAI,CAAC,aAAa,GAAG,iBAAiB,CAAC;YAEvC,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;QAChC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,uCAAuC,EAAE,CAAC,CAAC,CAAC;YAC1D,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;CACF;AA5CD,0BA4CC"}
@@ -1,4 +1,5 @@
1
1
  export default class SemanticConvention {
2
+ static ATTR_DEPLOYMENT_ENVIRONMENT: string;
2
3
  static GEN_AI_ENDPOINT: string;
3
4
  static GEN_AI_SYSTEM: string;
4
5
  static GEN_AI_ENVIRONMENT: string;
@@ -8,6 +9,8 @@ export default class SemanticConvention {
8
9
  static GEN_AI_HUB_REPO: string;
9
10
  static GEN_AI_RETRIEVAL_SOURCE: string;
10
11
  static GEN_AI_REQUESTS: string;
12
+ static GEN_AI_SDK_VERSION: string;
13
+ static GEN_AI_OUTPUT_TYPE: string;
11
14
  static GEN_AI_REQUEST_MODEL: string;
12
15
  static GEN_AI_REQUEST_TEMPERATURE: string;
13
16
  static GEN_AI_REQUEST_TOP_P: string;
@@ -18,6 +21,7 @@ export default class SemanticConvention {
18
21
  static GEN_AI_REQUEST_SEED: string;
19
22
  static GEN_AI_REQUEST_FREQUENCY_PENALTY: string;
20
23
  static GEN_AI_REQUEST_PRESENCE_PENALTY: string;
24
+ static GEN_AI_REQUEST_STOP_SEQUENCES: string;
21
25
  static GEN_AI_REQUEST_ENCODING_FORMATS: string;
22
26
  static GEN_AI_REQUEST_EMBEDDING_DIMENSION: string;
23
27
  static GEN_AI_REQUEST_TOOL_CHOICE: string;
@@ -38,15 +42,35 @@ export default class SemanticConvention {
38
42
  static GEN_AI_USAGE_OUTPUT_TOKENS: string;
39
43
  static GEN_AI_USAGE_TOTAL_TOKENS: string;
40
44
  static GEN_AI_USAGE_COST: string;
45
+ static GEN_AI_USAGE_REASONING_TOKENS: string;
46
+ static GEN_AI_USAGE_COMPLETION_TOKENS_DETAILS_AUDIO: string;
47
+ static GEN_AI_USAGE_COMPLETION_TOKENS_DETAILS_REASONING: string;
48
+ static GEN_AI_USAGE_PROMPT_TOKENS_DETAILS_CACHE_READ: string;
49
+ static GEN_AI_USAGE_PROMPT_TOKENS_DETAILS_CACHE_WRITE: string;
41
50
  static GEN_AI_RESPONSE_ID: string;
51
+ static GEN_AI_RESPONSE_MODEL: string;
42
52
  static GEN_AI_RESPONSE_FINISH_REASON: string;
43
53
  static GEN_AI_RESPONSE_IMAGE: string;
44
54
  static GEN_AI_RESPONSE_IMAGE_SIZE: string;
45
55
  static GEN_AI_RESPONSE_IMAGE_QUALITY: string;
46
56
  static GEN_AI_RESPONSE_IMAGE_STYLE: string;
57
+ static GEN_AI_REQUEST_SERVICE_TIER: string;
58
+ static GEN_AI_RESPONSE_SERVICE_TIER: string;
59
+ static GEN_AI_RESPONSE_SYSTEM_FINGERPRINT: string;
47
60
  static GEN_AI_CONTENT_PROMPT: string;
61
+ static GEN_AI_CONTENT_PROMPT_EVENT: string;
48
62
  static GEN_AI_CONTENT_COMPLETION: string;
63
+ static GEN_AI_CONTENT_COMPLETION_EVENT: string;
49
64
  static GEN_AI_CONTENT_REVISED_PROMPT: string;
65
+ static GEN_AI_TOOL_NAME: string;
66
+ static GEN_AI_TOOL_TYPE: string;
67
+ static GEN_AI_TOOL_DESCRIPTION: string;
68
+ static GEN_AI_TOOL_DEFINITION: string;
69
+ static GEN_AI_TOOL_CALL_ID: string;
70
+ static GEN_AI_TOOL_CALL_ARGUMENTS: string;
71
+ static GEN_AI_TOOL_CALL_RESULT: string;
72
+ static GEN_AI_TOKEN_TYPE: string;
73
+ static GEN_AI_OPERATION_TYPE_TEXT_COMPLETION: string;
50
74
  static GEN_AI_OPERATION_TYPE_CHAT: string;
51
75
  static GEN_AI_OPERATION_TYPE_EMBEDDING: string;
52
76
  static GEN_AI_OPERATION_TYPE_IMAGE: string;
@@ -54,6 +78,10 @@ export default class SemanticConvention {
54
78
  static GEN_AI_OPERATION_TYPE_FINETUNING: string;
55
79
  static GEN_AI_OPERATION_TYPE_VECTORDB: string;
56
80
  static GEN_AI_OPERATION_TYPE_FRAMEWORK: string;
81
+ static GEN_AI_OUTPUT_TYPE_TEXT: string;
82
+ static GEN_AI_OUTPUT_TYPE_JSON: string;
83
+ static GEN_AI_OUTPUT_TYPE_IMAGE: string;
84
+ static GEN_AI_OUTPUT_TYPE_SPEECH: string;
57
85
  static GEN_AI_SYSTEM_HUGGING_FACE: string;
58
86
  static GEN_AI_SYSTEM_OPENAI: string;
59
87
  static GEN_AI_SYSTEM_AZURE_OPENAI: string;
@@ -96,4 +124,12 @@ export default class SemanticConvention {
96
124
  static DB_UPDATE_METADATA: string;
97
125
  static DB_UPDATE_VALUES: string;
98
126
  static DB_UPDATE_ID: string;
127
+ static GEN_AI_CLIENT_OPERATION_DURATION: string;
128
+ static GEN_AI_CLIENT_TOKEN_USAGE: string;
129
+ static GEN_AI_SERVER_TBT: string;
130
+ static GEN_AI_SERVER_TTFT: string;
131
+ static DB_CLIENT_OPERATION_DURATION: string;
132
+ static SERVER_ADDRESS: string;
133
+ static SERVER_PORT: string;
134
+ static ERROR_TYPE: string;
99
135
  }
@@ -2,16 +2,20 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  class SemanticConvention {
4
4
  }
5
+ // Unstable SemConv
6
+ SemanticConvention.ATTR_DEPLOYMENT_ENVIRONMENT = 'deployment.environment';
5
7
  // GenAI General
6
8
  SemanticConvention.GEN_AI_ENDPOINT = 'gen_ai.endpoint';
7
9
  SemanticConvention.GEN_AI_SYSTEM = 'gen_ai.system';
8
10
  SemanticConvention.GEN_AI_ENVIRONMENT = 'gen_ai.environment';
9
11
  SemanticConvention.GEN_AI_APPLICATION_NAME = 'gen_ai.application_name';
10
- SemanticConvention.GEN_AI_OPERATION = 'gen_ai.type';
12
+ SemanticConvention.GEN_AI_OPERATION = 'gen_ai.operation.name';
11
13
  SemanticConvention.GEN_AI_HUB_OWNER = 'gen_ai.hub.owner';
12
14
  SemanticConvention.GEN_AI_HUB_REPO = 'gen_ai.hub.repo';
13
15
  SemanticConvention.GEN_AI_RETRIEVAL_SOURCE = 'gen_ai.retrieval.source';
14
16
  SemanticConvention.GEN_AI_REQUESTS = 'gen_ai.total.requests';
17
+ SemanticConvention.GEN_AI_SDK_VERSION = 'gen_ai.sdk.version';
18
+ SemanticConvention.GEN_AI_OUTPUT_TYPE = 'gen_ai.output.type';
15
19
  // GenAI Request
16
20
  SemanticConvention.GEN_AI_REQUEST_MODEL = 'gen_ai.request.model';
17
21
  SemanticConvention.GEN_AI_REQUEST_TEMPERATURE = 'gen_ai.request.temperature';
@@ -23,7 +27,8 @@ SemanticConvention.GEN_AI_REQUEST_USER = 'gen_ai.request.user';
23
27
  SemanticConvention.GEN_AI_REQUEST_SEED = 'gen_ai.request.seed';
24
28
  SemanticConvention.GEN_AI_REQUEST_FREQUENCY_PENALTY = 'gen_ai.request.frequency_penalty';
25
29
  SemanticConvention.GEN_AI_REQUEST_PRESENCE_PENALTY = 'gen_ai.request.presence_penalty';
26
- SemanticConvention.GEN_AI_REQUEST_ENCODING_FORMATS = 'gen_ai.request.embedding_format';
30
+ SemanticConvention.GEN_AI_REQUEST_STOP_SEQUENCES = 'gen_ai.request.stop_sequences';
31
+ SemanticConvention.GEN_AI_REQUEST_ENCODING_FORMATS = 'gen_ai.request.encoding_formats';
27
32
  SemanticConvention.GEN_AI_REQUEST_EMBEDDING_DIMENSION = 'gen_ai.request.embedding_dimension';
28
33
  SemanticConvention.GEN_AI_REQUEST_TOOL_CHOICE = 'gen_ai.request.tool_choice';
29
34
  SemanticConvention.GEN_AI_REQUEST_AUDIO_VOICE = 'gen_ai.request.audio_voice';
@@ -44,32 +49,60 @@ SemanticConvention.GEN_AI_USAGE_INPUT_TOKENS = 'gen_ai.usage.input_tokens';
44
49
  SemanticConvention.GEN_AI_USAGE_OUTPUT_TOKENS = 'gen_ai.usage.output_tokens';
45
50
  SemanticConvention.GEN_AI_USAGE_TOTAL_TOKENS = 'gen_ai.usage.total_tokens';
46
51
  SemanticConvention.GEN_AI_USAGE_COST = 'gen_ai.usage.cost';
52
+ SemanticConvention.GEN_AI_USAGE_REASONING_TOKENS = 'gen_ai.usage.reasoning_tokens';
53
+ // Enhanced token details (for prompt caching, audio tokens, etc.)
54
+ SemanticConvention.GEN_AI_USAGE_COMPLETION_TOKENS_DETAILS_AUDIO = 'gen_ai.usage.completion_tokens_details.audio';
55
+ SemanticConvention.GEN_AI_USAGE_COMPLETION_TOKENS_DETAILS_REASONING = 'gen_ai.usage.completion_tokens_details.reasoning';
56
+ SemanticConvention.GEN_AI_USAGE_PROMPT_TOKENS_DETAILS_CACHE_READ = 'gen_ai.usage.prompt_tokens_details.cache_read';
57
+ SemanticConvention.GEN_AI_USAGE_PROMPT_TOKENS_DETAILS_CACHE_WRITE = 'gen_ai.usage.prompt_tokens_details.cache_write';
47
58
  // GenAI Response
48
59
  SemanticConvention.GEN_AI_RESPONSE_ID = 'gen_ai.response.id';
49
- SemanticConvention.GEN_AI_RESPONSE_FINISH_REASON = 'gen_ai.response.finish_reason';
50
- SemanticConvention.GEN_AI_RESPONSE_IMAGE = 'gen_ai.response.image'; // Not used directly in code yet
60
+ SemanticConvention.GEN_AI_RESPONSE_MODEL = 'gen_ai.response.model';
61
+ SemanticConvention.GEN_AI_RESPONSE_FINISH_REASON = 'gen_ai.response.finish_reasons';
62
+ SemanticConvention.GEN_AI_RESPONSE_IMAGE = 'gen_ai.response.image';
51
63
  SemanticConvention.GEN_AI_RESPONSE_IMAGE_SIZE = 'gen_ai.request.image_size';
52
64
  SemanticConvention.GEN_AI_RESPONSE_IMAGE_QUALITY = 'gen_ai.request.image_quality';
53
65
  SemanticConvention.GEN_AI_RESPONSE_IMAGE_STYLE = 'gen_ai.request.image_style';
66
+ // OpenAI-specific attributes
67
+ SemanticConvention.GEN_AI_REQUEST_SERVICE_TIER = 'gen_ai.request.service_tier';
68
+ SemanticConvention.GEN_AI_RESPONSE_SERVICE_TIER = 'gen_ai.response.service_tier';
69
+ SemanticConvention.GEN_AI_RESPONSE_SYSTEM_FINGERPRINT = 'gen_ai.response.system_fingerprint';
54
70
  // GenAI Content
55
- SemanticConvention.GEN_AI_CONTENT_PROMPT = 'gen_ai.content.prompt';
71
+ SemanticConvention.GEN_AI_CONTENT_PROMPT = 'gen_ai.prompt';
72
+ SemanticConvention.GEN_AI_CONTENT_PROMPT_EVENT = 'gen_ai.content.prompt';
56
73
  SemanticConvention.GEN_AI_CONTENT_COMPLETION = 'gen_ai.completion';
74
+ SemanticConvention.GEN_AI_CONTENT_COMPLETION_EVENT = 'gen_ai.content.completion';
57
75
  SemanticConvention.GEN_AI_CONTENT_REVISED_PROMPT = 'gen_ai.content.revised_prompt';
76
+ // Tool attributes
77
+ SemanticConvention.GEN_AI_TOOL_NAME = 'gen_ai.tool.name';
78
+ SemanticConvention.GEN_AI_TOOL_TYPE = 'gen_ai.tool.call.type';
79
+ SemanticConvention.GEN_AI_TOOL_DESCRIPTION = 'gen_ai.tool.description';
80
+ SemanticConvention.GEN_AI_TOOL_DEFINITION = 'gen_ai.tool.definition';
81
+ SemanticConvention.GEN_AI_TOOL_CALL_ID = 'gen_ai.tool.call.id';
82
+ SemanticConvention.GEN_AI_TOOL_CALL_ARGUMENTS = 'gen_ai.tool.call.arguments';
83
+ SemanticConvention.GEN_AI_TOOL_CALL_RESULT = 'gen_ai.tool.call.result';
84
+ SemanticConvention.GEN_AI_TOKEN_TYPE = 'gen_ai.token.type';
85
+ SemanticConvention.GEN_AI_OPERATION_TYPE_TEXT_COMPLETION = 'text_completion';
58
86
  SemanticConvention.GEN_AI_OPERATION_TYPE_CHAT = 'chat';
59
- SemanticConvention.GEN_AI_OPERATION_TYPE_EMBEDDING = 'embedding';
87
+ SemanticConvention.GEN_AI_OPERATION_TYPE_EMBEDDING = 'embeddings';
60
88
  SemanticConvention.GEN_AI_OPERATION_TYPE_IMAGE = 'image';
61
89
  SemanticConvention.GEN_AI_OPERATION_TYPE_AUDIO = 'audio';
62
90
  SemanticConvention.GEN_AI_OPERATION_TYPE_FINETUNING = 'fine_tuning';
63
91
  SemanticConvention.GEN_AI_OPERATION_TYPE_VECTORDB = 'vectordb';
64
- SemanticConvention.GEN_AI_OPERATION_TYPE_FRAMEWORK = 'framework';
92
+ SemanticConvention.GEN_AI_OPERATION_TYPE_FRAMEWORK = 'workflow';
93
+ // GenAI Output Types
94
+ SemanticConvention.GEN_AI_OUTPUT_TYPE_TEXT = 'text';
95
+ SemanticConvention.GEN_AI_OUTPUT_TYPE_JSON = 'json';
96
+ SemanticConvention.GEN_AI_OUTPUT_TYPE_IMAGE = 'image';
97
+ SemanticConvention.GEN_AI_OUTPUT_TYPE_SPEECH = 'speech';
65
98
  SemanticConvention.GEN_AI_SYSTEM_HUGGING_FACE = 'huggingface';
66
99
  SemanticConvention.GEN_AI_SYSTEM_OPENAI = 'openai';
67
- SemanticConvention.GEN_AI_SYSTEM_AZURE_OPENAI = 'azure_openai';
100
+ SemanticConvention.GEN_AI_SYSTEM_AZURE_OPENAI = 'az.ai.openai';
68
101
  SemanticConvention.GEN_AI_SYSTEM_ANTHROPIC = 'anthropic';
69
102
  SemanticConvention.GEN_AI_SYSTEM_COHERE = 'cohere';
70
- SemanticConvention.GEN_AI_SYSTEM_MISTRAL = 'mistral';
71
- SemanticConvention.GEN_AI_SYSTEM_AWS_BEDROCK = 'bedrock';
72
- SemanticConvention.GEN_AI_SYSTEM_VERTEXAI = 'vertexai';
103
+ SemanticConvention.GEN_AI_SYSTEM_MISTRAL = 'mistral_ai';
104
+ SemanticConvention.GEN_AI_SYSTEM_AWS_BEDROCK = 'aws.bedrock';
105
+ SemanticConvention.GEN_AI_SYSTEM_VERTEXAI = 'vertex_ai';
73
106
  SemanticConvention.GEN_AI_SYSTEM_LANGCHAIN = 'langchain';
74
107
  // Vector DB
75
108
  SemanticConvention.DB_REQUESTS = 'db.total.requests';
@@ -105,5 +138,14 @@ SemanticConvention.DB_NAMESPACE = 'db.query.namespace';
105
138
  SemanticConvention.DB_UPDATE_METADATA = 'db.update.metadata';
106
139
  SemanticConvention.DB_UPDATE_VALUES = 'db.update.values';
107
140
  SemanticConvention.DB_UPDATE_ID = 'db.update.id';
141
+ SemanticConvention.GEN_AI_CLIENT_OPERATION_DURATION = 'gen_ai.client.operation.duration';
142
+ SemanticConvention.GEN_AI_CLIENT_TOKEN_USAGE = 'gen_ai.client.token.usage';
143
+ SemanticConvention.GEN_AI_SERVER_TBT = 'gen_ai.server.time_per_output_token';
144
+ SemanticConvention.GEN_AI_SERVER_TTFT = 'gen_ai.server.time_to_first_token';
145
+ SemanticConvention.DB_CLIENT_OPERATION_DURATION = 'db.client.operation.duration';
146
+ // Server attributes
147
+ SemanticConvention.SERVER_ADDRESS = 'server.address';
148
+ SemanticConvention.SERVER_PORT = 'server.port';
149
+ SemanticConvention.ERROR_TYPE = 'error.type';
108
150
  exports.default = SemanticConvention;
109
151
  //# sourceMappingURL=semantic-convention.js.map