Options
All
  • Public
  • Public/Protected
  • All
Menu

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.

Hierarchy

  • TelemetryLogger

Index

Properties(3)

Readonly onDidChangeEnableStates

onDidChangeEnableStates: Event<TelemetryLogger>

An Event which fires when the enablement state of usage or error telemetry changes.

Readonly isUsageEnabled

isUsageEnabled: boolean

Whether or not usage telemetry is enabled for this logger.

Readonly isErrorsEnabled

isErrorsEnabled: boolean

Whether or not error telemetry is enabled for this logger.

Methods(3)

logUsage

  • logUsage(eventName: string, data?: Record<string, any>): 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

    • Optional data: Record<string, any>

      The data to log

    Returns void

logError

  • logError(eventName: string, data?: Record<string, any>): void
  • logError(error: Error, data?: Record<string, any>): 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

    • Optional data: Record<string, any>

      The data to log

    Returns void

  • Log an error event.

    Calls TelemetrySender.sendErrorData. Does cleaning, telemetry checks, and data mix-in. Automatically supports echoing to extension telemetry output channel. Will also automatically log any exceptions thrown within the extension host process.

    Parameters

    • error: Error

      The error object which contains the stack trace cleaned of PII

    • Optional data: Record<string, any>

      Additional data to log alongside the stack trace

    Returns void

dispose

  • dispose(): void

Generated by TypeDoc. Maintained by 洛竹