@mastra/observability 1.0.0-beta.12 → 1.0.0-beta.13
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/CHANGELOG.md +29 -0
- package/dist/exporters/base.d.ts +10 -0
- package/dist/exporters/base.d.ts.map +1 -1
- package/dist/exporters/cloud.d.ts +7 -1
- package/dist/exporters/cloud.d.ts.map +1 -1
- package/dist/exporters/default.d.ts +8 -2
- package/dist/exporters/default.d.ts.map +1 -1
- package/dist/exporters/tracking.d.ts +16 -0
- package/dist/exporters/tracking.d.ts.map +1 -1
- package/dist/index.cjs +111 -40
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +111 -40
- package/dist/index.js.map +1 -1
- package/dist/instances/base.d.ts +9 -0
- package/dist/instances/base.d.ts.map +1 -1
- package/package.json +4 -4
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,34 @@
|
|
|
1
1
|
# @mastra/observability
|
|
2
2
|
|
|
3
|
+
## 1.0.0-beta.13
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Added `flush()` method to observability exporters and instances for serverless environments ([#12003](https://github.com/mastra-ai/mastra/pull/12003))
|
|
8
|
+
|
|
9
|
+
This feature allows flushing buffered spans without shutting down the exporter, which is useful in serverless environments like Vercel's fluid compute where runtime instances can be reused across multiple requests.
|
|
10
|
+
|
|
11
|
+
**New API:**
|
|
12
|
+
|
|
13
|
+
```typescript
|
|
14
|
+
// Flush all exporters via the observability instance
|
|
15
|
+
const observability = mastra.getObservability();
|
|
16
|
+
await observability.flush();
|
|
17
|
+
|
|
18
|
+
// Or flush individual exporters
|
|
19
|
+
const exporters = observability.getExporters();
|
|
20
|
+
await exporters[0].flush();
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
**Why this matters:**
|
|
24
|
+
|
|
25
|
+
In serverless environments, you may need to ensure all spans are exported before the runtime instance is terminated, while keeping the exporter active for future requests. Unlike shutdown(), flush() does not release resources or prevent future exports.
|
|
26
|
+
|
|
27
|
+
Closes #11372
|
|
28
|
+
|
|
29
|
+
- Updated dependencies [[`1dbd8c7`](https://github.com/mastra-ai/mastra/commit/1dbd8c729fb6536ec52f00064d76b80253d346e9), [`c59e13c`](https://github.com/mastra-ai/mastra/commit/c59e13c7688284bd96b2baee3e314335003548de), [`f9a2509`](https://github.com/mastra-ai/mastra/commit/f9a25093ea72d210a5e52cfcb3bcc8b5e02dc25c), [`7a010c5`](https://github.com/mastra-ai/mastra/commit/7a010c56b846a313a49ae42fccd3d8de2b9f292d)]:
|
|
30
|
+
- @mastra/core@1.0.0-beta.24
|
|
31
|
+
|
|
3
32
|
## 1.0.0-beta.12
|
|
4
33
|
|
|
5
34
|
### Patch Changes
|
package/dist/exporters/base.d.ts
CHANGED
|
@@ -141,6 +141,16 @@ export declare abstract class BaseExporter implements ObservabilityExporter {
|
|
|
141
141
|
scorerName: string;
|
|
142
142
|
metadata?: Record<string, any>;
|
|
143
143
|
}): Promise<void>;
|
|
144
|
+
/**
|
|
145
|
+
* Force flush any buffered/queued spans without shutting down the exporter.
|
|
146
|
+
*
|
|
147
|
+
* This is useful in serverless environments where you need to ensure spans
|
|
148
|
+
* are exported before the runtime instance is terminated, while keeping
|
|
149
|
+
* the exporter active for future requests.
|
|
150
|
+
*
|
|
151
|
+
* Default implementation is a no-op. Override to add flush logic.
|
|
152
|
+
*/
|
|
153
|
+
flush(): Promise<void>;
|
|
144
154
|
/**
|
|
145
155
|
* Shutdown the exporter and clean up resources
|
|
146
156
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/exporters/base.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAiB,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,4BAA4B,CAAC;AAEpC;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,sCAAsC;IACtC,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,mFAAmF;IACnF,QAAQ,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IAC1D;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;CAC3C;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,8BAAsB,YAAa,YAAW,qBAAqB;;IACjE,wDAAwD;IACxD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,6BAA6B;IAC7B,SAAS,CAAC,MAAM,EAAE,aAAa,CAAC;IAEhC,oDAAoD;IACpD,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,kBAAkB,CAAC;IAKlD,uCAAuC;IACvC,IAAI,UAAU,IAAI,OAAO,CAExB;IAED;;OAEG;gBACS,MAAM,GAAE,kBAAuB;IAQ3C;;OAEG;IACH,WAAW,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;IAMxC;;OAEG;IACH,OAAO,CAAC,eAAe;IAqBvB;;;;OAIG;IACH,SAAS,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAK3C;;;;;;;;;OASG;cACa,kBAAkB,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;IAoB9E;;;;;;OAMG;IACG,kBAAkB,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ5D;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,mBAAmB,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAE1E;;OAEG;IACH,IAAI,CAAC,CAAC,QAAQ,EAAE,mBAAmB,GAAG,IAAI;IAE1C;;OAEG;IACH,eAAe,CAAC,CAAC,KAAK,EAAE;QACtB,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KAChC,GAAG,OAAO,CAAC,IAAI,CAAC;IAEjB;;;;OAIG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAGhC"}
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/exporters/base.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAiB,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EACV,YAAY,EACZ,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACpB,MAAM,4BAA4B,CAAC;AAEpC;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,sCAAsC;IACtC,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,mFAAmF;IACnF,QAAQ,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IAC1D;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;CAC3C;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,8BAAsB,YAAa,YAAW,qBAAqB;;IACjE,wDAAwD;IACxD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAEtB,6BAA6B;IAC7B,SAAS,CAAC,MAAM,EAAE,aAAa,CAAC;IAEhC,oDAAoD;IACpD,SAAS,CAAC,QAAQ,CAAC,UAAU,EAAE,kBAAkB,CAAC;IAKlD,uCAAuC;IACvC,IAAI,UAAU,IAAI,OAAO,CAExB;IAED;;OAEG;gBACS,MAAM,GAAE,kBAAuB;IAQ3C;;OAEG;IACH,WAAW,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI;IAMxC;;OAEG;IACH,OAAO,CAAC,eAAe;IAqBvB;;;;OAIG;IACH,SAAS,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAK3C;;;;;;;;;OASG;cACa,kBAAkB,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;IAoB9E;;;;;;OAMG;IACG,kBAAkB,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ5D;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,mBAAmB,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAE1E;;OAEG;IACH,IAAI,CAAC,CAAC,QAAQ,EAAE,mBAAmB,GAAG,IAAI;IAE1C;;OAEG;IACH,eAAe,CAAC,CAAC,KAAK,EAAE;QACtB,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KAChC,GAAG,OAAO,CAAC,IAAI,CAAC;IAEjB;;;;;;;;OAQG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAI5B;;;;OAIG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAGhC"}
|
|
@@ -19,12 +19,18 @@ export declare class CloudExporter extends BaseExporter {
|
|
|
19
19
|
private formatSpan;
|
|
20
20
|
private shouldFlush;
|
|
21
21
|
private scheduleFlush;
|
|
22
|
-
private
|
|
22
|
+
private flushBuffer;
|
|
23
23
|
/**
|
|
24
24
|
* Uploads spans to cloud API using fetchWithRetry for all retry logic
|
|
25
25
|
*/
|
|
26
26
|
private batchUpload;
|
|
27
27
|
private resetBuffer;
|
|
28
|
+
/**
|
|
29
|
+
* Force flush any buffered spans without shutting down the exporter.
|
|
30
|
+
* This is useful in serverless environments where you need to ensure spans
|
|
31
|
+
* are exported before the runtime instance is terminated.
|
|
32
|
+
*/
|
|
33
|
+
flush(): Promise<void>;
|
|
28
34
|
shutdown(): Promise<void>;
|
|
29
35
|
}
|
|
30
36
|
//# sourceMappingURL=cloud.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cloud.d.ts","sourceRoot":"","sources":["../../src/exporters/cloud.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAmB,MAAM,4BAA4B,CAAC;AAEhF,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAEjD,MAAM,WAAW,mBAAoB,SAAQ,kBAAkB;IAC7D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IAGpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAgCD,qBAAa,aAAc,SAAQ,YAAY;IAC7C,IAAI,SAAyC;IAE7C,OAAO,CAAC,WAAW,CAAsB;IACzC,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,UAAU,CAA+B;gBAErC,MAAM,GAAE,mBAAwB;cA2B5B,mBAAmB,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBvE,OAAO,CAAC,WAAW;IAWnB,OAAO,CAAC,UAAU;IAsBlB,OAAO,CAAC,WAAW;IAiBnB,OAAO,CAAC,aAAa;YAoBP,
|
|
1
|
+
{"version":3,"file":"cloud.d.ts","sourceRoot":"","sources":["../../src/exporters/cloud.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAmB,MAAM,4BAA4B,CAAC;AAEhF,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AAEjD,MAAM,WAAW,mBAAoB,SAAQ,kBAAkB;IAC7D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IAGpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAgCD,qBAAa,aAAc,SAAQ,YAAY;IAC7C,IAAI,SAAyC;IAE7C,OAAO,CAAC,WAAW,CAAsB;IACzC,OAAO,CAAC,MAAM,CAAoB;IAClC,OAAO,CAAC,UAAU,CAA+B;gBAErC,MAAM,GAAE,mBAAwB;cA2B5B,mBAAmB,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBvE,OAAO,CAAC,WAAW;IAWnB,OAAO,CAAC,UAAU;IAsBlB,OAAO,CAAC,WAAW;IAiBnB,OAAO,CAAC,aAAa;YAoBP,WAAW;IA8CzB;;OAEG;YACW,WAAW;IAezB,OAAO,CAAC,WAAW;IAMnB;;;;OAIG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IActB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAkChC"}
|
|
@@ -76,14 +76,20 @@ export declare class DefaultExporter extends BaseExporter {
|
|
|
76
76
|
*/
|
|
77
77
|
private calculateRetryDelay;
|
|
78
78
|
/**
|
|
79
|
-
* Flushes the current buffer to storage with retry logic
|
|
79
|
+
* Flushes the current buffer to storage with retry logic (internal implementation)
|
|
80
80
|
*/
|
|
81
|
-
private
|
|
81
|
+
private flushBuffer;
|
|
82
82
|
/**
|
|
83
83
|
* Attempts to flush with exponential backoff retry logic
|
|
84
84
|
*/
|
|
85
85
|
private flushWithRetries;
|
|
86
86
|
_exportTracingEvent(event: TracingEvent): Promise<void>;
|
|
87
|
+
/**
|
|
88
|
+
* Force flush any buffered spans without shutting down the exporter.
|
|
89
|
+
* This is useful in serverless environments where you need to ensure spans
|
|
90
|
+
* are exported before the runtime instance is terminated.
|
|
91
|
+
*/
|
|
92
|
+
flush(): Promise<void>;
|
|
87
93
|
shutdown(): Promise<void>;
|
|
88
94
|
}
|
|
89
95
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../src/exporters/default.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAmB,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAErG,OAAO,KAAK,EAKV,sBAAsB,EACvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,UAAU,qBAAsB,SAAQ,kBAAkB;IACxD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,QAAQ,CAAC,EAAE,sBAAsB,GAAG,MAAM,CAAC;CAC5C;AAmED,qBAAa,eAAgB,SAAQ,YAAY;;IAC/C,IAAI,SAA2C;IAM/C,OAAO,CAAC,MAAM,CAAc;IAI5B,OAAO,CAAC,eAAe,CAA0B;gBAErC,MAAM,GAAE,qBAA0B;IAoC9C;;OAEG;IACG,IAAI,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBvD;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAe1B;;OAEG;IACH,OAAO,CAAC,YAAY;IAIpB;;OAEG;IACH,OAAO,CAAC,eAAe;IAOvB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAS9B;;OAEG;IACH,OAAO,CAAC,WAAW;IAgFnB;;OAEG;IACH,OAAO,CAAC,WAAW;IAsBnB;;OAEG;IACH,OAAO,CAAC,WAAW;IAiBnB;;OAEG;IACH,OAAO,CAAC,aAAa;IAarB;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAiC3B,OAAO,CAAC,iBAAiB;IAgDzB,OAAO,CAAC,iBAAiB;IAczB;;OAEG;YACW,mBAAmB;IAyCjC;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAgBnC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAoB7B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAI3B;;OAEG;YACW,
|
|
1
|
+
{"version":3,"file":"default.d.ts","sourceRoot":"","sources":["../../src/exporters/default.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAmB,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAErG,OAAO,KAAK,EAKV,sBAAsB,EACvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,UAAU,qBAAsB,SAAQ,kBAAkB;IACxD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,QAAQ,CAAC,EAAE,sBAAsB,GAAG,MAAM,CAAC;CAC5C;AAmED,qBAAa,eAAgB,SAAQ,YAAY;;IAC/C,IAAI,SAA2C;IAM/C,OAAO,CAAC,MAAM,CAAc;IAI5B,OAAO,CAAC,eAAe,CAA0B;gBAErC,MAAM,GAAE,qBAA0B;IAoC9C;;OAEG;IACG,IAAI,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBvD;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAe1B;;OAEG;IACH,OAAO,CAAC,YAAY;IAIpB;;OAEG;IACH,OAAO,CAAC,eAAe;IAOvB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAS9B;;OAEG;IACH,OAAO,CAAC,WAAW;IAgFnB;;OAEG;IACH,OAAO,CAAC,WAAW;IAsBnB;;OAEG;IACH,OAAO,CAAC,WAAW;IAiBnB;;OAEG;IACH,OAAO,CAAC,aAAa;IAarB;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAiC3B,OAAO,CAAC,iBAAiB;IAgDzB,OAAO,CAAC,iBAAiB;IAczB;;OAEG;YACW,mBAAmB;IAyCjC;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAgBnC;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAoB7B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAI3B;;OAEG;YACW,WAAW;IAsDzB;;OAEG;YACW,gBAAgB;IA+DxB,mBAAmB,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAyB7D;;;;OAIG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAStB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAYhC"}
|
|
@@ -435,6 +435,22 @@ export declare abstract class TrackingExporter<TRootData, TSpanData, TEventData,
|
|
|
435
435
|
* @returns The trace count
|
|
436
436
|
*/
|
|
437
437
|
protected traceMapSize(): number;
|
|
438
|
+
/**
|
|
439
|
+
* Hook called by flush() to perform vendor-specific flush logic.
|
|
440
|
+
* Override to send buffered data to the vendor's API.
|
|
441
|
+
*
|
|
442
|
+
* Unlike _postShutdown(), this method should NOT release resources,
|
|
443
|
+
* as the exporter will continue to be used after flushing.
|
|
444
|
+
*/
|
|
445
|
+
protected _flush(): Promise<void>;
|
|
446
|
+
/**
|
|
447
|
+
* Force flush any buffered data without shutting down the exporter.
|
|
448
|
+
* This is useful in serverless environments where you need to ensure spans
|
|
449
|
+
* are exported before the runtime instance is terminated.
|
|
450
|
+
*
|
|
451
|
+
* Subclasses should override _flush() to implement vendor-specific flush logic.
|
|
452
|
+
*/
|
|
453
|
+
flush(): Promise<void>;
|
|
438
454
|
/**
|
|
439
455
|
* Hook called at the start of shutdown, before cancelling timers and aborting spans.
|
|
440
456
|
* Override to perform vendor-specific pre-shutdown tasks.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tracking.d.ts","sourceRoot":"","sources":["../../src/exporters/tracking.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tracking.d.ts","sourceRoot":"","sources":["../../src/exporters/tracking.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC/F,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,iCAAiC;IACjC,KAAK,EAAE,YAAY,CAAC;IACpB,wEAAwE;IACxE,UAAU,EAAE,MAAM,GAAG,MAAM,CAAC;IAC5B,4DAA4D;IAC5D,QAAQ,EAAE,MAAM,CAAC;IACjB,iCAAiC;IACjC,QAAQ,EAAE,IAAI,CAAC;CAChB;AAED,MAAM,WAAW,sBAAuB,SAAQ,kBAAkB;IAChE;;;OAGG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAE/B;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAE7B;;;;OAIG;IACH,uBAAuB,CAAC,EAAE,MAAM,CAAC;IAEjC;;;;;OAKG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;;;;;;;GAQG;AACH,qBAAa,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS;;IAwBhE,iEAAiE;IACjE,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC;;IAezB;;;OAGG;IACH,OAAO,IAAI,OAAO;IAIlB;;;;OAIG;IACH,OAAO,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,SAAS,CAAA;KAAE,GAAG,IAAI;IAM5D;;;OAGG;IACH,OAAO,IAAI,SAAS,GAAG,SAAS;IAIhC;;;;OAIG;IACH,eAAe,IAAI,OAAO;IAI1B;;;;OAIG;IACH,qBAAqB,IAAI,IAAI;IAI7B;;;;OAIG;IACH,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAIhD;;;;OAIG;IACH,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAInC;;;;OAIG;IACH,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAQnC;;;;;;OAMG;IACH,iBAAiB,CAAC,IAAI,EAAE;QACtB,KAAK,EAAE,YAAY,CAAC;QACpB,UAAU,EAAE,MAAM,GAAG,MAAM,CAAC;QAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,IAAI,CAAC;KACjB,GAAG,IAAI;IAiBR;;;OAGG;IACH,uBAAuB,IAAI,WAAW,EAAE;IAIxC;;;OAGG;IACH,mBAAmB,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,WAAW,EAAE;IAI5D;;OAEG;IACH,mBAAmB,IAAI,IAAI;IAI3B;;OAEG;IACH,eAAe,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAI/C;;OAEG;IACH,gBAAgB,IAAI,MAAM;IAQ1B;;;;OAIG;IACH,kBAAkB,IAAI,WAAW,EAAE;IAYnC;;;;OAIG;IACH,SAAS,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,GAAG,SAAS,CAAA;KAAE,GAAG,IAAI;IAI3E;;;;OAIG;IACH,WAAW,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,MAAM,GAAG,SAAS;IAQzD;;;;OAIG;IACH,OAAO,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,SAAS,CAAA;KAAE,GAAG,IAAI;IAK5D;;;;OAIG;IACH,OAAO,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO;IAI1C;;;;OAIG;IACH,OAAO,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,GAAG,SAAS;IAIxD;;;OAGG;IACH,OAAO,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAIvC;;;;OAIG;IACH,YAAY,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO;IAI/C;;;OAGG;IACH,eAAe,IAAI,MAAM;IAIzB;;;OAGG;IACH,IAAI,aAAa,IAAI,MAAM,EAAE,CAE5B;IAMD;;;;OAIG;IACH,QAAQ,CAAC,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,UAAU,CAAA;KAAE,GAAG,IAAI;IAQhE;;;;;OAKG;IACH,WAAW,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,SAAS,CAAA;KAAE,GAAG,IAAI;IAIhE;;;;OAIG;IACH,WAAW,CAAC,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,GAAG,SAAS;IAQ5D;;;;;OAKG;IACH,SAAS,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,eAAe,CAAA;KAAE,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS;IAa9E;;;;;OAKG;IACH,eAAe,CAAC,IAAI,EAAE;QAAE,IAAI,EAAE,eAAe,CAAA;KAAE,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS;CAGjG;AASD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,8BAAsB,gBAAgB,CACpC,SAAS,EACT,SAAS,EACT,UAAU,EACV,SAAS,EACT,OAAO,SAAS,sBAAsB,CACtC,SAAQ,YAAY;;IAYpB,kDAAkD;IAClD,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;gBAavB,MAAM,EAAE,OAAO;IAqZ3B;;;;;;;;;OASG;cACa,sBAAsB,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;IAIlF;;;OAGG;cACa,uBAAuB,IAAI,OAAO,CAAC,IAAI,CAAC;IAMxD;;;;;;;OAOG;IACH,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE;QAClC,IAAI,EAAE,eAAe,CAAC;QACtB,SAAS,EAAE,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;KACnE,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;IAElC;;;;;;;OAOG;IACH,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE;QACnC,IAAI,EAAE,eAAe,CAAC;QACtB,SAAS,EAAE,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;KACnE,GAAG,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC;IAEnC;;;;;;;OAOG;IACH,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE;QAClC,IAAI,EAAE,eAAe,CAAC;QACtB,SAAS,EAAE,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;KACnE,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;IAElC;;;;;;OAMG;IACH,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE;QACnC,IAAI,EAAE,eAAe,CAAC;QACtB,SAAS,EAAE,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;KACnE,GAAG,OAAO,CAAC,IAAI,CAAC;IAEjB;;;;;;OAMG;IACH,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE;QACnC,IAAI,EAAE,eAAe,CAAC;QACtB,SAAS,EAAE,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;KACnE,GAAG,OAAO,CAAC,IAAI,CAAC;IAEjB;;;;;;;OAOG;IACH,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE;QAClC,IAAI,EAAE,SAAS,CAAC;QAChB,SAAS,EAAE,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;QAClE,MAAM,EAAE,aAAa,CAAC;KACvB,GAAG,OAAO,CAAC,IAAI,CAAC;IAMjB;;;;OAIG;IACH,SAAS,CAAC,iBAAiB,UAAS;IAEpC;;;;OAIG;IACH,SAAS,CAAC,oBAAoB,UAAS;IAEvC;;;;OAIG;IACH,SAAS,CAAC,qBAAqB,UAAS;IAExC,OAAO,CAAC,SAAS;cAoBD,mBAAmB,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IA0JvE;;;;;;;OAOG;IACH,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE;QAC3B,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;KAChB,GAAG,SAAS,CAAC,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC;IAsB1D;;;OAGG;IACH,SAAS,CAAC,YAAY,IAAI,MAAM;IAQhC;;;;;;OAMG;cACa,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAEvC;;;;;;OAMG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAS5B;;;OAGG;cACa,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAE7C;;;OAGG;cACa,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC;IAE9C;;;OAGG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CAkDhC"}
|
package/dist/index.cjs
CHANGED
|
@@ -4255,6 +4255,18 @@ var BaseExporter = class {
|
|
|
4255
4255
|
const processedEvent = await this.applySpanFormatter(event);
|
|
4256
4256
|
await this._exportTracingEvent(processedEvent);
|
|
4257
4257
|
}
|
|
4258
|
+
/**
|
|
4259
|
+
* Force flush any buffered/queued spans without shutting down the exporter.
|
|
4260
|
+
*
|
|
4261
|
+
* This is useful in serverless environments where you need to ensure spans
|
|
4262
|
+
* are exported before the runtime instance is terminated, while keeping
|
|
4263
|
+
* the exporter active for future requests.
|
|
4264
|
+
*
|
|
4265
|
+
* Default implementation is a no-op. Override to add flush logic.
|
|
4266
|
+
*/
|
|
4267
|
+
async flush() {
|
|
4268
|
+
this.logger.debug(`${this.name} flush called (no-op in base class)`);
|
|
4269
|
+
}
|
|
4258
4270
|
/**
|
|
4259
4271
|
* Shutdown the exporter and clean up resources
|
|
4260
4272
|
*
|
|
@@ -5142,8 +5154,31 @@ var TrackingExporter = class extends BaseExporter {
|
|
|
5142
5154
|
return this.#traceMap.size;
|
|
5143
5155
|
}
|
|
5144
5156
|
// ============================================================================
|
|
5145
|
-
// Shutdown Hooks (Override in subclass as needed)
|
|
5157
|
+
// Flush and Shutdown Hooks (Override in subclass as needed)
|
|
5146
5158
|
// ============================================================================
|
|
5159
|
+
/**
|
|
5160
|
+
* Hook called by flush() to perform vendor-specific flush logic.
|
|
5161
|
+
* Override to send buffered data to the vendor's API.
|
|
5162
|
+
*
|
|
5163
|
+
* Unlike _postShutdown(), this method should NOT release resources,
|
|
5164
|
+
* as the exporter will continue to be used after flushing.
|
|
5165
|
+
*/
|
|
5166
|
+
async _flush() {
|
|
5167
|
+
}
|
|
5168
|
+
/**
|
|
5169
|
+
* Force flush any buffered data without shutting down the exporter.
|
|
5170
|
+
* This is useful in serverless environments where you need to ensure spans
|
|
5171
|
+
* are exported before the runtime instance is terminated.
|
|
5172
|
+
*
|
|
5173
|
+
* Subclasses should override _flush() to implement vendor-specific flush logic.
|
|
5174
|
+
*/
|
|
5175
|
+
async flush() {
|
|
5176
|
+
if (this.isDisabled) {
|
|
5177
|
+
return;
|
|
5178
|
+
}
|
|
5179
|
+
this.logger.debug(`${this.name}: Flushing`);
|
|
5180
|
+
await this._flush();
|
|
5181
|
+
}
|
|
5147
5182
|
/**
|
|
5148
5183
|
* Hook called at the start of shutdown, before cancelling timers and aborting spans.
|
|
5149
5184
|
* Override to perform vendor-specific pre-shutdown tasks.
|
|
@@ -5312,7 +5347,7 @@ var CloudExporter = class extends BaseExporter {
|
|
|
5312
5347
|
});
|
|
5313
5348
|
}, this.cloudConfig.maxBatchWaitMs);
|
|
5314
5349
|
}
|
|
5315
|
-
async
|
|
5350
|
+
async flushBuffer() {
|
|
5316
5351
|
if (this.flushTimer) {
|
|
5317
5352
|
clearTimeout(this.flushTimer);
|
|
5318
5353
|
this.flushTimer = null;
|
|
@@ -5368,6 +5403,22 @@ var CloudExporter = class extends BaseExporter {
|
|
|
5368
5403
|
this.buffer.firstEventTime = void 0;
|
|
5369
5404
|
this.buffer.totalSize = 0;
|
|
5370
5405
|
}
|
|
5406
|
+
/**
|
|
5407
|
+
* Force flush any buffered spans without shutting down the exporter.
|
|
5408
|
+
* This is useful in serverless environments where you need to ensure spans
|
|
5409
|
+
* are exported before the runtime instance is terminated.
|
|
5410
|
+
*/
|
|
5411
|
+
async flush() {
|
|
5412
|
+
if (this.isDisabled) {
|
|
5413
|
+
return;
|
|
5414
|
+
}
|
|
5415
|
+
if (this.buffer.totalSize > 0) {
|
|
5416
|
+
this.logger.debug("Flushing buffered events", {
|
|
5417
|
+
bufferedEvents: this.buffer.totalSize
|
|
5418
|
+
});
|
|
5419
|
+
await this.flushBuffer();
|
|
5420
|
+
}
|
|
5421
|
+
}
|
|
5371
5422
|
async shutdown() {
|
|
5372
5423
|
if (this.isDisabled) {
|
|
5373
5424
|
return;
|
|
@@ -5376,27 +5427,22 @@ var CloudExporter = class extends BaseExporter {
|
|
|
5376
5427
|
clearTimeout(this.flushTimer);
|
|
5377
5428
|
this.flushTimer = null;
|
|
5378
5429
|
}
|
|
5379
|
-
|
|
5380
|
-
this.
|
|
5381
|
-
|
|
5382
|
-
|
|
5383
|
-
|
|
5384
|
-
|
|
5385
|
-
|
|
5386
|
-
|
|
5387
|
-
{
|
|
5388
|
-
|
|
5389
|
-
|
|
5390
|
-
|
|
5391
|
-
|
|
5392
|
-
|
|
5393
|
-
|
|
5394
|
-
|
|
5395
|
-
error$1
|
|
5396
|
-
);
|
|
5397
|
-
this.logger.trackException(mastraError);
|
|
5398
|
-
this.logger.error("Failed to flush remaining events during shutdown", mastraError);
|
|
5399
|
-
}
|
|
5430
|
+
try {
|
|
5431
|
+
await this.flush();
|
|
5432
|
+
} catch (error$1) {
|
|
5433
|
+
const mastraError = new error.MastraError(
|
|
5434
|
+
{
|
|
5435
|
+
id: `CLOUD_EXPORTER_FAILED_TO_FLUSH_REMAINING_EVENTS_DURING_SHUTDOWN`,
|
|
5436
|
+
domain: error.ErrorDomain.MASTRA_OBSERVABILITY,
|
|
5437
|
+
category: error.ErrorCategory.USER,
|
|
5438
|
+
details: {
|
|
5439
|
+
remainingEvents: this.buffer.totalSize
|
|
5440
|
+
}
|
|
5441
|
+
},
|
|
5442
|
+
error$1
|
|
5443
|
+
);
|
|
5444
|
+
this.logger.trackException(mastraError);
|
|
5445
|
+
this.logger.error("Failed to flush remaining events during shutdown", mastraError);
|
|
5400
5446
|
}
|
|
5401
5447
|
this.logger.info("CloudExporter shutdown complete");
|
|
5402
5448
|
}
|
|
@@ -5700,7 +5746,7 @@ var DefaultExporter = class extends BaseExporter {
|
|
|
5700
5746
|
clearTimeout(this.#flushTimer);
|
|
5701
5747
|
}
|
|
5702
5748
|
this.#flushTimer = setTimeout(() => {
|
|
5703
|
-
this.
|
|
5749
|
+
this.flushBuffer().catch((error) => {
|
|
5704
5750
|
this.logger.error("Scheduled flush failed", {
|
|
5705
5751
|
error: error instanceof Error ? error.message : String(error)
|
|
5706
5752
|
});
|
|
@@ -5834,7 +5880,7 @@ var DefaultExporter = class extends BaseExporter {
|
|
|
5834
5880
|
handleBatchWithUpdatesEvent(event) {
|
|
5835
5881
|
this.addToBuffer(event);
|
|
5836
5882
|
if (this.shouldFlush()) {
|
|
5837
|
-
this.
|
|
5883
|
+
this.flushBuffer().catch((error) => {
|
|
5838
5884
|
this.logger.error("Batch flush failed", {
|
|
5839
5885
|
error: error instanceof Error ? error.message : String(error)
|
|
5840
5886
|
});
|
|
@@ -5850,7 +5896,7 @@ var DefaultExporter = class extends BaseExporter {
|
|
|
5850
5896
|
if (event.type === observability.TracingEventType.SPAN_ENDED) {
|
|
5851
5897
|
this.addToBuffer(event);
|
|
5852
5898
|
if (this.shouldFlush()) {
|
|
5853
|
-
this.
|
|
5899
|
+
this.flushBuffer().catch((error) => {
|
|
5854
5900
|
this.logger.error("Batch flush failed", {
|
|
5855
5901
|
error: error instanceof Error ? error.message : String(error)
|
|
5856
5902
|
});
|
|
@@ -5867,9 +5913,9 @@ var DefaultExporter = class extends BaseExporter {
|
|
|
5867
5913
|
return this.#config.retryDelayMs * Math.pow(2, attempt);
|
|
5868
5914
|
}
|
|
5869
5915
|
/**
|
|
5870
|
-
* Flushes the current buffer to storage with retry logic
|
|
5916
|
+
* Flushes the current buffer to storage with retry logic (internal implementation)
|
|
5871
5917
|
*/
|
|
5872
|
-
async
|
|
5918
|
+
async flushBuffer() {
|
|
5873
5919
|
if (!this.#observability) {
|
|
5874
5920
|
this.logger.debug("Cannot flush traces. Observability storage is not initialized");
|
|
5875
5921
|
return;
|
|
@@ -5976,23 +6022,25 @@ var DefaultExporter = class extends BaseExporter {
|
|
|
5976
6022
|
break;
|
|
5977
6023
|
}
|
|
5978
6024
|
}
|
|
6025
|
+
/**
|
|
6026
|
+
* Force flush any buffered spans without shutting down the exporter.
|
|
6027
|
+
* This is useful in serverless environments where you need to ensure spans
|
|
6028
|
+
* are exported before the runtime instance is terminated.
|
|
6029
|
+
*/
|
|
6030
|
+
async flush() {
|
|
6031
|
+
if (this.buffer.totalSize > 0) {
|
|
6032
|
+
this.logger.debug("Flushing buffered events", {
|
|
6033
|
+
bufferedEvents: this.buffer.totalSize
|
|
6034
|
+
});
|
|
6035
|
+
await this.flushBuffer();
|
|
6036
|
+
}
|
|
6037
|
+
}
|
|
5979
6038
|
async shutdown() {
|
|
5980
6039
|
if (this.#flushTimer) {
|
|
5981
6040
|
clearTimeout(this.#flushTimer);
|
|
5982
6041
|
this.#flushTimer = null;
|
|
5983
6042
|
}
|
|
5984
|
-
|
|
5985
|
-
this.logger.info("Flushing remaining events on shutdown", {
|
|
5986
|
-
remainingEvents: this.buffer.totalSize
|
|
5987
|
-
});
|
|
5988
|
-
try {
|
|
5989
|
-
await this.flush();
|
|
5990
|
-
} catch (error) {
|
|
5991
|
-
this.logger.error("Failed to flush remaining events during shutdown", {
|
|
5992
|
-
error: error instanceof Error ? error.message : String(error)
|
|
5993
|
-
});
|
|
5994
|
-
}
|
|
5995
|
-
}
|
|
6043
|
+
await this.flush();
|
|
5996
6044
|
this.logger.info("DefaultExporter shutdown complete");
|
|
5997
6045
|
}
|
|
5998
6046
|
};
|
|
@@ -7366,6 +7414,29 @@ var BaseObservabilityInstance = class extends base.MastraBase {
|
|
|
7366
7414
|
this.logger.debug(`[Observability] Initialization started [name=${this.name}]`);
|
|
7367
7415
|
this.logger.info(`[Observability] Initialized successfully [name=${this.name}]`);
|
|
7368
7416
|
}
|
|
7417
|
+
/**
|
|
7418
|
+
* Force flush any buffered/queued spans from all exporters and the bridge
|
|
7419
|
+
* without shutting down the observability instance.
|
|
7420
|
+
*
|
|
7421
|
+
* This is useful in serverless environments (like Vercel's fluid compute) where
|
|
7422
|
+
* you need to ensure all spans are exported before the runtime instance is
|
|
7423
|
+
* terminated, while keeping the observability system active for future requests.
|
|
7424
|
+
*/
|
|
7425
|
+
async flush() {
|
|
7426
|
+
this.logger.debug(`[Observability] Flush started [name=${this.name}]`);
|
|
7427
|
+
const flushPromises = [...this.exporters.map((e) => e.flush())];
|
|
7428
|
+
if (this.config.bridge) {
|
|
7429
|
+
flushPromises.push(this.config.bridge.flush());
|
|
7430
|
+
}
|
|
7431
|
+
const results = await Promise.allSettled(flushPromises);
|
|
7432
|
+
results.forEach((result, index) => {
|
|
7433
|
+
if (result.status === "rejected") {
|
|
7434
|
+
const targetName = index < this.exporters.length ? this.exporters[index]?.name : "bridge";
|
|
7435
|
+
this.logger.error(`[Observability] Flush error [target=${targetName}]`, result.reason);
|
|
7436
|
+
}
|
|
7437
|
+
});
|
|
7438
|
+
this.logger.debug(`[Observability] Flush completed [name=${this.name}]`);
|
|
7439
|
+
}
|
|
7369
7440
|
/**
|
|
7370
7441
|
* Shutdown Observability and clean up resources
|
|
7371
7442
|
*/
|