diff options
| author | Sandy Tao <[email protected]> | 2025-07-14 21:44:07 -0700 |
|---|---|---|
| committer | GitHub <[email protected]> | 2025-07-15 04:44:07 +0000 |
| commit | 886faa2990b191a0dbd01dc58a88e09e342886b5 (patch) | |
| tree | b22e1c3b95efe0678b86bfa1d959f17c9032b28e /packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts | |
| parent | 734da8b9d24ab7e2cfcfe80e43f061734b7ae6ba (diff) | |
Log the 2 types of loop detection (#4193)
Diffstat (limited to 'packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts')
| -rw-r--r-- | packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts b/packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts index 07c40c86..7beacb9b 100644 --- a/packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts +++ b/packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts @@ -15,6 +15,7 @@ import { ApiResponseEvent, ApiErrorEvent, FlashFallbackEvent, + LoopDetectedEvent, } from '../types.js'; import { EventMetadataKey } from './event-metadata-key.js'; import { Config } from '../../config/config.js'; @@ -33,6 +34,7 @@ const api_response_event_name = 'api_response'; const api_error_event_name = 'api_error'; const end_session_event_name = 'end_session'; const flash_fallback_event_name = 'flash_fallback'; +const loop_detected_event_name = 'loop_detected'; export interface LogResponse { nextRequestWaitMs?: number; @@ -448,6 +450,18 @@ export class ClearcutLogger { }); } + logLoopDetectedEvent(event: LoopDetectedEvent): void { + const data = [ + { + gemini_cli_key: EventMetadataKey.GEMINI_CLI_LOOP_DETECTED_TYPE, + value: JSON.stringify(event.loop_type), + }, + ]; + + this.enqueueLogEvent(this.createLogEvent(loop_detected_event_name, data)); + this.flushIfNeeded(); + } + logEndSessionEvent(event: EndSessionEvent): void { const data = [ { |
