@revenium/openai 1.0.14 → 1.0.16

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 (60) hide show
  1. package/CHANGELOG.md +48 -0
  2. package/README.md +32 -0
  3. package/dist/cjs/core/middleware/index.js +5 -1
  4. package/dist/cjs/core/middleware/index.js.map +1 -1
  5. package/dist/cjs/core/middleware/interfaces.js +94 -1
  6. package/dist/cjs/core/middleware/interfaces.js.map +1 -1
  7. package/dist/cjs/core/middleware/revenium-client.js +10 -0
  8. package/dist/cjs/core/middleware/revenium-client.js.map +1 -1
  9. package/dist/cjs/core/tracking/api-client.js +8 -2
  10. package/dist/cjs/core/tracking/api-client.js.map +1 -1
  11. package/dist/cjs/core/tracking/index.js +5 -1
  12. package/dist/cjs/core/tracking/index.js.map +1 -1
  13. package/dist/cjs/core/tracking/payload-builder.js +150 -1
  14. package/dist/cjs/core/tracking/payload-builder.js.map +1 -1
  15. package/dist/cjs/core/tracking/usage-tracker.js +91 -2
  16. package/dist/cjs/core/tracking/usage-tracker.js.map +1 -1
  17. package/dist/cjs/index.js +7 -1
  18. package/dist/cjs/index.js.map +1 -1
  19. package/dist/cjs/utils/trace-fields.js +115 -0
  20. package/dist/cjs/utils/trace-fields.js.map +1 -0
  21. package/dist/esm/core/middleware/index.js +2 -2
  22. package/dist/esm/core/middleware/index.js.map +1 -1
  23. package/dist/esm/core/middleware/interfaces.js +90 -1
  24. package/dist/esm/core/middleware/interfaces.js.map +1 -1
  25. package/dist/esm/core/middleware/revenium-client.js +11 -1
  26. package/dist/esm/core/middleware/revenium-client.js.map +1 -1
  27. package/dist/esm/core/tracking/api-client.js +8 -2
  28. package/dist/esm/core/tracking/api-client.js.map +1 -1
  29. package/dist/esm/core/tracking/index.js +4 -4
  30. package/dist/esm/core/tracking/index.js.map +1 -1
  31. package/dist/esm/core/tracking/payload-builder.js +148 -1
  32. package/dist/esm/core/tracking/payload-builder.js.map +1 -1
  33. package/dist/esm/core/tracking/usage-tracker.js +56 -2
  34. package/dist/esm/core/tracking/usage-tracker.js.map +1 -1
  35. package/dist/esm/index.js +2 -2
  36. package/dist/esm/index.js.map +1 -1
  37. package/dist/esm/utils/trace-fields.js +100 -0
  38. package/dist/esm/utils/trace-fields.js.map +1 -0
  39. package/dist/types/core/middleware/index.d.ts +2 -2
  40. package/dist/types/core/middleware/index.d.ts.map +1 -1
  41. package/dist/types/core/middleware/interfaces.d.ts +30 -0
  42. package/dist/types/core/middleware/interfaces.d.ts.map +1 -1
  43. package/dist/types/core/middleware/revenium-client.d.ts +7 -1
  44. package/dist/types/core/middleware/revenium-client.d.ts.map +1 -1
  45. package/dist/types/core/tracking/api-client.d.ts.map +1 -1
  46. package/dist/types/core/tracking/index.d.ts +4 -4
  47. package/dist/types/core/tracking/index.d.ts.map +1 -1
  48. package/dist/types/core/tracking/payload-builder.d.ts +3 -1
  49. package/dist/types/core/tracking/payload-builder.d.ts.map +1 -1
  50. package/dist/types/core/tracking/usage-tracker.d.ts +2 -0
  51. package/dist/types/core/tracking/usage-tracker.d.ts.map +1 -1
  52. package/dist/types/index.d.ts +2 -2
  53. package/dist/types/index.d.ts.map +1 -1
  54. package/dist/types/types/function-parameters.d.ts +89 -0
  55. package/dist/types/types/function-parameters.d.ts.map +1 -1
  56. package/dist/types/types/index.d.ts +52 -4
  57. package/dist/types/types/index.d.ts.map +1 -1
  58. package/dist/types/utils/trace-fields.d.ts +11 -0
  59. package/dist/types/utils/trace-fields.d.ts.map +1 -0
  60. package/package.json +4 -1
package/CHANGELOG.md CHANGED
@@ -5,6 +5,54 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [1.0.16] - 2026-01-12
9
+
10
+ ### Added
11
+
12
+ - **Trace Visualization Fields**: Full implementation of trace fields in payload builder
13
+ - `environment` - Deployment environment with fallback chain (REVENIUM_ENVIRONMENT → NODE_ENV → DEPLOYMENT_ENV)
14
+ - `region` - Cloud region with auto-detection from AWS/Azure/GCP and metadata service fallback
15
+ - `credentialAlias` - Human-readable credential name
16
+ - `traceType` - Categorical identifier with format validation (alphanumeric, hyphens, underscores, max 128 chars)
17
+ - `traceName` - Human-readable trace label with length validation (max 256 chars)
18
+ - `parentTransactionId` - Parent transaction reference for distributed tracing
19
+ - `transactionName` - Human-friendly operation label
20
+ - `retryNumber` - Retry attempt tracking (0 for first attempt, 1+ for retries)
21
+ - `operationSubtype` - Auto-detected operation details (e.g., function_call when tools are present)
22
+
23
+ ### Changed
24
+
25
+ - Updated `buildPayload()` function to async to support region detection
26
+ - Enhanced README with comprehensive trace visualization fields documentation
27
+ - Added trace fields to TypeScript interface `ReveniumPayload`
28
+
29
+ ### Documentation
30
+
31
+ - Added "Trace Visualization Fields" section to README with complete field descriptions
32
+ - Added example configuration for trace fields
33
+ - Updated documentation to match other middleware packages (anthropic-node, perplexity-node)
34
+
35
+ ## [1.0.15] - 2025-12-09
36
+
37
+ ### Added
38
+
39
+ - Comprehensive tracing support with 10 new trace visualization fields
40
+ - environment field with fallback chain (REVENIUM_ENVIRONMENT → NODE_ENV → DEPLOYMENT_ENV)
41
+ - operationSubtype field with auto-detection for function_call when tools are present
42
+ - retryNumber field for tracking retry attempts
43
+ - parentTransactionId field for distributed tracing support
44
+ - transactionName field for human-readable operation labels
45
+ - region field with AWS/Azure/GCP environment variable detection and metadata service fallback
46
+ - credentialAlias field for credential identification
47
+ - traceType field with format validation
48
+ - traceName field with length validation and truncation
49
+ - Region detection caching with 1-second timeout for metadata service calls
50
+
51
+ ### Changed
52
+
53
+ - Enhanced trace field validation with format checking and length limits
54
+ - Improved documentation with comprehensive trace field examples
55
+
8
56
  ## [1.0.14] - 2025-11-14
9
57
 
10
58
  ### Changed
package/README.md CHANGED
@@ -106,6 +106,38 @@ The middleware provides a Go-aligned API with the following main functions:
106
106
 
107
107
  **For complete API documentation and usage examples, see [`examples/README.md`](https://github.com/revenium/revenium-middleware-openai-node/blob/HEAD/examples/README.md).**
108
108
 
109
+ ## Trace Visualization Fields
110
+
111
+ The middleware automatically captures trace visualization fields for distributed tracing and analytics:
112
+
113
+ | Field | Type | Description | Environment Variable |
114
+ | --------------------- | ------ | ------------------------------------------------------------------------------- | ---------------------------------- |
115
+ | `environment` | string | Deployment environment (production, staging, development) | `REVENIUM_ENVIRONMENT`, `NODE_ENV` |
116
+ | `operationType` | string | Operation classification (CHAT, EMBED, IMAGE, AUDIO) - automatically detected | N/A (auto-detected) |
117
+ | `operationSubtype` | string | Additional detail (function_call, etc.) - automatically detected | N/A (auto-detected) |
118
+ | `retryNumber` | number | Retry attempt number (0 for first attempt, 1+ for retries) | `REVENIUM_RETRY_NUMBER` |
119
+ | `parentTransactionId` | string | Parent transaction reference for distributed tracing | `REVENIUM_PARENT_TRANSACTION_ID` |
120
+ | `transactionName` | string | Human-friendly operation label | `REVENIUM_TRANSACTION_NAME` |
121
+ | `region` | string | Cloud region (us-east-1, etc.) - auto-detected from AWS/Azure/GCP | `AWS_REGION`, `REVENIUM_REGION` |
122
+ | `credentialAlias` | string | Human-readable credential name | `REVENIUM_CREDENTIAL_ALIAS` |
123
+ | `traceType` | string | Categorical identifier (alphanumeric, hyphens, underscores only, max 128 chars) | `REVENIUM_TRACE_TYPE` |
124
+ | `traceName` | string | Human-readable label for trace instances (max 256 chars) | `REVENIUM_TRACE_NAME` |
125
+
126
+ **All trace visualization fields are optional.** The middleware will automatically detect and populate these fields when possible.
127
+
128
+ ### Example Configuration
129
+
130
+ ```env
131
+ REVENIUM_ENVIRONMENT=production
132
+ REVENIUM_REGION=us-east-1
133
+ REVENIUM_CREDENTIAL_ALIAS=OpenAI Production Key
134
+ REVENIUM_TRACE_TYPE=customer_support
135
+ REVENIUM_TRACE_NAME=Support Ticket #12345
136
+ REVENIUM_PARENT_TRANSACTION_ID=parent-txn-123
137
+ REVENIUM_TRANSACTION_NAME=Answer Customer Question
138
+ REVENIUM_RETRY_NUMBER=0
139
+ ```
140
+
109
141
  ## Metadata Fields
110
142
 
111
143
  The middleware supports the following optional metadata fields for tracking:
@@ -5,7 +5,7 @@
5
5
  * Exports all middleware components.
6
6
  */
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.StreamingWrapper = exports.ResponsesInterface = exports.EmbeddingsInterface = exports.CompletionsInterface = exports.ChatInterface = exports.ReveniumOpenAI = void 0;
8
+ exports.AudioSpeechInterface = exports.AudioTranslationsInterface = exports.AudioTranscriptionsInterface = exports.ImagesInterface = exports.StreamingWrapper = exports.ResponsesInterface = exports.EmbeddingsInterface = exports.CompletionsInterface = exports.ChatInterface = exports.ReveniumOpenAI = void 0;
9
9
  var revenium_client_js_1 = require("./revenium-client.js");
10
10
  Object.defineProperty(exports, "ReveniumOpenAI", { enumerable: true, get: function () { return revenium_client_js_1.ReveniumOpenAI; } });
11
11
  var interfaces_js_1 = require("./interfaces.js");
@@ -14,4 +14,8 @@ Object.defineProperty(exports, "CompletionsInterface", { enumerable: true, get:
14
14
  Object.defineProperty(exports, "EmbeddingsInterface", { enumerable: true, get: function () { return interfaces_js_1.EmbeddingsInterface; } });
15
15
  Object.defineProperty(exports, "ResponsesInterface", { enumerable: true, get: function () { return interfaces_js_1.ResponsesInterface; } });
16
16
  Object.defineProperty(exports, "StreamingWrapper", { enumerable: true, get: function () { return interfaces_js_1.StreamingWrapper; } });
17
+ Object.defineProperty(exports, "ImagesInterface", { enumerable: true, get: function () { return interfaces_js_1.ImagesInterface; } });
18
+ Object.defineProperty(exports, "AudioTranscriptionsInterface", { enumerable: true, get: function () { return interfaces_js_1.AudioTranscriptionsInterface; } });
19
+ Object.defineProperty(exports, "AudioTranslationsInterface", { enumerable: true, get: function () { return interfaces_js_1.AudioTranslationsInterface; } });
20
+ Object.defineProperty(exports, "AudioSpeechInterface", { enumerable: true, get: function () { return interfaces_js_1.AudioSpeechInterface; } });
17
21
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/middleware/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,2DAAsD;AAA7C,oHAAA,cAAc,OAAA;AACvB,iDAMyB;AALvB,8GAAA,aAAa,OAAA;AACb,qHAAA,oBAAoB,OAAA;AACpB,oHAAA,mBAAmB,OAAA;AACnB,mHAAA,kBAAkB,OAAA;AAClB,iHAAA,gBAAgB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/middleware/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,2DAAsD;AAA7C,oHAAA,cAAc,OAAA;AACvB,iDAUyB;AATvB,8GAAA,aAAa,OAAA;AACb,qHAAA,oBAAoB,OAAA;AACpB,oHAAA,mBAAmB,OAAA;AACnB,mHAAA,kBAAkB,OAAA;AAClB,iHAAA,gBAAgB,OAAA;AAChB,gHAAA,eAAe,OAAA;AACf,6HAAA,4BAA4B,OAAA;AAC5B,2HAAA,0BAA0B,OAAA;AAC1B,qHAAA,oBAAoB,OAAA"}
@@ -6,7 +6,7 @@
6
6
  * Contains: ChatInterface, CompletionsInterface, EmbeddingsInterface, ResponsesInterface, StreamingWrapper
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.ResponsesInterface = exports.EmbeddingsInterface = exports.ChatInterface = exports.CompletionsInterface = exports.StreamingWrapper = void 0;
9
+ exports.AudioSpeechInterface = exports.AudioTranslationsInterface = exports.AudioTranscriptionsInterface = exports.ImagesInterface = exports.ResponsesInterface = exports.EmbeddingsInterface = exports.ChatInterface = exports.CompletionsInterface = exports.StreamingWrapper = void 0;
10
10
  const crypto_1 = require("crypto");
11
11
  const config_1 = require("../config");
12
12
  const tracking_1 = require("../tracking");
@@ -358,4 +358,97 @@ class ResponsesInterface {
358
358
  }
359
359
  }
360
360
  exports.ResponsesInterface = ResponsesInterface;
361
+ async function wrapApiCall(apiCall, trackingCall, params, errorMessage) {
362
+ const startTime = Date.now();
363
+ const { usageMetadata: metadata, ...cleanParams } = params;
364
+ try {
365
+ const response = await apiCall();
366
+ const duration = Date.now() - startTime;
367
+ await trackingCall(response, duration, metadata);
368
+ return response;
369
+ }
370
+ catch (error) {
371
+ const duration = Date.now() - startTime;
372
+ logger.error(errorMessage, {
373
+ error: error instanceof Error ? error.message : String(error),
374
+ model: params.model,
375
+ duration,
376
+ });
377
+ throw error;
378
+ }
379
+ }
380
+ class ImagesInterface {
381
+ constructor(originalImages, config, providerInfo) {
382
+ this.originalImages = originalImages;
383
+ this.config = config;
384
+ this.providerInfo = providerInfo;
385
+ }
386
+ async generate(params) {
387
+ const { usageMetadata: metadata, ...cleanParams } = params;
388
+ const startTime = Date.now();
389
+ return wrapApiCall(() => this.originalImages.generate(cleanParams), async (response, duration) => {
390
+ await (0, tracking_1.trackImageUsageAsync)("generation", response, params, startTime, duration, this.config, this.providerInfo, metadata);
391
+ }, params, "Image generation failed");
392
+ }
393
+ async edit(params) {
394
+ const { usageMetadata: metadata, ...cleanParams } = params;
395
+ const startTime = Date.now();
396
+ return wrapApiCall(() => this.originalImages.edit(cleanParams), async (response, duration) => {
397
+ await (0, tracking_1.trackImageUsageAsync)("edit", response, params, startTime, duration, this.config, this.providerInfo, metadata);
398
+ }, params, "Image edit failed");
399
+ }
400
+ async createVariation(params) {
401
+ const { usageMetadata: metadata, ...cleanParams } = params;
402
+ const startTime = Date.now();
403
+ return wrapApiCall(() => this.originalImages.createVariation(cleanParams), async (response, duration) => {
404
+ await (0, tracking_1.trackImageUsageAsync)("variation", response, params, startTime, duration, this.config, this.providerInfo, metadata);
405
+ }, params, "Image variation failed");
406
+ }
407
+ }
408
+ exports.ImagesInterface = ImagesInterface;
409
+ class AudioTranscriptionsInterface {
410
+ constructor(originalTranscriptions, config, providerInfo) {
411
+ this.originalTranscriptions = originalTranscriptions;
412
+ this.config = config;
413
+ this.providerInfo = providerInfo;
414
+ }
415
+ async create(params) {
416
+ const { usageMetadata: metadata, ...cleanParams } = params;
417
+ const startTime = Date.now();
418
+ return wrapApiCall(() => this.originalTranscriptions.create(cleanParams), async (response, duration) => {
419
+ await (0, tracking_1.trackAudioUsageAsync)("transcription", response, params, startTime, duration, this.config, this.providerInfo, metadata);
420
+ }, params, "Audio transcription failed");
421
+ }
422
+ }
423
+ exports.AudioTranscriptionsInterface = AudioTranscriptionsInterface;
424
+ class AudioTranslationsInterface {
425
+ constructor(originalTranslations, config, providerInfo) {
426
+ this.originalTranslations = originalTranslations;
427
+ this.config = config;
428
+ this.providerInfo = providerInfo;
429
+ }
430
+ async create(params) {
431
+ const { usageMetadata: metadata, ...cleanParams } = params;
432
+ const startTime = Date.now();
433
+ return wrapApiCall(() => this.originalTranslations.create(cleanParams), async (response, duration) => {
434
+ await (0, tracking_1.trackAudioUsageAsync)("translation", response, params, startTime, duration, this.config, this.providerInfo, metadata);
435
+ }, params, "Audio translation failed");
436
+ }
437
+ }
438
+ exports.AudioTranslationsInterface = AudioTranslationsInterface;
439
+ class AudioSpeechInterface {
440
+ constructor(originalSpeech, config, providerInfo) {
441
+ this.originalSpeech = originalSpeech;
442
+ this.config = config;
443
+ this.providerInfo = providerInfo;
444
+ }
445
+ async create(params) {
446
+ const { usageMetadata: metadata, ...cleanParams } = params;
447
+ const startTime = Date.now();
448
+ return wrapApiCall(() => this.originalSpeech.create(cleanParams), async (response, duration) => {
449
+ await (0, tracking_1.trackAudioUsageAsync)("speech_synthesis", response, params, startTime, duration, this.config, this.providerInfo, metadata);
450
+ }, params, "Audio speech synthesis failed");
451
+ }
452
+ }
453
+ exports.AudioSpeechInterface = AudioSpeechInterface;
361
454
  //# sourceMappingURL=interfaces.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../../src/core/middleware/interfaces.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../../src/core/middleware/interfaces.ts"],"names":[],"mappings":"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"}
@@ -111,6 +111,16 @@ class ReveniumOpenAI {
111
111
  responses() {
112
112
  return new interfaces_js_1.ResponsesInterface(this.client, this.config, this.providerInfo);
113
113
  }
114
+ images() {
115
+ return new interfaces_js_1.ImagesInterface(this.client.images, this.config, this.providerInfo);
116
+ }
117
+ audio() {
118
+ return {
119
+ transcriptions: new interfaces_js_1.AudioTranscriptionsInterface(this.client.audio.transcriptions, this.config, this.providerInfo),
120
+ translations: new interfaces_js_1.AudioTranslationsInterface(this.client.audio.translations, this.config, this.providerInfo),
121
+ speech: new interfaces_js_1.AudioSpeechInterface(this.client.audio.speech, this.config, this.providerInfo),
122
+ };
123
+ }
114
124
  /**
115
125
  * Get the underlying OpenAI client
116
126
  *
@@ -1 +1 @@
1
- {"version":3,"file":"revenium-client.js","sourceRoot":"","sources":["../../../../src/core/middleware/revenium-client.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,iDAA6C;AAC7C,uCAA6D;AAC7D,sCAAsC;AACtC,mDAIyB;AAEzB,MAAM,MAAM,GAAG,IAAA,kBAAS,GAAE,CAAC;AAE3B;;;;GAIG;AACH,MAAa,cAAc;IAKzB,YAAY,MAAc,EAAE,QAAkB;QAC5C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QAErB,wDAAwD;QACxD,IAAI,QAAQ,KAAK,gBAAQ,CAAC,YAAY,EAAE,CAAC;YACvC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;gBAClB,MAAM,IAAI,KAAK,CACb,wDAAwD,CACzD,CAAC;YACJ,CAAC;YAED,MAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE;gBAC1C,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ;gBAC/B,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU;aACpC,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,GAAG,IAAI,oBAAW,CAAC;gBAC5B,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM;gBAC3B,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ;gBAC/B,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,UAAU;aACpC,CAAC,CAAC;YAEH,IAAI,CAAC,YAAY,GAAG;gBAClB,QAAQ,EAAE,gBAAQ,CAAC,YAAY;gBAC/B,OAAO,EAAE,IAAI;gBACb,WAAW,EAAE,MAAM,CAAC,KAAK;aAC1B,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;YAEvC,IAAI,CAAC,MAAM,GAAG,IAAI,gBAAM,CAAC;gBACvB,MAAM,EAAE,MAAM,CAAC,YAAY;aAC5B,CAAC,CAAC;YAEH,IAAI,CAAC,YAAY,GAAG;gBAClB,QAAQ,EAAE,gBAAQ,CAAC,MAAM;gBACzB,OAAO,EAAE,KAAK;aACf,CAAC;QACJ,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,gCAAgC,EAAE;YAC5C,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC,QAAQ;YACpC,OAAO,EAAE,IAAI,CAAC,YAAY,CAAC,OAAO;SACnC,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACH,IAAI;QACF,OAAO,IAAI,6BAAa,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IACxE,CAAC;IAED;;;;OAIG;IACH,UAAU;QACR,OAAO,IAAI,mCAAmB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IAC9E,CAAC;IAED;;;;OAIG;IACH,SAAS;QACP,OAAO,IAAI,kCAAkB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;IAC7E,CAAC;IAED;;;;;;;OAOG;IACH,mBAAmB;QACjB,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;;OAGG;IACH,eAAe;QACb,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED;;;;OAIG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;CACF;AA1GD,wCA0GC"}
1
+ {"version":3,"file":"revenium-client.js","sourceRoot":"","sources":["../../../../src/core/middleware/revenium-client.ts"],"names":[],"mappings":"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"}
@@ -24,8 +24,14 @@ async function sendToRevenium(payload) {
24
24
  const config = (0, config_1.getConfig)();
25
25
  if (!config)
26
26
  return logger.warn("Revenium configuration not found, skipping tracking");
27
- // Use the new URL builder utility instead of nested conditionals
28
- const url = (0, url_builder_js_1.buildReveniumUrl)(config.reveniumBaseUrl || constants_1.DEFAULT_REVENIUM_BASE_URL, "/ai/completions");
27
+ let endpoint = "/ai/completions";
28
+ if (payload.operationType === "IMAGE") {
29
+ endpoint = "/ai/images";
30
+ }
31
+ else if (payload.operationType === "AUDIO") {
32
+ endpoint = "/ai/audio";
33
+ }
34
+ const url = (0, url_builder_js_1.buildReveniumUrl)(config.reveniumBaseUrl || constants_1.DEFAULT_REVENIUM_BASE_URL, endpoint);
29
35
  logger.debug("Sending Revenium API request", {
30
36
  url,
31
37
  operationType: payload.operationType,
@@ -1 +1 @@
1
- {"version":3,"file":"api-client.js","sourceRoot":"","sources":["../../../../src/core/tracking/api-client.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAkBH,wCAwDC;AAvED,sCAAiD;AACjD,+DAA8D;AAC9D,qDAAkE;AAElE,gBAAgB;AAChB,MAAM,MAAM,GAAG,IAAA,kBAAS,GAAE,CAAC;AAE3B;;;;;;;GAOG;AACI,KAAK,UAAU,cAAc,CAAC,OAAwB;IAC3D,MAAM,MAAM,GAAG,IAAA,kBAAS,GAAE,CAAC;IAC3B,IAAI,CAAC,MAAM;QACT,OAAO,MAAM,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;IAE5E,iEAAiE;IACjE,MAAM,GAAG,GAAG,IAAA,iCAAgB,EAC1B,MAAM,CAAC,eAAe,IAAI,qCAAyB,EACnD,iBAAiB,CAClB,CAAC;IAEF,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE;QAC3C,GAAG;QACH,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,WAAW,EAAE,OAAO,CAAC,eAAe;KACrC,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;QAChC,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,MAAM,EAAE,kBAAkB;YAC1B,WAAW,EAAE,MAAM,CAAC,cAAc;SACnC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;KAC9B,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE;QACpC,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,aAAa,EAAE,OAAO,CAAC,aAAa;KACrC,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC3C,MAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE;YAC1C,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,IAAI,EAAE,YAAY;YAClB,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,aAAa,EAAE,OAAO,CAAC,aAAa;SACrC,CAAC,CAAC;QACH,MAAM,IAAI,KAAK,CACb,uBAAuB,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,MAAM,YAAY,EAAE,CAClF,CAAC;IACJ,CAAC;IAED,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IAC3C,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE;QAC3C,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,QAAQ,EAAE,YAAY;KACvB,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"api-client.js","sourceRoot":"","sources":["../../../../src/core/tracking/api-client.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAkBH,wCA8DC;AA7ED,sCAAiD;AACjD,+DAA8D;AAC9D,qDAAkE;AAElE,gBAAgB;AAChB,MAAM,MAAM,GAAG,IAAA,kBAAS,GAAE,CAAC;AAE3B;;;;;;;GAOG;AACI,KAAK,UAAU,cAAc,CAAC,OAAwB;IAC3D,MAAM,MAAM,GAAG,IAAA,kBAAS,GAAE,CAAC;IAC3B,IAAI,CAAC,MAAM;QACT,OAAO,MAAM,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;IAE5E,IAAI,QAAQ,GAAG,iBAAiB,CAAC;IACjC,IAAI,OAAO,CAAC,aAAa,KAAK,OAAO,EAAE,CAAC;QACtC,QAAQ,GAAG,YAAY,CAAC;IAC1B,CAAC;SAAM,IAAI,OAAO,CAAC,aAAa,KAAK,OAAO,EAAE,CAAC;QAC7C,QAAQ,GAAG,WAAW,CAAC;IACzB,CAAC;IAED,MAAM,GAAG,GAAG,IAAA,iCAAgB,EAC1B,MAAM,CAAC,eAAe,IAAI,qCAAyB,EACnD,QAAQ,CACT,CAAC;IAEF,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE;QAC3C,GAAG;QACH,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,WAAW,EAAE,OAAO,CAAC,eAAe;KACrC,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;QAChC,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,MAAM,EAAE,kBAAkB;YAC1B,WAAW,EAAE,MAAM,CAAC,cAAc;SACnC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;KAC9B,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE;QACpC,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,aAAa,EAAE,OAAO,CAAC,aAAa;KACrC,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC3C,MAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE;YAC1C,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,IAAI,EAAE,YAAY;YAClB,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,aAAa,EAAE,OAAO,CAAC,aAAa;SACrC,CAAC,CAAC;QACH,MAAM,IAAI,KAAK,CACb,uBAAuB,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,MAAM,YAAY,EAAE,CAClF,CAAC;IACJ,CAAC;IAED,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IAC3C,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE;QAC3C,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,aAAa,EAAE,OAAO,CAAC,aAAa;QACpC,QAAQ,EAAE,YAAY;KACvB,CAAC,CAAC;AACL,CAAC"}
@@ -6,17 +6,21 @@
6
6
  * separating concerns into focused sub-modules.
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.mapStopReason = exports.trackEmbeddingsUsageAsync = exports.trackUsageAsync = exports.sendReveniumEmbeddingsMetrics = exports.sendReveniumMetrics = exports.buildPayload = exports.sendToRevenium = void 0;
9
+ exports.mapStopReason = exports.trackAudioUsageAsync = exports.trackImageUsageAsync = exports.trackEmbeddingsUsageAsync = exports.trackUsageAsync = exports.sendReveniumEmbeddingsMetrics = exports.sendReveniumMetrics = exports.buildAudioPayload = exports.buildImagePayload = exports.buildPayload = exports.sendToRevenium = void 0;
10
10
  // Re-export all tracking functionality
11
11
  var api_client_js_1 = require("./api-client.js");
12
12
  Object.defineProperty(exports, "sendToRevenium", { enumerable: true, get: function () { return api_client_js_1.sendToRevenium; } });
13
13
  var payload_builder_js_1 = require("./payload-builder.js");
14
14
  Object.defineProperty(exports, "buildPayload", { enumerable: true, get: function () { return payload_builder_js_1.buildPayload; } });
15
+ Object.defineProperty(exports, "buildImagePayload", { enumerable: true, get: function () { return payload_builder_js_1.buildImagePayload; } });
16
+ Object.defineProperty(exports, "buildAudioPayload", { enumerable: true, get: function () { return payload_builder_js_1.buildAudioPayload; } });
15
17
  var usage_tracker_js_1 = require("./usage-tracker.js");
16
18
  Object.defineProperty(exports, "sendReveniumMetrics", { enumerable: true, get: function () { return usage_tracker_js_1.sendReveniumMetrics; } });
17
19
  Object.defineProperty(exports, "sendReveniumEmbeddingsMetrics", { enumerable: true, get: function () { return usage_tracker_js_1.sendReveniumEmbeddingsMetrics; } });
18
20
  Object.defineProperty(exports, "trackUsageAsync", { enumerable: true, get: function () { return usage_tracker_js_1.trackUsageAsync; } });
19
21
  Object.defineProperty(exports, "trackEmbeddingsUsageAsync", { enumerable: true, get: function () { return usage_tracker_js_1.trackEmbeddingsUsageAsync; } });
22
+ Object.defineProperty(exports, "trackImageUsageAsync", { enumerable: true, get: function () { return usage_tracker_js_1.trackImageUsageAsync; } });
23
+ Object.defineProperty(exports, "trackAudioUsageAsync", { enumerable: true, get: function () { return usage_tracker_js_1.trackAudioUsageAsync; } });
20
24
  // Export utility functions
21
25
  var stop_reason_mapper_js_1 = require("../../utils/stop-reason-mapper.js");
22
26
  Object.defineProperty(exports, "mapStopReason", { enumerable: true, get: function () { return stop_reason_mapper_js_1.mapStopReason; } });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/tracking/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,uCAAuC;AACvC,iDAAiD;AAAxC,+GAAA,cAAc,OAAA;AAEvB,2DAAoD;AAA3C,kHAAA,YAAY,OAAA;AAErB,uDAK4B;AAJ1B,uHAAA,mBAAmB,OAAA;AACnB,iIAAA,6BAA6B,OAAA;AAC7B,mHAAA,eAAe,OAAA;AACf,6HAAA,yBAAyB,OAAA;AAG3B,2BAA2B;AAC3B,2EAAkE;AAAzD,sHAAA,aAAa,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/tracking/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,uCAAuC;AACvC,iDAAiD;AAAxC,+GAAA,cAAc,OAAA;AAEvB,2DAI8B;AAH5B,kHAAA,YAAY,OAAA;AACZ,uHAAA,iBAAiB,OAAA;AACjB,uHAAA,iBAAiB,OAAA;AAGnB,uDAO4B;AAN1B,uHAAA,mBAAmB,OAAA;AACnB,iIAAA,6BAA6B,OAAA;AAC7B,mHAAA,eAAe,OAAA;AACf,6HAAA,yBAAyB,OAAA;AACzB,wHAAA,oBAAoB,OAAA;AACpB,wHAAA,oBAAoB,OAAA;AAGtB,2BAA2B;AAC3B,2EAAkE;AAAzD,sHAAA,aAAa,OAAA"}
@@ -7,11 +7,14 @@
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.buildPayload = buildPayload;
10
+ exports.buildImagePayload = buildImagePayload;
11
+ exports.buildAudioPayload = buildAudioPayload;
10
12
  const crypto_1 = require("crypto");
11
13
  const config_1 = require("../config");
12
14
  const stop_reason_mapper_js_1 = require("../../utils/stop-reason-mapper.js");
13
15
  const metadata_builder_js_1 = require("../../utils/metadata-builder.js");
14
16
  const providers_1 = require("../providers");
17
+ const trace_fields_js_1 = require("../../utils/trace-fields.js");
15
18
  // Global logger
16
19
  const logger = (0, config_1.getLogger)();
17
20
  /**
@@ -28,7 +31,7 @@ const logger = (0, config_1.getLogger)();
28
31
  * @param providerInfo - Provider information for Azure support
29
32
  * @returns Constructed payload for Revenium API
30
33
  */
31
- function buildPayload(operationType, response, request, startTime, duration, providerInfo) {
34
+ async function buildPayload(operationType, response, request, startTime, duration, providerInfo) {
32
35
  const now = new Date().toISOString();
33
36
  const requestTime = new Date(startTime).toISOString();
34
37
  const usage = response.usage;
@@ -41,6 +44,16 @@ function buildPayload(operationType, response, request, startTime, duration, pro
41
44
  : { provider: "OpenAI", modelSource: "OPENAI" };
42
45
  // Build metadata fields using utility (eliminates repetitive spreading)
43
46
  const metadataFields = (0, metadata_builder_js_1.buildMetadataFields)(request.usageMetadata);
47
+ // Get trace fields
48
+ const environment = (0, trace_fields_js_1.getEnvironment)();
49
+ const region = await (0, trace_fields_js_1.getRegion)();
50
+ const credentialAlias = (0, trace_fields_js_1.getCredentialAlias)();
51
+ const traceType = (0, trace_fields_js_1.getTraceType)();
52
+ const traceName = (0, trace_fields_js_1.getTraceName)();
53
+ const parentTransactionId = (0, trace_fields_js_1.getParentTransactionId)();
54
+ const transactionName = (0, trace_fields_js_1.getTransactionName)();
55
+ const retryNumber = (0, trace_fields_js_1.getRetryNumber)();
56
+ const operationSubtype = (0, trace_fields_js_1.detectOperationSubtype)(request);
44
57
  // Common fields for all operations
45
58
  const commonPayload = {
46
59
  costType: "AI",
@@ -56,6 +69,16 @@ function buildPayload(operationType, response, request, startTime, duration, pro
56
69
  totalTokenCount: usage.total_tokens,
57
70
  // Metadata fields (processed by utility)
58
71
  ...metadataFields,
72
+ // Trace fields
73
+ environment: environment || undefined,
74
+ region: region || undefined,
75
+ credentialAlias: credentialAlias || undefined,
76
+ traceType: traceType || undefined,
77
+ traceName: traceName || undefined,
78
+ parentTransactionId: parentTransactionId || undefined,
79
+ transactionName: transactionName || undefined,
80
+ retryNumber: retryNumber !== undefined ? retryNumber : undefined,
81
+ operationSubtype: operationSubtype || undefined,
59
82
  // Fixed middleware source identifier (spec format: revenium-{provider}-{language})
60
83
  middlewareSource: "revenium-openai-node",
61
84
  // Backend calculates costs
@@ -99,4 +122,130 @@ function buildPayload(operationType, response, request, startTime, duration, pro
99
122
  timeToFirstToken: undefined,
100
123
  };
101
124
  }
125
+ function buildImagePayload(operationSubtype, response, request, startTime, duration, providerInfo, usageMetadata) {
126
+ const now = new Date().toISOString();
127
+ const requestTime = new Date(startTime).toISOString();
128
+ const providerMetadata = providerInfo
129
+ ? (0, providers_1.getProviderMetadata)(providerInfo)
130
+ : { provider: "OpenAI", modelSource: "OPENAI" };
131
+ const metadataFields = (0, metadata_builder_js_1.buildMetadataFields)(usageMetadata);
132
+ const attributes = {
133
+ billing_unit: "per_image",
134
+ operationSubtype,
135
+ actual_image_count: response.data?.length || 0,
136
+ };
137
+ if (operationSubtype === "generation") {
138
+ attributes.requested_image_count = request.n || 1;
139
+ attributes.resolution = request.size || "1024x1024";
140
+ attributes.quality = request.quality;
141
+ attributes.style = request.style;
142
+ attributes.response_format = request.response_format || "url";
143
+ attributes.revised_prompt_provided =
144
+ response.data?.[0]?.revised_prompt !== undefined;
145
+ }
146
+ else if (operationSubtype === "edit") {
147
+ attributes.requested_image_count = request.n || 1;
148
+ attributes.resolution = request.size || "1024x1024";
149
+ attributes.response_format = request.response_format || "url";
150
+ attributes.has_mask = request.mask !== undefined;
151
+ }
152
+ else if (operationSubtype === "variation") {
153
+ attributes.requested_image_count = request.n || 1;
154
+ attributes.resolution = request.size || "1024x1024";
155
+ attributes.response_format = request.response_format || "url";
156
+ }
157
+ return {
158
+ transactionId: `image-${operationSubtype}-${(0, crypto_1.randomUUID)()}`,
159
+ operationType: "IMAGE",
160
+ costType: "AI",
161
+ model: request.model || "dall-e-2",
162
+ provider: providerMetadata.provider,
163
+ modelSource: providerMetadata.modelSource,
164
+ middlewareSource: "revenium-openai-node",
165
+ requestTime,
166
+ responseTime: now,
167
+ requestDuration: duration,
168
+ completionStartTime: now,
169
+ inputTokenCount: null,
170
+ outputTokenCount: null,
171
+ totalTokenCount: null,
172
+ reasoningTokenCount: undefined,
173
+ cacheCreationTokenCount: undefined,
174
+ cacheReadTokenCount: undefined,
175
+ stopReason: "END",
176
+ isStreamed: false,
177
+ timeToFirstToken: undefined,
178
+ inputTokenCost: undefined,
179
+ outputTokenCost: undefined,
180
+ totalCost: undefined,
181
+ ...metadataFields,
182
+ requestedImageCount: request.n || 1,
183
+ actualImageCount: response.data?.length || 0,
184
+ attributes,
185
+ };
186
+ }
187
+ function buildAudioPayload(operationSubtype, response, request, startTime, duration, providerInfo, usageMetadata) {
188
+ const now = new Date().toISOString();
189
+ const requestTime = new Date(startTime).toISOString();
190
+ const providerMetadata = providerInfo
191
+ ? (0, providers_1.getProviderMetadata)(providerInfo)
192
+ : { provider: "OpenAI", modelSource: "OPENAI" };
193
+ const metadataFields = (0, metadata_builder_js_1.buildMetadataFields)(usageMetadata);
194
+ const attributes = {
195
+ operationSubtype,
196
+ };
197
+ let durationSeconds;
198
+ let characterCount;
199
+ if (operationSubtype === "speech_synthesis") {
200
+ attributes.billing_unit = "per_character";
201
+ attributes.requested_character_count = request.input?.length || 0;
202
+ attributes.voice = request.voice;
203
+ attributes.speed = request.speed;
204
+ attributes.response_format = request.response_format || "mp3";
205
+ characterCount = request.input?.length || 0;
206
+ }
207
+ else {
208
+ attributes.billing_unit = "per_minute";
209
+ attributes.actual_duration_seconds = response.duration || 0;
210
+ attributes.language = request.language || response.language;
211
+ attributes.response_format = request.response_format || "json";
212
+ attributes.temperature = request.temperature;
213
+ durationSeconds = response.duration || 0;
214
+ if (operationSubtype === "translation") {
215
+ attributes.target_language = "en";
216
+ }
217
+ if (request.timestamp_granularities) {
218
+ attributes.timestamp_granularities = request.timestamp_granularities;
219
+ }
220
+ }
221
+ return {
222
+ transactionId: `audio-${operationSubtype}-${(0, crypto_1.randomUUID)()}`,
223
+ operationType: "AUDIO",
224
+ costType: "AI",
225
+ model: request.model || "whisper-1",
226
+ provider: providerMetadata.provider,
227
+ modelSource: providerMetadata.modelSource,
228
+ middlewareSource: "revenium-openai-node",
229
+ requestTime,
230
+ responseTime: now,
231
+ requestDuration: duration,
232
+ completionStartTime: now,
233
+ inputTokenCount: null,
234
+ outputTokenCount: null,
235
+ totalTokenCount: null,
236
+ reasoningTokenCount: undefined,
237
+ cacheCreationTokenCount: undefined,
238
+ cacheReadTokenCount: undefined,
239
+ stopReason: "END",
240
+ isStreamed: false,
241
+ timeToFirstToken: undefined,
242
+ inputTokenCost: undefined,
243
+ outputTokenCost: undefined,
244
+ totalCost: undefined,
245
+ ...metadataFields,
246
+ durationSeconds,
247
+ characterCount,
248
+ attributes,
249
+ };
250
+ }
102
251
  //# sourceMappingURL=payload-builder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"payload-builder.js","sourceRoot":"","sources":["../../../../src/core/tracking/payload-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"payload-builder.js","sourceRoot":"","sources":["../../../../src/core/tracking/payload-builder.ts"],"names":[],"mappings":"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"}