@tracelog/lib 2.2.1-rc.82.7 → 2.2.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.
- package/README.md +2 -47
- package/dist/browser/tracelog.esm.js +147 -163
- package/dist/browser/tracelog.esm.js.map +1 -1
- package/dist/browser/tracelog.js +1 -1
- package/dist/browser/tracelog.js.map +1 -1
- package/dist/public-api.cjs +8 -28
- package/dist/public-api.cjs.map +1 -1
- package/dist/public-api.d.mts +3 -19
- package/dist/public-api.d.ts +3 -19
- package/dist/public-api.js +8 -28
- package/dist/public-api.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -28,11 +28,10 @@ npm install @tracelog/lib
|
|
|
28
28
|
import { tracelog } from '@tracelog/lib';
|
|
29
29
|
|
|
30
30
|
// Standalone mode (no backend)
|
|
31
|
-
|
|
32
|
-
console.log('Session:', sessionId);
|
|
31
|
+
await tracelog.init();
|
|
33
32
|
|
|
34
33
|
// With TraceLog SaaS
|
|
35
|
-
|
|
34
|
+
await tracelog.init({
|
|
36
35
|
integrations: {
|
|
37
36
|
tracelog: { projectId: 'your-project-id' }
|
|
38
37
|
}
|
|
@@ -416,50 +415,6 @@ Transform events dynamically at runtime before they're sent to integrations. Use
|
|
|
416
415
|
- Custom backend receives **transformed events**
|
|
417
416
|
- Independent error handling and retry per integration
|
|
418
417
|
|
|
419
|
-
**Event Listeners and Transformers:**
|
|
420
|
-
|
|
421
|
-
Event listeners (`tracelog.on('event', ...)`) receive **original events**, not transformed events. Transformers only affect data sent to backends.
|
|
422
|
-
|
|
423
|
-
```typescript
|
|
424
|
-
tracelog.setTransformer('beforeSend', (data) => {
|
|
425
|
-
if ('type' in data) {
|
|
426
|
-
return { ...data, enrichedField: 'value' };
|
|
427
|
-
}
|
|
428
|
-
return data;
|
|
429
|
-
});
|
|
430
|
-
|
|
431
|
-
tracelog.on('event', (ev) => {
|
|
432
|
-
console.log(ev.enrichedField); // undefined - listeners receive original events
|
|
433
|
-
});
|
|
434
|
-
```
|
|
435
|
-
|
|
436
|
-
**Workaround for GTM/Third-Party Relay:**
|
|
437
|
-
|
|
438
|
-
If you need to forward enriched events to GTM or other systems, apply the transformation in your listener:
|
|
439
|
-
|
|
440
|
-
```typescript
|
|
441
|
-
// Define enrichment function once
|
|
442
|
-
const enrichEvent = (event) => ({
|
|
443
|
-
...event,
|
|
444
|
-
appVersion: '1.0.0',
|
|
445
|
-
environment: 'production'
|
|
446
|
-
});
|
|
447
|
-
|
|
448
|
-
// Use in transformer (for backend)
|
|
449
|
-
tracelog.setTransformer('beforeSend', (data) => {
|
|
450
|
-
if ('type' in data) {
|
|
451
|
-
return enrichEvent(data);
|
|
452
|
-
}
|
|
453
|
-
return data;
|
|
454
|
-
});
|
|
455
|
-
|
|
456
|
-
// Use in listener (for GTM relay)
|
|
457
|
-
tracelog.on('event', (event) => {
|
|
458
|
-
const enrichedEvent = enrichEvent(event);
|
|
459
|
-
window.dataLayer?.push({ event: 'tracelog_event', ...enrichedEvent });
|
|
460
|
-
});
|
|
461
|
-
```
|
|
462
|
-
|
|
463
418
|
### Available Hooks
|
|
464
419
|
|
|
465
420
|
#### `beforeSend` - Per-Event Transformation
|