Interface IAppInsightsCore<CfgType>

Identifies an interface to a host that can provide an IPerfManager implementation

Type Parameters

Hierarchy

Implemented by

Properties

config: CfgType
getWParam: (() => number)

Type declaration

    • (): number
    • Function used to identify the get w parameter used to identify status bit to some channels

      Returns number

isInitialized?: (() => boolean)

Type declaration

    • (): boolean
    • Returns a value that indicates whether the instance has already been previously initialized.

      Returns boolean

The current logger instance for this instance.

pluginVersionString: string

The formatted string of the installed plugins that contain a version number

pluginVersionStringArr: string[]

An array of the installed plugins that provide a version

Methods

  • Adds a notification listener. The SDK calls methods on the listener when an appropriate notification is raised. The added plugins must raise notifications. If the plugins do not implement the notifications, then no methods will be called.

    Parameters

    Returns void

  • Add a new plugin to the installation

    Type Parameters

    Parameters

    • plugin: T

      The new plugin to add

    • Optional replaceExisting: boolean

      should any existing plugin be replaced, default is false

    • Optional doAsync: boolean

      Should the add be performed asynchronously

    • Optional addCb: ((added?) => void)

      [Optional] callback to call after the plugin has been added

        • (added?): void
        • Parameters

          • Optional added: boolean

          Returns void

    Returns void

  • Add a telemetry processor to decorate or drop telemetry events.

    Parameters

    Returns ITelemetryInitializerHandler

    • A ITelemetryInitializerHandler to enable the initializer to be removed
  • Add a handler that will be called when the SDK is being unloaded

    Parameters

    Returns void

  • Returns the unique event namespace that should be used when registering events

    Returns string

  • Flush and send any batched / cached data immediately

    Parameters

    • Optional isAsync: boolean
    • Optional callBack: ((flushComplete?) => void)

      if specified, notify caller when send is complete, the channel should return true to indicate to the caller that it will be called. If the caller doesn't return true the caller should assume that it may never be called.

        • (flushComplete?): void
        • Parameters

          • Optional flushComplete: boolean

          Returns void

    • Optional sendReason: SendRequestReason

      specify the reason that you are calling "flush" defaults to ManualFlush (1) if not specified

    • Optional cbTimeout: number

      An optional timeout to wait for any flush operations to complete before proceeding with the unload. Defaults to 5 seconds.

    Returns boolean | void

    • true if the callback will be return after the flush is complete otherwise the caller should assume that any provided callback will never be called
  • Get the current cookie manager for this instance

    Returns ICookieMgr

  • Find and return the (first) plugin with the specified identifier if present

    Type Parameters

    Parameters

    • pluginIdentifier: string

    Returns ILoadedPlugin<T>

  • Gets the current distributed trace context for this instance if available

    Parameters

    • Optional createNew: boolean

      Optional flag to create a new instance if one doesn't currently exist, defaults to true

    Returns IDistributedTraceContext

  • Parameters

    Returns void

  • Watches and tracks changes for accesses to the current config, and if the accessed config changes the handler will be recalled.

    Parameters

    Returns IUnloadHook

    A watcher handler instance that can be used to remove itself when being unloaded

  • Parameters

    • Optional eventName: string

    Returns ITimerHandler

  • Removes all instances of the listener.

    Parameters

    Returns void

  • Set the current cookie manager for this instance

    Parameters

    • cookieMgr: ICookieMgr

      The manager, if set to null/undefined will cause the default to be created

    Returns void

  • Set the current performance manager

    Parameters

    Returns void

  • Sets the current distributed trace context for this instance if available

    Parameters

    Returns void

  • Returns void

  • Parameters

    Returns void

  • Unload and Tear down the SDK and any initialized plugins, after calling this the SDK will be considered to be un-initialized and non-operational, re-initializing the SDK should only be attempted if the previous unload call return true stating that all plugins reported that they also unloaded, the recommended approach is to create a new instance and initialize that instance. This is due to possible unexpected side effects caused by plugins not supporting unload / teardown, unable to successfully remove any global references or they may just be completing the unload process asynchronously. If you pass isAsync as true (also the default) and DO NOT pass a callback function then an IPromise will be returned which will resolve once the unload is complete. The actual implementation of the IPromise will be a native Promise (if supported) or the default as supplied by ts-async library

    Parameters

    • Optional isAsync: boolean

      Can the unload be performed asynchronously (default)

    • Optional unloadComplete: ((unloadState) => void)

      An optional callback that will be called once the unload has completed

    • Optional cbTimeout: number

      An optional timeout to wait for any flush operations to complete before proceeding with the unload. Defaults to 5 seconds.

    Returns void | IPromise<ITelemetryUnloadState>

    Nothing or if occurring asynchronously a IPromise which will be resolved once the unload is complete, the IPromise will only be returned when no callback is provided and isAsync is true

  • Update the configuration used and broadcast the changes to all loaded plugins, this does NOT support updating, adding or removing any the plugins (extensions or channels). It will notify each plugin (if supported) that the configuration has changed but it will not remove or add any new plugins, you need to call addPlugin or getPlugin(identifier).remove();

    Parameters

    • newConfig: CfgType

      The new configuration is apply

    • Optional mergeExisting: boolean

      Should the new configuration merge with the existing or just replace it. Default is to merge.

    Returns void

Generated using TypeDoc