diff options
| author | uttamkanodia14 <[email protected]> | 2025-07-17 21:23:59 +0530 |
|---|---|---|
| committer | GitHub <[email protected]> | 2025-07-17 15:53:59 +0000 |
| commit | fc8c38b2bc8a7f462000db7d38cd801b1eade736 (patch) | |
| tree | c2ca3ce4418ae0bfc5f3a0538cff86792e2599b5 | |
| parent | cbda781f73b913a82f05beaba9a6c7ed8b393733 (diff) | |
Logging surface field in the start_session_event. Also logging sessio… (#4362)
| -rw-r--r-- | packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts | 24 | ||||
| -rw-r--r-- | packages/core/src/telemetry/clearcut-logger/event-metadata-key.ts | 6 |
2 files changed, 29 insertions, 1 deletions
diff --git a/packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts b/packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts index 7beacb9b..e42aa677 100644 --- a/packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts +++ b/packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts @@ -205,12 +205,17 @@ export class ClearcutLogger { } logStartSessionEvent(event: StartSessionEvent): void { + const surface = process.env.SURFACE || 'SURFACE_NOT_SET'; const data = [ { gemini_cli_key: EventMetadataKey.GEMINI_CLI_START_SESSION_MODEL, value: event.model, }, { + gemini_cli_key: EventMetadataKey.GEMINI_CLI_SESSION_ID, + value: this.config?.getSessionId() ?? '', + }, + { gemini_cli_key: EventMetadataKey.GEMINI_CLI_START_SESSION_EMBEDDING_MODEL, value: event.embedding_model, @@ -266,7 +271,12 @@ export class ClearcutLogger { EventMetadataKey.GEMINI_CLI_START_SESSION_TELEMETRY_LOG_USER_PROMPTS_ENABLED, value: event.telemetry_log_user_prompts_enabled.toString(), }, + { + gemini_cli_key: EventMetadataKey.GEMINI_CLI_SURFACE, + value: surface, + }, ]; + // Flush start event immediately this.enqueueLogEvent(this.createLogEvent(start_session_event_name, data)); this.flushToClearcut().catch((error) => { @@ -281,6 +291,10 @@ export class ClearcutLogger { value: JSON.stringify(event.prompt_length), }, { + gemini_cli_key: EventMetadataKey.GEMINI_CLI_SESSION_ID, + value: this.config?.getSessionId() ?? '', + }, + { gemini_cli_key: EventMetadataKey.GEMINI_CLI_PROMPT_ID, value: JSON.stringify(event.prompt_id), }, @@ -442,6 +456,10 @@ export class ClearcutLogger { gemini_cli_key: EventMetadataKey.GEMINI_CLI_AUTH_TYPE, value: JSON.stringify(event.auth_type), }, + { + gemini_cli_key: EventMetadataKey.GEMINI_CLI_SESSION_ID, + value: this.config?.getSessionId() ?? '', + }, ]; this.enqueueLogEvent(this.createLogEvent(flash_fallback_event_name, data)); @@ -453,6 +471,10 @@ export class ClearcutLogger { logLoopDetectedEvent(event: LoopDetectedEvent): void { const data = [ { + gemini_cli_key: EventMetadataKey.GEMINI_CLI_SESSION_ID, + value: this.config?.getSessionId() ?? '', + }, + { gemini_cli_key: EventMetadataKey.GEMINI_CLI_LOOP_DETECTED_TYPE, value: JSON.stringify(event.loop_type), }, @@ -465,7 +487,7 @@ export class ClearcutLogger { logEndSessionEvent(event: EndSessionEvent): void { const data = [ { - gemini_cli_key: EventMetadataKey.GEMINI_CLI_END_SESSION_ID, + gemini_cli_key: EventMetadataKey.GEMINI_CLI_SESSION_ID, value: event?.session_id?.toString() ?? '', }, ]; diff --git a/packages/core/src/telemetry/clearcut-logger/event-metadata-key.ts b/packages/core/src/telemetry/clearcut-logger/event-metadata-key.ts index 4a47488a..b34cc6ea 100644 --- a/packages/core/src/telemetry/clearcut-logger/event-metadata-key.ts +++ b/packages/core/src/telemetry/clearcut-logger/event-metadata-key.ts @@ -151,6 +151,12 @@ export enum EventMetadataKey { // Logs the total number of Google accounts ever used. GEMINI_CLI_GOOGLE_ACCOUNTS_COUNT = 37, + // Logs the Surface from where the Gemini CLI was invoked, eg: VSCode. + GEMINI_CLI_SURFACE = 39, + + // Logs the session id + GEMINI_CLI_SESSION_ID = 40, + // ========================================================================== // Loop Detected Event Keys // =========================================================================== |
