diff options
| author | Shreya Keshive <[email protected]> | 2025-08-05 18:52:58 -0400 |
|---|---|---|
| committer | GitHub <[email protected]> | 2025-08-05 22:52:58 +0000 |
| commit | 268627469b384ba3fa8dfe2e05b5186248013070 (patch) | |
| tree | 27d6421c6d7cc7986d284fa8f7bf0fece9c607e3 /packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts | |
| parent | 6a72cd064bccb5fda4618671c2da63c4e22c1ef9 (diff) | |
Refactor IDE client state management, improve user-facing error messages, and add logging of connection events (#5591)
Co-authored-by: matt korwel <[email protected]>
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 6b85a664..649d82b6 100644 --- a/packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts +++ b/packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts @@ -21,6 +21,7 @@ import { NextSpeakerCheckEvent, SlashCommandEvent, MalformedJsonResponseEvent, + IdeConnectionEvent, } from '../types.js'; import { EventMetadataKey } from './event-metadata-key.js'; import { Config } from '../../config/config.js'; @@ -44,6 +45,7 @@ const loop_detected_event_name = 'loop_detected'; const next_speaker_check_event_name = 'next_speaker_check'; const slash_command_event_name = 'slash_command'; const malformed_json_response_event_name = 'malformed_json_response'; +const ide_connection_event_name = 'ide_connection'; export interface LogResponse { nextRequestWaitMs?: number; @@ -578,6 +580,18 @@ export class ClearcutLogger { this.flushIfNeeded(); } + logIdeConnectionEvent(event: IdeConnectionEvent): void { + const data = [ + { + gemini_cli_key: EventMetadataKey.GEMINI_CLI_IDE_CONNECTION_TYPE, + value: JSON.stringify(event.connection_type), + }, + ]; + + this.enqueueLogEvent(this.createLogEvent(ide_connection_event_name, data)); + this.flushIfNeeded(); + } + logEndSessionEvent(event: EndSessionEvent): void { const data = [ { |
