@llmtracer/sdk 2.0.8 → 2.0.9
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/README.md +59 -113
- package/dist/cjs/config.d.ts +1 -0
- package/dist/cjs/config.d.ts.map +1 -1
- package/dist/cjs/config.js +1 -0
- package/dist/cjs/config.js.map +1 -1
- package/dist/cjs/index.d.ts +1 -1
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +10 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/schema.d.ts.map +1 -1
- package/dist/cjs/schema.js +5 -1
- package/dist/cjs/schema.js.map +1 -1
- package/dist/esm/config.d.ts +1 -0
- package/dist/esm/config.d.ts.map +1 -1
- package/dist/esm/config.js +1 -0
- package/dist/esm/config.js.map +1 -1
- package/dist/esm/index.d.ts +1 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +10 -1
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/schema.d.ts.map +1 -1
- package/dist/esm/schema.js +5 -1
- package/dist/esm/schema.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
# @llmtracer/sdk
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
Wrap your OpenAI client in two lines and get automatic tracking of every API call -- tokens, latency, cost, and model usage -- with zero changes to your application code.
|
|
3
|
+
Track cost, latency, and token usage across OpenAI, Anthropic, and Google Gemini — in one line of code.
|
|
6
4
|
|
|
7
5
|
## Install
|
|
8
6
|
|
|
@@ -10,117 +8,94 @@ Wrap your OpenAI client in two lines and get automatic tracking of every API cal
|
|
|
10
8
|
npm install @llmtracer/sdk
|
|
11
9
|
```
|
|
12
10
|
|
|
13
|
-
##
|
|
11
|
+
## Quick Start
|
|
14
12
|
|
|
15
13
|
```typescript
|
|
16
|
-
import
|
|
17
|
-
import OpenAI from "openai";
|
|
18
|
-
|
|
19
|
-
const tracer = new LLMTracer({
|
|
20
|
-
apiKey: process.env.LLMTRACER_KEY,
|
|
21
|
-
});
|
|
14
|
+
import llmtracer from '@llmtracer/sdk';
|
|
22
15
|
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
// 2 lines -- that's it
|
|
26
|
-
tracer.instrumentOpenAI(openai, {
|
|
27
|
-
tags: { feature: "customer-support-bot", env: "production" },
|
|
28
|
-
});
|
|
16
|
+
llmtracer.init({ apiKey: 'lt_...' });
|
|
29
17
|
|
|
30
|
-
//
|
|
31
|
-
const response = await openai.chat.completions.create({
|
|
32
|
-
model: "gpt-4o",
|
|
33
|
-
messages: [{ role: "user", content: "Hello" }],
|
|
34
|
-
});
|
|
35
|
-
|
|
36
|
-
// In serverless (Lambda, Cloud Functions), flush before returning
|
|
37
|
-
await tracer.flush();
|
|
18
|
+
// All OpenAI, Anthropic, and Google Gemini calls are now tracked automatically.
|
|
38
19
|
```
|
|
39
20
|
|
|
40
|
-
|
|
21
|
+
No wrappers, no manual instrumentation, no code changes. The SDK auto-patches your provider clients at import time.
|
|
41
22
|
|
|
42
|
-
|
|
23
|
+
View your dashboard at [llmtracer.dev](https://llmtracer.dev).
|
|
43
24
|
|
|
44
|
-
|
|
25
|
+
## What Gets Captured
|
|
45
26
|
|
|
46
|
-
|
|
47
|
-
await openai.chat.completions.create({
|
|
48
|
-
model: "gpt-4o",
|
|
49
|
-
messages: [...],
|
|
50
|
-
llmtracer: { tags: { feature: "chat" } }
|
|
51
|
-
});
|
|
52
|
-
```
|
|
27
|
+
Every LLM call is automatically tracked with:
|
|
53
28
|
|
|
54
|
-
|
|
29
|
+
- **Provider, model, tokens** (input + output), latency, cost
|
|
30
|
+
- **Google Gemini**: thinking tokens (2.5 models), tool tokens, cached tokens
|
|
31
|
+
- **Anthropic**: cache creation + read tokens
|
|
32
|
+
- **OpenAI**: reasoning tokens (o1/o3/o4), cached tokens
|
|
33
|
+
- **Caller file, function, and line number**
|
|
34
|
+
- **Auto-flush on process exit** via `process.on('beforeExit')`, `SIGINT`, and `SIGTERM`
|
|
55
35
|
|
|
56
|
-
|
|
57
|
-
await openai.chat.completions.create({
|
|
58
|
-
model: "gpt-4o",
|
|
59
|
-
messages: [...],
|
|
60
|
-
llmtracer: { tags: { feature: "chat", user_id: req.user.id } }
|
|
61
|
-
});
|
|
62
|
-
```
|
|
36
|
+
## Environment Variable Pattern
|
|
63
37
|
|
|
64
|
-
|
|
38
|
+
```typescript
|
|
39
|
+
import llmtracer from '@llmtracer/sdk';
|
|
65
40
|
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
messages: [...],
|
|
70
|
-
llmtracer: { tags: { customer: req.tenant.name, feature: "search" } }
|
|
41
|
+
llmtracer.init({
|
|
42
|
+
apiKey: process.env.LLMTRACER_API_KEY,
|
|
43
|
+
debug: true, // prints token counts to console
|
|
71
44
|
});
|
|
72
45
|
```
|
|
73
46
|
|
|
74
|
-
|
|
47
|
+
## Trace Context and Tags
|
|
75
48
|
|
|
76
|
-
```
|
|
77
|
-
await
|
|
78
|
-
|
|
79
|
-
messages: [...],
|
|
80
|
-
llmtracer: { tags: { conversation_id: sessionId, feature: "chat" } }
|
|
49
|
+
```typescript
|
|
50
|
+
await llmtracer.trace({ tags: { feature: 'chat', user_id: 'u_sarah' } }, async () => {
|
|
51
|
+
const response = await openai.chat.completions.create({ ... });
|
|
81
52
|
});
|
|
82
53
|
```
|
|
83
54
|
|
|
84
|
-
|
|
55
|
+
Tags appear in the dashboard's Breakdown page and Top Tags card. Use them to answer questions like "which user costs the most?" or "which feature should I optimize?"
|
|
85
56
|
|
|
86
|
-
|
|
87
|
-
const tracer = new LLMTracer({
|
|
88
|
-
apiKey: "lt_...",
|
|
89
|
-
});
|
|
57
|
+
### Tagging Patterns
|
|
90
58
|
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
59
|
+
| Pattern | Tag | Example |
|
|
60
|
+
|---------|-----|---------|
|
|
61
|
+
| Track cost by feature | `feature` | `"chat"`, `"search"`, `"summarize"` |
|
|
62
|
+
| Track cost by user | `user_id` | `"u_sarah"`, `"u_mike"` |
|
|
63
|
+
| Track cost by customer (B2B) | `customer` | `"acme-corp"`, `"initech"` |
|
|
64
|
+
| Track cost by conversation | `conversation_id` | `"conv_abc123"` |
|
|
65
|
+
| Track environment | `env` | `"production"`, `"staging"` |
|
|
95
66
|
|
|
96
|
-
|
|
67
|
+
## Supported Providers
|
|
68
|
+
|
|
69
|
+
| Provider | Package | Auto-patched |
|
|
70
|
+
|----------|---------|-------------|
|
|
71
|
+
| OpenAI | `openai` | ✅ |
|
|
72
|
+
| Anthropic | `@anthropic-ai/sdk` | ✅ |
|
|
73
|
+
| Google Gemini | `@google/genai` | ✅ |
|
|
97
74
|
|
|
98
75
|
## Serverless Usage
|
|
99
76
|
|
|
100
|
-
|
|
77
|
+
Auto-flush handles graceful shutdown in long-running processes. For serverless environments (Lambda, Cloud Functions, etc.), flush before returning:
|
|
101
78
|
|
|
102
79
|
```typescript
|
|
103
80
|
export async function handler(event) {
|
|
104
81
|
const response = await openai.chat.completions.create({ ... });
|
|
105
|
-
await
|
|
82
|
+
await llmtracer.flush();
|
|
106
83
|
return response;
|
|
107
84
|
}
|
|
108
85
|
```
|
|
109
86
|
|
|
110
|
-
##
|
|
87
|
+
## Debug Mode
|
|
111
88
|
|
|
112
|
-
|
|
89
|
+
Enable `debug: true` to print token counts to the console:
|
|
113
90
|
|
|
114
91
|
```typescript
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
});
|
|
123
|
-
});
|
|
92
|
+
llmtracer.init({ apiKey: 'lt_...', debug: true });
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
```
|
|
96
|
+
[llmtracer] openai gpt-4o | 1,247 in → 384 out | $0.0094 | 1.2s
|
|
97
|
+
[llmtracer] anthropic claude-sonnet-4-5 | 2,100 in → 512 out (cache_read: 1,800) | $0.0031 | 0.8s
|
|
98
|
+
[llmtracer] google gemini-2.5-pro | 900 in → 280 out (thinking: 1,420) | $0.0067 | 2.1s
|
|
124
99
|
```
|
|
125
100
|
|
|
126
101
|
## Streaming Support
|
|
@@ -129,8 +104,8 @@ Streaming calls are instrumented automatically. Token counts are captured from t
|
|
|
129
104
|
|
|
130
105
|
```typescript
|
|
131
106
|
const stream = await openai.chat.completions.create({
|
|
132
|
-
model:
|
|
133
|
-
messages: [{ role:
|
|
107
|
+
model: 'gpt-4o',
|
|
108
|
+
messages: [{ role: 'user', content: 'Hello' }],
|
|
134
109
|
stream: true,
|
|
135
110
|
});
|
|
136
111
|
|
|
@@ -149,47 +124,18 @@ for await (const chunk of stream) {
|
|
|
149
124
|
| `flushIntervalMs` | `number` | `10000` | Auto-flush interval in milliseconds |
|
|
150
125
|
| `maxQueueSize` | `number` | `10000` | Max events in queue before dropping oldest |
|
|
151
126
|
| `maxRetries` | `number` | `3` | Max retry attempts for failed flushes |
|
|
152
|
-
| `retryBaseMs` | `number` | `1000` | Base delay for exponential backoff |
|
|
153
127
|
| `sampleRate` | `number` | `1.0` | Sampling rate (0.0-1.0). `1.0` captures everything |
|
|
154
|
-
| `capturePrompt` | `boolean` | `false` | Whether to capture full prompt content |
|
|
155
128
|
| `debug` | `boolean` | `false` | Enable debug logging to console |
|
|
156
|
-
| `onFlush` | `function` | `null` | Callback after each flush with stats |
|
|
157
|
-
| `onError` | `function` | `null` | Callback on transport errors |
|
|
158
|
-
|
|
159
|
-
## API Reference
|
|
160
|
-
|
|
161
|
-
### `new LLMTracer(config)`
|
|
162
|
-
|
|
163
|
-
Create a new tracer instance. See [Configuration](#configuration) for options.
|
|
164
|
-
|
|
165
|
-
### `tracer.instrumentOpenAI(client, options?)`
|
|
166
|
-
|
|
167
|
-
Instrument an OpenAI client instance. All subsequent `chat.completions.create` calls (streaming and non-streaming) will be tracked automatically.
|
|
168
|
-
|
|
169
|
-
- `client` -- an OpenAI client instance
|
|
170
|
-
- `options.tags` -- key-value pairs attached to every event (e.g. `{ env: "production" }`)
|
|
171
|
-
|
|
172
|
-
### `tracer.flush(): Promise<void>`
|
|
173
|
-
|
|
174
|
-
Flush all buffered events to the backend. Call this in serverless environments before the function returns.
|
|
175
|
-
|
|
176
|
-
### `tracer.trace(traceId, fn): Promise<void>`
|
|
177
|
-
|
|
178
|
-
Track an agentic workflow. All LLM calls within the callback are grouped under the given `traceId`. Use `t.phase(name, fn)` inside the callback to label phases.
|
|
179
|
-
|
|
180
|
-
### `tracer.shutdown(): Promise<void>`
|
|
181
|
-
|
|
182
|
-
Flush remaining events and stop the auto-flush timer. Call this on graceful shutdown.
|
|
183
129
|
|
|
184
130
|
## Reliability
|
|
185
131
|
|
|
186
132
|
The SDK is designed to never interfere with your application:
|
|
187
133
|
|
|
188
|
-
- **Never throws**
|
|
189
|
-
- **Batching**
|
|
190
|
-
- **Retry with backoff**
|
|
191
|
-
- **Circuit breaker**
|
|
192
|
-
- **Queue overflow**
|
|
134
|
+
- **Never throws** — all internal errors are swallowed silently (enable `debug: true` for visibility)
|
|
135
|
+
- **Batching** — events are queued and sent in configurable batches
|
|
136
|
+
- **Retry with backoff** — failed flushes are retried with exponential backoff and jitter
|
|
137
|
+
- **Circuit breaker** — after 5 consecutive failures, stops attempting for 60 seconds
|
|
138
|
+
- **Queue overflow** — drops oldest events when the queue exceeds `maxQueueSize`
|
|
193
139
|
|
|
194
140
|
## License
|
|
195
141
|
|
package/dist/cjs/config.d.ts
CHANGED
package/dist/cjs/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM;;;;;;CAMlB,CAAC"}
|
package/dist/cjs/config.js
CHANGED
package/dist/cjs/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":";;;AAAa,QAAA,MAAM,GAAG;IACpB,MAAM,EAAE,EAAE;IACV,QAAQ,EAAE,+DAA+D;IACzE,KAAK,EAAE,KAAK;IACZ,OAAO,EAAE,KAAK;CACf,CAAC"}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":";;;AAAa,QAAA,MAAM,GAAG;IACpB,MAAM,EAAE,EAAE;IACV,SAAS,EAAE,EAAE;IACb,QAAQ,EAAE,+DAA+D;IACzE,KAAK,EAAE,KAAK;IACZ,OAAO,EAAE,KAAK;CACf,CAAC"}
|
package/dist/cjs/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { config } from './config';
|
|
2
2
|
import * as transport from './transport';
|
|
3
3
|
import * as patcher from './patcher';
|
|
4
|
-
export declare const __version__ = "2.0.
|
|
4
|
+
export declare const __version__ = "2.0.9";
|
|
5
5
|
export declare function init(options?: {
|
|
6
6
|
apiKey?: string;
|
|
7
7
|
debug?: boolean;
|
package/dist/cjs/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AAGrC,eAAO,MAAM,WAAW,UAAU,CAAC;AAEnC,wBAAgB,IAAI,CAAC,OAAO,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CA8B5F;AAED,wBAAgB,KAAK,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAS5F;AAED,wBAAsB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAM3C;AAGD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,SAAS,IAAI,UAAU,EAAE,MAAM,IAAI,OAAO,EAAE,CAAC;AAG3E,QAAA,MAAM,SAAS;;;;;CAAsC,CAAC;AACtD,eAAe,SAAS,CAAC"}
|
package/dist/cjs/index.js
CHANGED
|
@@ -44,13 +44,20 @@ const transport = __importStar(require("./transport"));
|
|
|
44
44
|
exports._transport = transport;
|
|
45
45
|
const patcher = __importStar(require("./patcher"));
|
|
46
46
|
exports._patcher = patcher;
|
|
47
|
-
|
|
47
|
+
const crypto_1 = require("crypto");
|
|
48
|
+
exports.__version__ = '2.0.9';
|
|
48
49
|
function init(options) {
|
|
49
50
|
try {
|
|
50
51
|
config_1.config.apiKey = options?.apiKey || process.env.LLMTRACER_API_KEY || '';
|
|
51
52
|
config_1.config.debug = options?.debug || false;
|
|
52
53
|
config_1.config.endpoint = options?.endpoint || 'https://us-central1-llmtracer-alt.cloudfunctions.net/v1Events';
|
|
53
54
|
config_1.config.enabled = Boolean(config_1.config.apiKey);
|
|
55
|
+
try {
|
|
56
|
+
config_1.config.sessionId = (0, crypto_1.randomUUID)();
|
|
57
|
+
}
|
|
58
|
+
catch {
|
|
59
|
+
config_1.config.sessionId = '';
|
|
60
|
+
}
|
|
54
61
|
if (!config_1.config.enabled) {
|
|
55
62
|
if (config_1.config.debug)
|
|
56
63
|
console.log('[llmtracer] No API key found. Tracing disabled.');
|
|
@@ -60,6 +67,8 @@ function init(options) {
|
|
|
60
67
|
patcher.patchOpenAI(config_1.config.debug);
|
|
61
68
|
patcher.patchAnthropic(config_1.config.debug);
|
|
62
69
|
patcher.patchGoogle(config_1.config.debug);
|
|
70
|
+
if (config_1.config.debug)
|
|
71
|
+
console.log(`[llmtracer] Session: ${config_1.config.sessionId}`);
|
|
63
72
|
if (config_1.config.debug)
|
|
64
73
|
console.log('[llmtracer] Ready. Events \u2192 dashboard.llmtracer.com');
|
|
65
74
|
}
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,oBA8BC;AAED,sBASC;AAED,sBAMC;AAzDD,qCAAkC;AA4D+B,wFA5DxD,eAAM,OA4DyD;AA3DxE,mDAAqC;AACrC,uDAAyC;AA0DE,+BAAU;AAzDrD,mDAAqC;AAyDjB,2BAAQ;AAxD5B,mCAAoC;AAEvB,QAAA,WAAW,GAAG,OAAO,CAAC;AAEnC,SAAgB,IAAI,CAAC,OAAiE;IACpF,IAAI,CAAC;QACH,eAAM,CAAC,MAAM,GAAG,OAAO,EAAE,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,EAAE,CAAC;QACvE,eAAM,CAAC,KAAK,GAAG,OAAO,EAAE,KAAK,IAAI,KAAK,CAAC;QACvC,eAAM,CAAC,QAAQ,GAAG,OAAO,EAAE,QAAQ,IAAI,+DAA+D,CAAC;QACvG,eAAM,CAAC,OAAO,GAAG,OAAO,CAAC,eAAM,CAAC,MAAM,CAAC,CAAC;QAExC,IAAI,CAAC;YACH,eAAM,CAAC,SAAS,GAAG,IAAA,mBAAU,GAAE,CAAC;QAClC,CAAC;QAAC,MAAM,CAAC;YACP,eAAM,CAAC,SAAS,GAAG,EAAE,CAAC;QACxB,CAAC;QAED,IAAI,CAAC,eAAM,CAAC,OAAO,EAAE,CAAC;YACpB,IAAI,eAAM,CAAC,KAAK;gBAAE,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;YACjF,OAAO;QACT,CAAC;QAED,SAAS,CAAC,KAAK,EAAE,CAAC;QAElB,OAAO,CAAC,WAAW,CAAC,eAAM,CAAC,KAAK,CAAC,CAAC;QAClC,OAAO,CAAC,cAAc,CAAC,eAAM,CAAC,KAAK,CAAC,CAAC;QACrC,OAAO,CAAC,WAAW,CAAC,eAAM,CAAC,KAAK,CAAC,CAAC;QAElC,IAAI,eAAM,CAAC,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,wBAAwB,eAAM,CAAC,SAAS,EAAE,CAAC,CAAC;QAC1E,IAAI,eAAM,CAAC,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,0DAA0D,CAAC,CAAC;IAC5F,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,eAAM,CAAC,OAAO,GAAG,KAAK,CAAC;QACvB,IAAI,eAAM,CAAC,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,qBAAqB,CAAC,CAAC;IACtF,CAAC;AACH,CAAC;AAED,SAAgB,KAAK,CAAI,IAAyB,EAAE,EAAwB;IAC1E,IAAI,CAAC;QACH,IAAI,CAAC,eAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,EAAE,EAAE,CAAC;QACd,CAAC;QACD,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,EAAE,CAAC;IACd,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,KAAK;IACzB,IAAI,CAAC;QACH,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,2BAA2B;IAC7B,CAAC;AACH,CAAC;AAKD,4DAA4D;AAC5D,MAAM,SAAS,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAX,mBAAW,EAAE,CAAC;AACtD,kBAAe,SAAS,CAAC"}
|
package/dist/cjs/schema.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAc,MAAM,WAAW,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAc,MAAM,WAAW,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAMzC,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,YAAY,GAAG,SAAS,CAAC;IAClC,MAAM,EAAE,UAAU,CAAC,OAAO,aAAa,CAAC,CAAC;IACzC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,WAAW,CAMvE;AAED,wBAAgB,UAAU,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CA2BvH;AAwCD,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAyB7D"}
|
package/dist/cjs/schema.js
CHANGED
|
@@ -6,7 +6,8 @@ exports.printCapture = printCapture;
|
|
|
6
6
|
const crypto_1 = require("crypto");
|
|
7
7
|
const context_1 = require("./context");
|
|
8
8
|
const caller_1 = require("./caller");
|
|
9
|
-
const
|
|
9
|
+
const config_1 = require("./config");
|
|
10
|
+
const SDK_VERSION = '2.0.9';
|
|
10
11
|
const SDK_LANGUAGE = 'typescript';
|
|
11
12
|
function buildContext(provider, args) {
|
|
12
13
|
return {
|
|
@@ -25,6 +26,9 @@ function buildEvent(contextData, responseData, latencyMs) {
|
|
|
25
26
|
...responseData,
|
|
26
27
|
...contextData.caller,
|
|
27
28
|
};
|
|
29
|
+
if (config_1.config.sessionId) {
|
|
30
|
+
event.session_id = config_1.config.sessionId;
|
|
31
|
+
}
|
|
28
32
|
if (contextData.context) {
|
|
29
33
|
event.trace_id = contextData.context.traceId;
|
|
30
34
|
event.span_id = contextData.context.spanId;
|
package/dist/cjs/schema.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/schema.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/schema.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/config.d.ts
CHANGED
package/dist/esm/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM;;;;;;CAMlB,CAAC"}
|
package/dist/esm/config.js
CHANGED
package/dist/esm/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,MAAM,EAAE,EAAE;IACV,QAAQ,EAAE,+DAA+D;IACzE,KAAK,EAAE,KAAK;IACZ,OAAO,EAAE,KAAK;CACf,CAAC"}
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,MAAM,EAAE,EAAE;IACV,SAAS,EAAE,EAAE;IACb,QAAQ,EAAE,+DAA+D;IACzE,KAAK,EAAE,KAAK;IACZ,OAAO,EAAE,KAAK;CACf,CAAC"}
|
package/dist/esm/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { config } from './config';
|
|
2
2
|
import * as transport from './transport';
|
|
3
3
|
import * as patcher from './patcher';
|
|
4
|
-
export declare const __version__ = "2.0.
|
|
4
|
+
export declare const __version__ = "2.0.9";
|
|
5
5
|
export declare function init(options?: {
|
|
6
6
|
apiKey?: string;
|
|
7
7
|
debug?: boolean;
|
package/dist/esm/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AAGrC,eAAO,MAAM,WAAW,UAAU,CAAC;AAEnC,wBAAgB,IAAI,CAAC,OAAO,CAAC,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CA8B5F;AAED,wBAAgB,KAAK,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAS5F;AAED,wBAAsB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAM3C;AAGD,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,SAAS,IAAI,UAAU,EAAE,MAAM,IAAI,OAAO,EAAE,CAAC;AAG3E,QAAA,MAAM,SAAS;;;;;CAAsC,CAAC;AACtD,eAAe,SAAS,CAAC"}
|
package/dist/esm/index.js
CHANGED
|
@@ -2,13 +2,20 @@ import { config } from './config';
|
|
|
2
2
|
import * as context from './context';
|
|
3
3
|
import * as transport from './transport';
|
|
4
4
|
import * as patcher from './patcher';
|
|
5
|
-
|
|
5
|
+
import { randomUUID } from 'crypto';
|
|
6
|
+
export const __version__ = '2.0.9';
|
|
6
7
|
export function init(options) {
|
|
7
8
|
try {
|
|
8
9
|
config.apiKey = options?.apiKey || process.env.LLMTRACER_API_KEY || '';
|
|
9
10
|
config.debug = options?.debug || false;
|
|
10
11
|
config.endpoint = options?.endpoint || 'https://us-central1-llmtracer-alt.cloudfunctions.net/v1Events';
|
|
11
12
|
config.enabled = Boolean(config.apiKey);
|
|
13
|
+
try {
|
|
14
|
+
config.sessionId = randomUUID();
|
|
15
|
+
}
|
|
16
|
+
catch {
|
|
17
|
+
config.sessionId = '';
|
|
18
|
+
}
|
|
12
19
|
if (!config.enabled) {
|
|
13
20
|
if (config.debug)
|
|
14
21
|
console.log('[llmtracer] No API key found. Tracing disabled.');
|
|
@@ -18,6 +25,8 @@ export function init(options) {
|
|
|
18
25
|
patcher.patchOpenAI(config.debug);
|
|
19
26
|
patcher.patchAnthropic(config.debug);
|
|
20
27
|
patcher.patchGoogle(config.debug);
|
|
28
|
+
if (config.debug)
|
|
29
|
+
console.log(`[llmtracer] Session: ${config.sessionId}`);
|
|
21
30
|
if (config.debug)
|
|
22
31
|
console.log('[llmtracer] Ready. Events \u2192 dashboard.llmtracer.com');
|
|
23
32
|
}
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,KAAK,SAAS,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEpC,MAAM,CAAC,MAAM,WAAW,GAAG,OAAO,CAAC;AAEnC,MAAM,UAAU,IAAI,CAAC,OAAiE;IACpF,IAAI,CAAC;QACH,MAAM,CAAC,MAAM,GAAG,OAAO,EAAE,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,EAAE,CAAC;QACvE,MAAM,CAAC,KAAK,GAAG,OAAO,EAAE,KAAK,IAAI,KAAK,CAAC;QACvC,MAAM,CAAC,QAAQ,GAAG,OAAO,EAAE,QAAQ,IAAI,+DAA+D,CAAC;QACvG,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAExC,IAAI,CAAC;YACH,MAAM,CAAC,SAAS,GAAG,UAAU,EAAE,CAAC;QAClC,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,CAAC,SAAS,GAAG,EAAE,CAAC;QACxB,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,IAAI,MAAM,CAAC,KAAK;gBAAE,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;YACjF,OAAO;QACT,CAAC;QAED,SAAS,CAAC,KAAK,EAAE,CAAC;QAElB,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAClC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACrC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAElC,IAAI,MAAM,CAAC,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,wBAAwB,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;QAC1E,IAAI,MAAM,CAAC,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,0DAA0D,CAAC,CAAC;IAC5F,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;QACvB,IAAI,MAAM,CAAC,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,qBAAqB,CAAC,CAAC;IACtF,CAAC;AACH,CAAC;AAED,MAAM,UAAU,KAAK,CAAI,IAAyB,EAAE,EAAwB;IAC1E,IAAI,CAAC;QACH,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO,EAAE,EAAE,CAAC;QACd,CAAC;QACD,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,EAAE,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,KAAK;IACzB,IAAI,CAAC;QACH,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,2BAA2B;IAC7B,CAAC;AACH,CAAC;AAED,4CAA4C;AAC5C,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,SAAS,IAAI,UAAU,EAAE,MAAM,IAAI,OAAO,EAAE,CAAC;AAE3E,4DAA4D;AAC5D,MAAM,SAAS,GAAG,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;AACtD,eAAe,SAAS,CAAC"}
|
package/dist/esm/schema.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAc,MAAM,WAAW,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/schema.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAc,MAAM,WAAW,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAMzC,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,YAAY,GAAG,SAAS,CAAC;IAClC,MAAM,EAAE,UAAU,CAAC,OAAO,aAAa,CAAC,CAAC;IACzC,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,WAAW,CAMvE;AAED,wBAAgB,UAAU,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CA2BvH;AAwCD,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAyB7D"}
|
package/dist/esm/schema.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { randomUUID } from 'crypto';
|
|
2
2
|
import { getCurrent } from './context';
|
|
3
3
|
import { getCallerInfo } from './caller';
|
|
4
|
-
|
|
4
|
+
import { config } from './config';
|
|
5
|
+
const SDK_VERSION = '2.0.9';
|
|
5
6
|
const SDK_LANGUAGE = 'typescript';
|
|
6
7
|
export function buildContext(provider, args) {
|
|
7
8
|
return {
|
|
@@ -20,6 +21,9 @@ export function buildEvent(contextData, responseData, latencyMs) {
|
|
|
20
21
|
...responseData,
|
|
21
22
|
...contextData.caller,
|
|
22
23
|
};
|
|
24
|
+
if (config.sessionId) {
|
|
25
|
+
event.session_id = config.sessionId;
|
|
26
|
+
}
|
|
23
27
|
if (contextData.context) {
|
|
24
28
|
event.trace_id = contextData.context.traceId;
|
|
25
29
|
event.span_id = contextData.context.spanId;
|
package/dist/esm/schema.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAgB,UAAU,EAAE,MAAM,WAAW,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/schema.ts"],"names":[],"mappings":"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"}
|