136 lines
No EOL
4.4 KiB
TypeScript
136 lines
No EOL
4.4 KiB
TypeScript
/**
|
|
* @module botbuilder
|
|
*/
|
|
/**
|
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
* Licensed under the MIT License.
|
|
*/
|
|
/**
|
|
* Defines the level of severity for the event.
|
|
*/
|
|
export declare enum Severity {
|
|
Verbose = 0,
|
|
Information = 1,
|
|
Warning = 2,
|
|
Error = 3,
|
|
Critical = 4
|
|
}
|
|
/**
|
|
* Key used to store and fetch a [BotTelemetryClient](xref:botbuilder-core.BotTelemetryClient) from [TurnContext.turnState](xref:botbuilder-core.TurnContextStateCollection)
|
|
*/
|
|
export declare const BotTelemetryClientKey = "BotTelemetryClient";
|
|
export interface BotTelemetryClient {
|
|
trackDependency(telemetry: TelemetryDependency): any;
|
|
trackEvent(telemetry: TelemetryEvent): any;
|
|
trackException(telemetry: TelemetryException): any;
|
|
trackTrace(telemetry: TelemetryTrace): any;
|
|
flush(): any;
|
|
}
|
|
export interface BotPageViewTelemetryClient {
|
|
trackPageView(telemetry: TelemetryPageView): any;
|
|
}
|
|
export interface TelemetryDependency {
|
|
dependencyTypeName: string;
|
|
target: string;
|
|
name: string;
|
|
data: string;
|
|
duration: number;
|
|
success: boolean;
|
|
resultCode: number;
|
|
}
|
|
export interface TelemetryEvent {
|
|
name: string;
|
|
properties?: {
|
|
[key: string]: any;
|
|
};
|
|
metrics?: {
|
|
[key: string]: number;
|
|
};
|
|
}
|
|
export interface TelemetryException {
|
|
exception: Error;
|
|
handledAt?: string;
|
|
properties?: {
|
|
[key: string]: string;
|
|
};
|
|
measurements?: {
|
|
[key: string]: number;
|
|
};
|
|
severityLevel?: Severity;
|
|
}
|
|
export interface TelemetryTrace {
|
|
message: string;
|
|
properties?: {
|
|
[key: string]: string;
|
|
};
|
|
severityLevel?: Severity;
|
|
}
|
|
export interface TelemetryPageView {
|
|
name: string;
|
|
properties?: {
|
|
[key: string]: string;
|
|
};
|
|
metrics?: {
|
|
[key: string]: number;
|
|
};
|
|
}
|
|
/**
|
|
* A null bot telemetry client that implements [BotTelemetryClient](xref:botbuilder-core.BotTelemetryClient).
|
|
*/
|
|
export declare class NullTelemetryClient implements BotTelemetryClient, BotPageViewTelemetryClient {
|
|
/**
|
|
* Creates a new instance of the [NullTelemetryClient](xref:botbuilder-core.NullTelemetryClient) class.
|
|
*
|
|
* @param _settings Optional. Settings for the telemetry client.
|
|
*/
|
|
constructor(_settings?: any);
|
|
/**
|
|
* Logs an Application Insights page view.
|
|
*
|
|
* @param _telemetry An object implementing [TelemetryPageView](xref:botbuilder-core.TelemetryPageView).
|
|
*/
|
|
trackPageView(_telemetry: TelemetryPageView): void;
|
|
/**
|
|
* Sends information about an external dependency (outgoing call) in the application.
|
|
*
|
|
* @param _telemetry An object implementing [TelemetryDependency](xref:botbuilder-core.TelemetryDependency).
|
|
*/
|
|
trackDependency(_telemetry: TelemetryDependency): void;
|
|
/**
|
|
* Logs custom events with extensible named fields.
|
|
*
|
|
* @param _telemetry An object implementing [TelemetryEvent](xref:botbuilder-core.TelemetryEvent).
|
|
*/
|
|
trackEvent(_telemetry: TelemetryEvent): void;
|
|
/**
|
|
* Logs a system exception.
|
|
*
|
|
* @param _telemetry An object implementing [TelemetryException](xref:botbuilder-core.TelemetryException).
|
|
*/
|
|
trackException(_telemetry: TelemetryException): void;
|
|
/**
|
|
* Sends a trace message.
|
|
*
|
|
* @param _telemetry An object implementing [TelemetryTrace](xref:botbuilder-core.TelemetryTrace).
|
|
*/
|
|
trackTrace(_telemetry: TelemetryTrace): void;
|
|
/**
|
|
* Flushes the in-memory buffer and any metrics being pre-aggregated.
|
|
*/
|
|
flush(): void;
|
|
}
|
|
/**
|
|
* Logs a DialogView using the [trackPageView](xref:botbuilder-core.BotTelemetryClient.trackPageView) method on the [BotTelemetryClient](xref:botbuilder-core.BotTelemetryClient) if [BotPageViewTelemetryClient](xref:botbuilder-core.BotPageViewTelemetryClient) has been implemented.
|
|
* Alternatively logs the information out via TrackTrace.
|
|
*
|
|
* @param telemetryClient TelemetryClient that implements [BotTelemetryClient](xref:botbuilder-core.BotTelemetryClient).
|
|
* @param dialogName Name of the dialog to log the entry / start for.
|
|
* @param properties Named string values you can use to search and classify events.
|
|
* @param metrics Measurements associated with this event.
|
|
*/
|
|
export declare function telemetryTrackDialogView(telemetryClient: BotTelemetryClient, dialogName: string, properties?: {
|
|
[key: string]: any;
|
|
}, metrics?: {
|
|
[key: string]: number;
|
|
}): void;
|
|
//# sourceMappingURL=botTelemetryClient.d.ts.map
|