From 4cfab0a8931decca8c953de1e5715e40ee31ee9a Mon Sep 17 00:00:00 2001 From: owenofbrien <86964623+owenofbrien@users.noreply.github.com> Date: Sun, 22 Jun 2025 09:26:48 -0500 Subject: Clearcut logging - initial implementation (#1274) Flag-guarded initial implementation of a clearcut logger to collect telemetry data and send it to Concord for dashboards, etc. --- packages/core/src/telemetry/sdk.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'packages/core/src/telemetry/sdk.ts') diff --git a/packages/core/src/telemetry/sdk.ts b/packages/core/src/telemetry/sdk.ts index 61f501a6..033a9d77 100644 --- a/packages/core/src/telemetry/sdk.ts +++ b/packages/core/src/telemetry/sdk.ts @@ -29,6 +29,8 @@ import { Config } from '../config/config.js'; import { SERVICE_NAME } from './constants.js'; import { initializeMetrics } from './metrics.js'; import { logCliConfiguration } from './loggers.js'; +import { StartSessionEvent } from './types.js'; +import { ClearcutLogger } from './clearcut-logger/clearcut-logger.js'; // For troubleshooting, set the log level to DiagLogLevel.DEBUG diag.setLogger(new DiagConsoleLogger(), DiagLogLevel.INFO); @@ -113,7 +115,7 @@ export function initializeTelemetry(config: Config): void { console.log('OpenTelemetry SDK started successfully.'); telemetryInitialized = true; initializeMetrics(config); - logCliConfiguration(config); + logCliConfiguration(config, new StartSessionEvent(config)); } catch (error) { console.error('Error starting OpenTelemetry SDK:', error); } @@ -127,6 +129,7 @@ export async function shutdownTelemetry(): Promise { return; } try { + ClearcutLogger.getInstance()?.shutdown(); await sdk.shutdown(); console.log('OpenTelemetry SDK shut down successfully.'); } catch (error) { -- cgit v1.2.3