fix(core): Handle rejected promises from Rudderstack SDK (#21083)

This commit is contained in:
Iván Ovejero
2025-10-23 13:30:52 +02:00
committed by GitHub
parent 9fc867ce47
commit 520a9d4940
2 changed files with 14 additions and 2 deletions
@@ -47,7 +47,15 @@ describe('Telemetry', () => {
const postHog = new PostHogClient(instanceSettings, mock());
await postHog.init();
telemetry = new Telemetry(mock(), postHog, mock(), instanceSettings, mock(), globalConfig);
telemetry = new Telemetry(
mock(),
postHog,
mock(),
instanceSettings,
mock(),
globalConfig,
mock(),
);
// @ts-expect-error Assigning to private property
telemetry.rudderStack = mockRudderStack;
});
+5 -1
View File
@@ -10,7 +10,7 @@ import { OnShutdown } from '@n8n/decorators';
import { Container, Service } from '@n8n/di';
import type RudderStack from '@rudderstack/rudder-sdk-node';
import axios from 'axios';
import { InstanceSettings } from 'n8n-core';
import { ErrorReporter, InstanceSettings } from 'n8n-core';
import type { ITelemetryTrackProperties } from 'n8n-workflow';
import { LOWEST_SHUTDOWN_PRIORITY, N8N_VERSION } from '@/constants';
@@ -60,6 +60,7 @@ export class Telemetry {
private readonly instanceSettings: InstanceSettings,
private readonly workflowRepository: WorkflowRepository,
private readonly globalConfig: GlobalConfig,
private readonly errorReporter: ErrorReporter,
) {}
async init() {
@@ -85,6 +86,9 @@ export class Telemetry {
logLevel,
dataPlaneUrl,
gzip: false,
errorHandler: (error) => {
this.errorReporter.error(error);
},
});
this.startPulse();