From 5b5f496436a060124e57009d1f7f37bd4d27f0f3 Mon Sep 17 00:00:00 2001 From: uttamkanodia14 Date: Sat, 12 Jul 2025 02:40:25 +0530 Subject: Adds Flash Fallback logging and clearcut logging (#3843) --- packages/core/src/telemetry/loggers.ts | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'packages/core/src/telemetry/loggers.ts') diff --git a/packages/core/src/telemetry/loggers.ts b/packages/core/src/telemetry/loggers.ts index a7231e2f..5929ec58 100644 --- a/packages/core/src/telemetry/loggers.ts +++ b/packages/core/src/telemetry/loggers.ts @@ -14,6 +14,7 @@ import { EVENT_CLI_CONFIG, EVENT_TOOL_CALL, EVENT_USER_PROMPT, + EVENT_FLASH_FALLBACK, SERVICE_NAME, } from './constants.js'; import { @@ -23,6 +24,7 @@ import { StartSessionEvent, ToolCallEvent, UserPromptEvent, + FlashFallbackEvent, } from './types.js'; import { recordApiErrorMetrics, @@ -156,6 +158,28 @@ export function logApiRequest(config: Config, event: ApiRequestEvent): void { logger.emit(logRecord); } +export function logFlashFallback( + config: Config, + event: FlashFallbackEvent, +): void { + ClearcutLogger.getInstance(config)?.logFlashFallbackEvent(event); + if (!isTelemetrySdkInitialized()) return; + + const attributes: LogAttributes = { + ...getCommonAttributes(config), + ...event, + 'event.name': EVENT_FLASH_FALLBACK, + 'event.timestamp': new Date().toISOString(), + }; + + const logger = logs.getLogger(SERVICE_NAME); + const logRecord: LogRecord = { + body: `Switching to flash as Fallback.`, + attributes, + }; + logger.emit(logRecord); +} + export function logApiError(config: Config, event: ApiErrorEvent): void { const uiEvent = { ...event, -- cgit v1.2.3