TelemetryLogger

A telemetry logger which can be used by extensions to log usage and error telemetry.

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.

Online Documentation

Properties

Link copied to clipboard
abstract val isErrorsEnabled: Boolean

Whether or not error telemetry is enabled for this logger.

Link copied to clipboard
abstract val isUsageEnabled: Boolean

Whether or not usage telemetry is enabled for this logger.

Link copied to clipboard

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

Functions

Link copied to clipboard
abstract override fun dispose()

Dispose this object and free resources.

Link copied to clipboard
abstract fun logError(error: JsError, data: JsAny = definedExternally)
abstract fun logError(eventName: String, data: JsAny = definedExternally)

Log an error event.

Link copied to clipboard
abstract fun logUsage(eventName: String, data: JsAny = definedExternally)

Log a usage event.