summaryrefslogtreecommitdiff
path: root/packages/core/src/telemetry/clearcut-logger
diff options
context:
space:
mode:
Diffstat (limited to 'packages/core/src/telemetry/clearcut-logger')
-rw-r--r--packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts18
-rw-r--r--packages/core/src/telemetry/clearcut-logger/event-metadata-key.ts12
2 files changed, 30 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 bff9f28e..09ae6741 100644
--- a/packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts
+++ b/packages/core/src/telemetry/clearcut-logger/clearcut-logger.ts
@@ -476,6 +476,24 @@ export class ClearcutLogger {
},
];
+ if (event.metadata) {
+ const metadataMapping: { [key: string]: EventMetadataKey } = {
+ ai_added_lines: EventMetadataKey.GEMINI_CLI_AI_ADDED_LINES,
+ ai_removed_lines: EventMetadataKey.GEMINI_CLI_AI_REMOVED_LINES,
+ user_added_lines: EventMetadataKey.GEMINI_CLI_USER_ADDED_LINES,
+ user_removed_lines: EventMetadataKey.GEMINI_CLI_USER_REMOVED_LINES,
+ };
+
+ for (const [key, gemini_cli_key] of Object.entries(metadataMapping)) {
+ if (event.metadata[key] !== undefined) {
+ data.push({
+ gemini_cli_key,
+ value: JSON.stringify(event.metadata[key]),
+ });
+ }
+ }
+ }
+
const logEvent = this.createLogEvent(tool_call_event_name, data);
this.enqueueLogEvent(logEvent);
this.flushIfNeeded();
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 54f570f1..81f41603 100644
--- a/packages/core/src/telemetry/clearcut-logger/event-metadata-key.ts
+++ b/packages/core/src/telemetry/clearcut-logger/event-metadata-key.ts
@@ -197,6 +197,18 @@ export enum EventMetadataKey {
// Logs the type of the IDE connection.
GEMINI_CLI_IDE_CONNECTION_TYPE = 46,
+
+ // Logs AI added lines in edit/write tool response.
+ GEMINI_CLI_AI_ADDED_LINES = 47,
+
+ // Logs AI removed lines in edit/write tool response.
+ GEMINI_CLI_AI_REMOVED_LINES = 48,
+
+ // Logs user added lines in edit/write tool response.
+ GEMINI_CLI_USER_ADDED_LINES = 49,
+
+ // Logs user removed lines in edit/write tool response.
+ GEMINI_CLI_USER_REMOVED_LINES = 50,
}
export function getEventMetadataKey(