MCPcopy Create free account
hub / github.com/MoonshotAI/kimi-code / ScopedTelemetryClient

Class ScopedTelemetryClient

packages/telemetry/src/client.ts:150–201  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

148}
149
150class ScopedTelemetryClient extends TelemetryClient {
151 constructor(
152 private readonly parent: TelemetryClient,
153 private readonly context: TelemetryContextIds,
154 ) {
155 super();
156 }
157
158 override setContext(input: TelemetryContextIds): void {
159 this.parent.setContext(input);
160 }
161
162 override withContext(input: TelemetryContextIds): TelemetryClient {
163 return new ScopedTelemetryClient(this.parent, mergeContext(this.context, input));
164 }
165
166 override attachSink(sink: EventSink): void {
167 this.parent.attachSink(sink);
168 }
169
170 override disable(): void {
171 this.parent.disable();
172 }
173
174 override enable(): void {
175 this.parent.enable();
176 }
177
178 override track(event: string, properties: TelemetryProperties = {}): void {
179 this.parent.trackWithContext(event, properties, this.context);
180 }
181
182 override getSink(): EventSink | null {
183 return this.parent.getSink();
184 }
185
186 override async flush(signal?: AbortSignal): Promise<void> {
187 await this.parent.flush(signal);
188 }
189
190 override flushSync(): void {
191 this.parent.flushSync();
192 }
193
194 override async shutdown(options: TelemetryShutdownOptions = {}): Promise<void> {
195 await this.parent.shutdown(options);
196 }
197
198 override resetForTests(): void {
199 this.parent.resetForTests();
200 }
201}
202
203const defaultClient = new TelemetryClient();
204

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected