Interface: TelemetryLogger
A telemetry logger which can be used by extensions to log usage and error telementry.
A logger wraps around an sender but it guarantees that
- user settings to disable or tweak telemetry are respected, and that
- potential sensitive data is removed
It also enables an "echo UI" that prints whatever data is send and it allows the editor to forward unhandled errors to the respective extensions.
To get an instance of a TelemetryLogger, use
createTelemetryLogger.
Properties
isErrorsEnabled
readonlyisErrorsEnabled:boolean
Whether or not error telemetry is enabled for this logger.
Defined in
packages/extension-api/src/extension-api.d.ts:4178
isUsageEnabled
readonlyisUsageEnabled:boolean
Whether or not usage telemetry is enabled for this logger.
Defined in
packages/extension-api/src/extension-api.d.ts:4173
onDidChangeEnableStates
readonlyonDidChangeEnableStates:Event<TelemetryLogger>
An Event which fires when the enablement state of usage or error telemetry changes.
Defined in
packages/extension-api/src/extension-api.d.ts:4168
Methods
dispose()
dispose():
void
Dispose this object and free resources.
Returns
void
Defined in
packages/extension-api/src/extension-api.d.ts:4213
logError()
logError(eventName, data)
logError(
eventName,data?):void
Log an error event.
After completing cleaning, telemetry setting checks, and data mix-in calls TelemetrySender.sendEventData to log the event. Differs from logUsage in that it will log the event if the telemetry setting is Error+.
Automatically supports echoing to extension telemetry output channel.
Parameters
• eventName: string
The event name to log
• data?: Record<string, any>
The data to log
Returns
void
Defined in
packages/extension-api/src/extension-api.d.ts:4200
logError(error, data)
logError(
error,data?):void
Log an error event.
Parameters
• error: Error
The error object which contains the stack trace cleaned of PII
• data?: Record<string, any>
Additional data to log alongside the stack trace
Returns
void
Defined in
packages/extension-api/src/extension-api.d.ts:4208
logUsage()
logUsage(
eventName,data?):void
Log a usage event.
After completing cleaning, telemetry setting checks, and data mix-in calls TelemetrySender.sendEventData to log the event.
Automatically supports echoing to extension telemetry output channel.
Parameters
• eventName: string
The event name to log
• data?: Record<string, any>
The data to log
Returns
void