feat(telemetry): ensure all telemetry includes user email and installation id (#10897)

This commit is contained in:
Jerop Kipruto
2025-10-10 12:06:08 -04:00
committed by GitHub
parent 971eb64e98
commit 38bc856212
5 changed files with 185 additions and 7 deletions
@@ -4,15 +4,19 @@
* SPDX-License-Identifier: Apache-2.0
*/
import type { LogAttributes } from '@opentelemetry/api-logs';
import type { Attributes } from '@opentelemetry/api';
import type { Config } from '../config/config.js';
import { InstallationManager } from '../utils/installationManager.js';
import { UserAccountManager } from '../utils/userAccountManager.js';
export function getCommonAttributes(config: Config): LogAttributes {
const userAccountManager = new UserAccountManager();
const userAccountManager = new UserAccountManager();
const installationManager = new InstallationManager();
export function getCommonAttributes(config: Config): Attributes {
const email = userAccountManager.getCachedGoogleAccount();
return {
'session.id': config.getSessionId(),
'installation.id': installationManager.getInstallationId(),
...(email && { 'user.email': email }),
};
}