summaryrefslogtreecommitdiff
path: root/packages/core/src
diff options
context:
space:
mode:
Diffstat (limited to 'packages/core/src')
-rw-r--r--packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts21
1 files changed, 14 insertions, 7 deletions
diff --git a/packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts b/packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts
index 03e94ef7..7afe7ecc 100644
--- a/packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts
+++ b/packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts
@@ -120,15 +120,22 @@ export class ClearcutLogger {
reject(e);
});
req.end(body);
- }).then((buf: Buffer) => {
- try {
- this.last_flush_time = Date.now();
- return this.decodeLogResponse(buf) || {};
- } catch (error: unknown) {
+ })
+ .then((buf: Buffer) => {
+ try {
+ this.last_flush_time = Date.now();
+ return this.decodeLogResponse(buf) || {};
+ } catch (error: unknown) {
+ console.error('Error flushing log events:', error);
+ return {};
+ }
+ })
+ .catch((error: unknown) => {
+ // Handle all errors to prevent unhandled promise rejections
console.error('Error flushing log events:', error);
+ // Return empty response to maintain the Promise<LogResponse> contract
return {};
- }
- });
+ });
}
// Visible for testing. Decodes protobuf-encoded response from Clearcut server.