Interface ITelemetryPluginChain

Configuration provided to SDK core

Hierarchy

  • ITelemetryProcessor
    • ITelemetryPluginChain

Properties

getNext: (() => ITelemetryPluginChain)

Type declaration

getPlugin: (() => ITelemetryPlugin)

Type declaration

processTelemetry: ((env, itemCtx?) => void)

Type declaration

    • (env, itemCtx?): void
    • Call back for telemetry processing before it it is sent

      Parameters

      • env: ITelemetryItem

        This is the current event being reported

      • Optional itemCtx: IProcessTelemetryContext

        This is the context for the current request, ITelemetryPlugin instances can optionally use this to access the current core instance or define / pass additional information to later plugins (vs appending items to the telemetry item)

      Returns void

unload?: ((unloadCtx, unloadState) => void)

Type declaration

    • (unloadCtx, unloadState): void
    • This plugin is being unloaded and should remove any hooked events and cleanup any global/scoped values, after this call the plugin will be removed from the telemetry processing chain and will no longer receive any events..

      Parameters

      Returns void

update?: ((updateCtx, updateState) => boolean | void)

Type declaration

    • (updateCtx, updateState): boolean | void
    • The the plugin should re-evaluate configuration and update any cached configuration settings or plugins. If implemented this method will be called whenever a plugin is added or removed and if the configuration has bee updated.

      Parameters

      • updateCtx: IProcessTelemetryUpdateContext

        This is the context that should be used during updating.

      • updateState: ITelemetryUpdateState

        The details / state of the update process, it holds details like the current and previous configuration.

      Returns boolean | void

      boolean - true if the plugin has or will call updateCtx.processNext(), this allows the plugin to perform any asynchronous operations.

Generated using TypeDoc