@fluidframework/telemetry-utils 2.0.0-dev.7.4.0.216897 → 2.0.0-dev.7.4.0.217884
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/api-report/telemetry-utils.api.md +14 -13
- package/dist/config.d.ts +1 -15
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js.map +1 -1
- package/dist/eventEmitterWithErrorHandling.d.ts +1 -3
- package/dist/eventEmitterWithErrorHandling.d.ts.map +1 -1
- package/dist/eventEmitterWithErrorHandling.js +1 -3
- package/dist/eventEmitterWithErrorHandling.js.map +1 -1
- package/dist/index.d.ts +18 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/telemetry-utils-alpha.d.ts +121 -39
- package/dist/telemetry-utils-beta.d.ts +2 -0
- package/dist/telemetry-utils-public.d.ts +2 -0
- package/dist/telemetry-utils-untrimmed.d.ts +15 -18
- package/dist/telemetryTypes.d.ts +7 -12
- package/dist/telemetryTypes.d.ts.map +1 -1
- package/dist/telemetryTypes.js.map +1 -1
- package/lib/config.d.ts +1 -15
- package/lib/config.d.ts.map +1 -1
- package/lib/config.js.map +1 -1
- package/lib/eventEmitterWithErrorHandling.d.ts +1 -3
- package/lib/eventEmitterWithErrorHandling.d.ts.map +1 -1
- package/lib/eventEmitterWithErrorHandling.js +1 -3
- package/lib/eventEmitterWithErrorHandling.js.map +1 -1
- package/lib/index.d.ts +18 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js.map +1 -1
- package/lib/telemetry-utils-alpha.d.ts +121 -39
- package/lib/telemetry-utils-beta.d.ts +2 -0
- package/lib/telemetry-utils-public.d.ts +2 -0
- package/lib/telemetry-utils-untrimmed.d.ts +15 -18
- package/lib/telemetryTypes.d.ts +7 -12
- package/lib/telemetryTypes.d.ts.map +1 -1
- package/lib/telemetryTypes.js.map +1 -1
- package/package.json +6 -6
- package/src/config.ts +5 -17
- package/src/eventEmitterWithErrorHandling.ts +1 -3
- package/src/index.ts +19 -2
- package/src/telemetryTypes.ts +7 -12
|
@@ -1,8 +1,23 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
|
|
3
3
|
import { EventEmitter } from 'events';
|
|
4
|
+
import { EventEmitterEventType } from '@fluid-internal/client-utils';
|
|
5
|
+
import { IConfigProviderBase as IConfigProviderBase_2 } from '@fluidframework/core-interfaces';
|
|
6
|
+
import { IDisposable } from '@fluidframework/core-interfaces';
|
|
7
|
+
import { IErrorBase } from '@fluidframework/core-interfaces';
|
|
8
|
+
import { IEvent } from '@fluidframework/core-interfaces';
|
|
4
9
|
import { ISequencedDocumentMessage } from '@fluidframework/protocol-definitions';
|
|
10
|
+
import { ITelemetryBaseEvent } from '@fluidframework/core-interfaces';
|
|
11
|
+
import { ITelemetryBaseLogger } from '@fluidframework/core-interfaces';
|
|
12
|
+
import { ITelemetryBaseProperties } from '@fluidframework/core-interfaces';
|
|
13
|
+
import { ITelemetryErrorEvent } from '@fluidframework/core-interfaces';
|
|
14
|
+
import { ITelemetryGenericEvent } from '@fluidframework/core-interfaces';
|
|
15
|
+
import { ITelemetryPerformanceEvent } from '@fluidframework/core-interfaces';
|
|
16
|
+
import { ITelemetryProperties } from '@fluidframework/core-interfaces';
|
|
17
|
+
import { LogLevel } from '@fluidframework/core-interfaces';
|
|
18
|
+
import { Tagged } from '@fluidframework/core-interfaces';
|
|
5
19
|
import { TelemetryEventPropertyType } from '@fluidframework/core-interfaces';
|
|
20
|
+
import { TypedEventEmitter } from '@fluid-internal/client-utils';
|
|
6
21
|
|
|
7
22
|
/* Excluded from this release type: ConfigTypes */
|
|
8
23
|
|
|
@@ -22,9 +37,22 @@ import { TelemetryEventPropertyType } from '@fluidframework/core-interfaces';
|
|
|
22
37
|
|
|
23
38
|
/* Excluded from this release type: disconnectedEventName */
|
|
24
39
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
40
|
+
/**
|
|
41
|
+
* Event Emitter helper class
|
|
42
|
+
*
|
|
43
|
+
* @remarks
|
|
44
|
+
* Any exceptions thrown by listeners will be caught and raised through "error" event.
|
|
45
|
+
* Any exception thrown by "error" listeners will propagate to the caller.
|
|
46
|
+
* @privateRemarks
|
|
47
|
+
* This probably doesn't belong in this package, as it is not telemetry-specific, and is really only intended for internal fluid-framework use.
|
|
48
|
+
* We should consider moving it to the `core-utils` package.
|
|
49
|
+
* @alpha
|
|
50
|
+
*/
|
|
51
|
+
export declare class EventEmitterWithErrorHandling<TEvent extends IEvent = IEvent> extends TypedEventEmitter<TEvent> {
|
|
52
|
+
private readonly errorHandler;
|
|
53
|
+
constructor(errorHandler: (eventName: EventEmitterEventType, error: any) => void);
|
|
54
|
+
emit(event: EventEmitterEventType, ...args: unknown[]): boolean;
|
|
55
|
+
}
|
|
28
56
|
|
|
29
57
|
/* Excluded from this release type: eventNamespaceSeparator */
|
|
30
58
|
|
|
@@ -48,12 +76,6 @@ import { TelemetryEventPropertyType } from '@fluidframework/core-interfaces';
|
|
|
48
76
|
|
|
49
77
|
/* Excluded from this release type: IConfigProviderBase */
|
|
50
78
|
|
|
51
|
-
/* Excluded from this release type: IDisposable */
|
|
52
|
-
|
|
53
|
-
/* Excluded from this release type: IErrorBase */
|
|
54
|
-
|
|
55
|
-
/* Excluded from this release type: IEvent */
|
|
56
|
-
|
|
57
79
|
/* Excluded from this release type: IEventSampler */
|
|
58
80
|
|
|
59
81
|
/* Excluded from this release type: IFluidErrorAnnotations */
|
|
@@ -80,35 +102,79 @@ import { TelemetryEventPropertyType } from '@fluidframework/core-interfaces';
|
|
|
80
102
|
|
|
81
103
|
/* Excluded from this release type: ITaggedTelemetryPropertyTypeExt */
|
|
82
104
|
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
/* Excluded from this release type: ITelemetryErrorEventExt */
|
|
105
|
+
/**
|
|
106
|
+
* Error telemetry event.
|
|
107
|
+
* @remarks Maps to category = "error"
|
|
108
|
+
* @alpha
|
|
109
|
+
*/
|
|
110
|
+
export declare interface ITelemetryErrorEventExt extends ITelemetryPropertiesExt {
|
|
111
|
+
eventName: string;
|
|
112
|
+
}
|
|
92
113
|
|
|
93
114
|
/* Excluded from this release type: ITelemetryEventExt */
|
|
94
115
|
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
116
|
+
/**
|
|
117
|
+
* Informational (non-error) telemetry event
|
|
118
|
+
* @remarks Maps to category = "generic"
|
|
119
|
+
* @alpha
|
|
120
|
+
*/
|
|
121
|
+
export declare interface ITelemetryGenericEventExt extends ITelemetryPropertiesExt {
|
|
122
|
+
eventName: string;
|
|
123
|
+
category?: TelemetryEventCategory;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
/**
|
|
127
|
+
* An extended {@link @fluidframework/core-interfaces#ITelemetryBaseLogger} which allows for more lenient event types.
|
|
128
|
+
*
|
|
129
|
+
* @remarks
|
|
130
|
+
* This interface is meant to be used internally within the Fluid Framework,
|
|
131
|
+
* and `ITelemetryBaseLogger` should be used when loggers are passed between layers.
|
|
132
|
+
* @alpha
|
|
133
|
+
*/
|
|
134
|
+
export declare interface ITelemetryLoggerExt extends ITelemetryBaseLogger {
|
|
135
|
+
/**
|
|
136
|
+
* Send information telemetry event
|
|
137
|
+
* @param event - Event to send
|
|
138
|
+
* @param error - optional error object to log
|
|
139
|
+
* @param logLevel - optional level of the log.
|
|
140
|
+
*/
|
|
141
|
+
sendTelemetryEvent(event: ITelemetryGenericEventExt, error?: unknown, logLevel?: typeof LogLevel.verbose | typeof LogLevel.default): void;
|
|
142
|
+
/**
|
|
143
|
+
* Send error telemetry event
|
|
144
|
+
* @param event - Event to send
|
|
145
|
+
* @param error - optional error object to log
|
|
146
|
+
*/
|
|
147
|
+
sendErrorEvent(event: ITelemetryErrorEventExt, error?: unknown): void;
|
|
148
|
+
/**
|
|
149
|
+
* Send performance telemetry event
|
|
150
|
+
* @param event - Event to send
|
|
151
|
+
* @param error - optional error object to log
|
|
152
|
+
* @param logLevel - optional level of the log.
|
|
153
|
+
*/
|
|
154
|
+
sendPerformanceEvent(event: ITelemetryPerformanceEventExt, error?: unknown, logLevel?: typeof LogLevel.verbose | typeof LogLevel.default): void;
|
|
155
|
+
}
|
|
100
156
|
|
|
101
157
|
/* Excluded from this release type: ITelemetryLoggerPropertyBag */
|
|
102
158
|
|
|
103
159
|
/* Excluded from this release type: ITelemetryLoggerPropertyBags */
|
|
104
160
|
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
161
|
+
/**
|
|
162
|
+
* Performance telemetry event.
|
|
163
|
+
* @remarks Maps to category = "performance"
|
|
164
|
+
* @alpha
|
|
165
|
+
*/
|
|
166
|
+
export declare interface ITelemetryPerformanceEventExt extends ITelemetryGenericEventExt {
|
|
167
|
+
duration?: number;
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
/**
|
|
171
|
+
* JSON-serializable properties, which will be logged with telemetry.
|
|
172
|
+
*
|
|
173
|
+
* @alpha
|
|
174
|
+
*/
|
|
175
|
+
export declare interface ITelemetryPropertiesExt {
|
|
176
|
+
[index: string]: TelemetryEventPropertyTypeExt | Tagged<TelemetryEventPropertyTypeExt>;
|
|
177
|
+
}
|
|
112
178
|
|
|
113
179
|
/* Excluded from this release type: IUsageError */
|
|
114
180
|
|
|
@@ -120,8 +186,6 @@ import { TelemetryEventPropertyType } from '@fluidframework/core-interfaces';
|
|
|
120
186
|
|
|
121
187
|
/* Excluded from this release type: logIfFalse */
|
|
122
188
|
|
|
123
|
-
/* Excluded from this release type: LogLevel */
|
|
124
|
-
|
|
125
189
|
/* Excluded from this release type: mixinMonitoringContext */
|
|
126
190
|
|
|
127
191
|
/* Excluded from this release type: MockLogger */
|
|
@@ -152,17 +216,37 @@ import { TelemetryEventPropertyType } from '@fluidframework/core-interfaces';
|
|
|
152
216
|
|
|
153
217
|
/* Excluded from this release type: tagData */
|
|
154
218
|
|
|
155
|
-
/* Excluded from this release type: Tagged */
|
|
156
|
-
|
|
157
219
|
/* Excluded from this release type: TaggedLoggerAdapter */
|
|
158
220
|
|
|
159
221
|
/* Excluded from this release type: TelemetryBaseEventPropertyType */
|
|
160
222
|
|
|
161
223
|
/* Excluded from this release type: TelemetryDataTag */
|
|
162
224
|
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
225
|
+
/**
|
|
226
|
+
* The categories FF uses when instrumenting the code.
|
|
227
|
+
*
|
|
228
|
+
* generic - Informational log event
|
|
229
|
+
*
|
|
230
|
+
* error - Error log event, ideally 0 of these are logged during a session
|
|
231
|
+
*
|
|
232
|
+
* performance - Includes duration, and often has _start, _end, or _cancel suffixes for activity tracking
|
|
233
|
+
* @alpha
|
|
234
|
+
*/
|
|
235
|
+
export declare type TelemetryEventCategory = "generic" | "error" | "performance";
|
|
236
|
+
|
|
237
|
+
/**
|
|
238
|
+
* Property types that can be logged.
|
|
239
|
+
*
|
|
240
|
+
* @remarks
|
|
241
|
+
* Includes extra types beyond {@link @fluidframework/core-interfaces#TelemetryBaseEventPropertyType}, which must be
|
|
242
|
+
* converted before sending to a base logger.
|
|
243
|
+
*
|
|
244
|
+
* @alpha
|
|
245
|
+
*/
|
|
246
|
+
export declare type TelemetryEventPropertyTypeExt = string | number | boolean | undefined | (string | number | boolean)[] | {
|
|
247
|
+
[key: string]: // Flat objects can have the same properties as the event itself
|
|
248
|
+
string | number | boolean | undefined | (string | number | boolean)[];
|
|
249
|
+
};
|
|
166
250
|
|
|
167
251
|
/* Excluded from this release type: TelemetryEventPropertyTypes */
|
|
168
252
|
|
|
@@ -170,8 +254,6 @@ import { TelemetryEventPropertyType } from '@fluidframework/core-interfaces';
|
|
|
170
254
|
|
|
171
255
|
/* Excluded from this release type: ThresholdCounter */
|
|
172
256
|
|
|
173
|
-
/* Excluded from this release type: TypedEventEmitter */
|
|
174
|
-
|
|
175
257
|
/* Excluded from this release type: UsageError */
|
|
176
258
|
|
|
177
259
|
/* Excluded from this release type: wrapError */
|
|
@@ -48,6 +48,8 @@ import { TelemetryEventPropertyType } from '@fluidframework/core-interfaces';
|
|
|
48
48
|
|
|
49
49
|
/* Excluded from this release type: IConfigProviderBase */
|
|
50
50
|
|
|
51
|
+
/* Excluded from this release type: IConfigProviderBase_2 */
|
|
52
|
+
|
|
51
53
|
/* Excluded from this release type: IDisposable */
|
|
52
54
|
|
|
53
55
|
/* Excluded from this release type: IErrorBase */
|
|
@@ -48,6 +48,8 @@ import { TelemetryEventPropertyType } from '@fluidframework/core-interfaces';
|
|
|
48
48
|
|
|
49
49
|
/* Excluded from this release type: IConfigProviderBase */
|
|
50
50
|
|
|
51
|
+
/* Excluded from this release type: IConfigProviderBase_2 */
|
|
52
|
+
|
|
51
53
|
/* Excluded from this release type: IDisposable */
|
|
52
54
|
|
|
53
55
|
/* Excluded from this release type: IErrorBase */
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import { EventEmitter } from 'events';
|
|
4
4
|
import { EventEmitterEventType } from '@fluid-internal/client-utils';
|
|
5
|
+
import { IConfigProviderBase as IConfigProviderBase_2 } from '@fluidframework/core-interfaces';
|
|
5
6
|
import { IDisposable } from '@fluidframework/core-interfaces';
|
|
6
7
|
import { IErrorBase } from '@fluidframework/core-interfaces';
|
|
7
8
|
import { IEvent } from '@fluidframework/core-interfaces';
|
|
@@ -25,6 +26,7 @@ import { TypedEventEmitter } from '@fluid-internal/client-utils';
|
|
|
25
26
|
|
|
26
27
|
/**
|
|
27
28
|
* Types supported by {@link IConfigProviderBase}.
|
|
29
|
+
* @deprecated Use ConfigTypes from fluidFramework/core-interfaces
|
|
28
30
|
*
|
|
29
31
|
* @internal
|
|
30
32
|
*/
|
|
@@ -150,12 +152,10 @@ export declare const disconnectedEventName = "disconnected";
|
|
|
150
152
|
* @remarks
|
|
151
153
|
* Any exceptions thrown by listeners will be caught and raised through "error" event.
|
|
152
154
|
* Any exception thrown by "error" listeners will propagate to the caller.
|
|
153
|
-
*
|
|
154
|
-
* @internal
|
|
155
|
-
*
|
|
156
155
|
* @privateRemarks
|
|
157
156
|
* This probably doesn't belong in this package, as it is not telemetry-specific, and is really only intended for internal fluid-framework use.
|
|
158
157
|
* We should consider moving it to the `core-utils` package.
|
|
158
|
+
* @alpha
|
|
159
159
|
*/
|
|
160
160
|
export declare class EventEmitterWithErrorHandling<TEvent extends IEvent = IEvent> extends TypedEventEmitter<TEvent> {
|
|
161
161
|
private readonly errorHandler;
|
|
@@ -264,7 +264,7 @@ export declare const hasErrorInstanceId: (x: unknown) => x is {
|
|
|
264
264
|
*
|
|
265
265
|
* @internal
|
|
266
266
|
*/
|
|
267
|
-
export declare interface IConfigProvider extends
|
|
267
|
+
export declare interface IConfigProvider extends IConfigProviderBase_2 {
|
|
268
268
|
getBoolean(name: string): boolean | undefined;
|
|
269
269
|
getNumber(name: string): number | undefined;
|
|
270
270
|
getString(name: string): string | undefined;
|
|
@@ -276,6 +276,8 @@ export declare interface IConfigProvider extends IConfigProviderBase {
|
|
|
276
276
|
/**
|
|
277
277
|
* Base interface for providing configurations to enable/disable/control features.
|
|
278
278
|
*
|
|
279
|
+
* @deprecated Use IConfigProviderBase from fluidFramework/core-interfaces
|
|
280
|
+
*
|
|
279
281
|
* @internal
|
|
280
282
|
*/
|
|
281
283
|
export declare interface IConfigProviderBase {
|
|
@@ -452,8 +454,7 @@ export declare interface ITaggedTelemetryPropertyTypeExt {
|
|
|
452
454
|
/**
|
|
453
455
|
* Error telemetry event.
|
|
454
456
|
* @remarks Maps to category = "error"
|
|
455
|
-
*
|
|
456
|
-
* @internal
|
|
457
|
+
* @alpha
|
|
457
458
|
*/
|
|
458
459
|
export declare interface ITelemetryErrorEventExt extends ITelemetryPropertiesExt {
|
|
459
460
|
eventName: string;
|
|
@@ -475,8 +476,7 @@ export declare interface ITelemetryEventExt extends ITelemetryPropertiesExt {
|
|
|
475
476
|
/**
|
|
476
477
|
* Informational (non-error) telemetry event
|
|
477
478
|
* @remarks Maps to category = "generic"
|
|
478
|
-
*
|
|
479
|
-
* @internal
|
|
479
|
+
* @alpha
|
|
480
480
|
*/
|
|
481
481
|
export declare interface ITelemetryGenericEventExt extends ITelemetryPropertiesExt {
|
|
482
482
|
eventName: string;
|
|
@@ -489,8 +489,7 @@ export declare interface ITelemetryGenericEventExt extends ITelemetryPropertiesE
|
|
|
489
489
|
* @remarks
|
|
490
490
|
* This interface is meant to be used internally within the Fluid Framework,
|
|
491
491
|
* and `ITelemetryBaseLogger` should be used when loggers are passed between layers.
|
|
492
|
-
*
|
|
493
|
-
* @internal
|
|
492
|
+
* @alpha
|
|
494
493
|
*/
|
|
495
494
|
export declare interface ITelemetryLoggerExt extends ITelemetryBaseLogger {
|
|
496
495
|
/**
|
|
@@ -533,8 +532,7 @@ export declare interface ITelemetryLoggerPropertyBags {
|
|
|
533
532
|
/**
|
|
534
533
|
* Performance telemetry event.
|
|
535
534
|
* @remarks Maps to category = "performance"
|
|
536
|
-
*
|
|
537
|
-
* @internal
|
|
535
|
+
* @alpha
|
|
538
536
|
*/
|
|
539
537
|
export declare interface ITelemetryPerformanceEventExt extends ITelemetryGenericEventExt {
|
|
540
538
|
duration?: number;
|
|
@@ -543,7 +541,7 @@ export declare interface ITelemetryPerformanceEventExt extends ITelemetryGeneric
|
|
|
543
541
|
/**
|
|
544
542
|
* JSON-serializable properties, which will be logged with telemetry.
|
|
545
543
|
*
|
|
546
|
-
* @
|
|
544
|
+
* @alpha
|
|
547
545
|
*/
|
|
548
546
|
export declare interface ITelemetryPropertiesExt {
|
|
549
547
|
[index: string]: TelemetryEventPropertyTypeExt | Tagged<TelemetryEventPropertyTypeExt>;
|
|
@@ -623,7 +621,7 @@ export declare function logIfFalse(condition: unknown, logger: ITelemetryBaseLog
|
|
|
623
621
|
*
|
|
624
622
|
* @internal
|
|
625
623
|
*/
|
|
626
|
-
export declare function mixinMonitoringContext<L extends ITelemetryBaseLogger = ITelemetryLoggerExt>(logger: L, ...configs: (
|
|
624
|
+
export declare function mixinMonitoringContext<L extends ITelemetryBaseLogger = ITelemetryLoggerExt>(logger: L, ...configs: (IConfigProviderBase_2 | undefined)[]): MonitoringContext<L>;
|
|
627
625
|
|
|
628
626
|
/**
|
|
629
627
|
* The MockLogger records events sent to it, and then can walk back over those events
|
|
@@ -912,7 +910,7 @@ export declare class SampledTelemetryHelper implements IDisposable {
|
|
|
912
910
|
*
|
|
913
911
|
* @internal
|
|
914
912
|
*/
|
|
915
|
-
export declare const sessionStorageConfigProvider: Lazy<
|
|
913
|
+
export declare const sessionStorageConfigProvider: Lazy<IConfigProviderBase_2>;
|
|
916
914
|
|
|
917
915
|
/**
|
|
918
916
|
* Tags all provided `values` as {@link TelemetryDataTag.CodeArtifact}.
|
|
@@ -1017,8 +1015,7 @@ export declare enum TelemetryDataTag {
|
|
|
1017
1015
|
* error - Error log event, ideally 0 of these are logged during a session
|
|
1018
1016
|
*
|
|
1019
1017
|
* performance - Includes duration, and often has _start, _end, or _cancel suffixes for activity tracking
|
|
1020
|
-
*
|
|
1021
|
-
* @internal
|
|
1018
|
+
* @alpha
|
|
1022
1019
|
*/
|
|
1023
1020
|
export declare type TelemetryEventCategory = "generic" | "error" | "performance";
|
|
1024
1021
|
|
|
@@ -1029,7 +1026,7 @@ export declare type TelemetryEventCategory = "generic" | "error" | "performance"
|
|
|
1029
1026
|
* Includes extra types beyond {@link @fluidframework/core-interfaces#TelemetryBaseEventPropertyType}, which must be
|
|
1030
1027
|
* converted before sending to a base logger.
|
|
1031
1028
|
*
|
|
1032
|
-
* @
|
|
1029
|
+
* @alpha
|
|
1033
1030
|
*/
|
|
1034
1031
|
export declare type TelemetryEventPropertyTypeExt = string | number | boolean | undefined | (string | number | boolean)[] | {
|
|
1035
1032
|
[key: string]: // Flat objects can have the same properties as the event itself
|
package/lib/telemetryTypes.d.ts
CHANGED
|
@@ -11,8 +11,7 @@ import { ITelemetryBaseLogger, LogLevel, Tagged } from "@fluidframework/core-int
|
|
|
11
11
|
* error - Error log event, ideally 0 of these are logged during a session
|
|
12
12
|
*
|
|
13
13
|
* performance - Includes duration, and often has _start, _end, or _cancel suffixes for activity tracking
|
|
14
|
-
*
|
|
15
|
-
* @internal
|
|
14
|
+
* @alpha
|
|
16
15
|
*/
|
|
17
16
|
export type TelemetryEventCategory = "generic" | "error" | "performance";
|
|
18
17
|
/**
|
|
@@ -22,7 +21,7 @@ export type TelemetryEventCategory = "generic" | "error" | "performance";
|
|
|
22
21
|
* Includes extra types beyond {@link @fluidframework/core-interfaces#TelemetryBaseEventPropertyType}, which must be
|
|
23
22
|
* converted before sending to a base logger.
|
|
24
23
|
*
|
|
25
|
-
* @
|
|
24
|
+
* @alpha
|
|
26
25
|
*/
|
|
27
26
|
export type TelemetryEventPropertyTypeExt = string | number | boolean | undefined | (string | number | boolean)[] | {
|
|
28
27
|
[key: string]: // Flat objects can have the same properties as the event itself
|
|
@@ -43,7 +42,7 @@ export interface ITaggedTelemetryPropertyTypeExt {
|
|
|
43
42
|
/**
|
|
44
43
|
* JSON-serializable properties, which will be logged with telemetry.
|
|
45
44
|
*
|
|
46
|
-
* @
|
|
45
|
+
* @alpha
|
|
47
46
|
*/
|
|
48
47
|
export interface ITelemetryPropertiesExt {
|
|
49
48
|
[index: string]: TelemetryEventPropertyTypeExt | Tagged<TelemetryEventPropertyTypeExt>;
|
|
@@ -63,8 +62,7 @@ export interface ITelemetryEventExt extends ITelemetryPropertiesExt {
|
|
|
63
62
|
/**
|
|
64
63
|
* Informational (non-error) telemetry event
|
|
65
64
|
* @remarks Maps to category = "generic"
|
|
66
|
-
*
|
|
67
|
-
* @internal
|
|
65
|
+
* @alpha
|
|
68
66
|
*/
|
|
69
67
|
export interface ITelemetryGenericEventExt extends ITelemetryPropertiesExt {
|
|
70
68
|
eventName: string;
|
|
@@ -73,8 +71,7 @@ export interface ITelemetryGenericEventExt extends ITelemetryPropertiesExt {
|
|
|
73
71
|
/**
|
|
74
72
|
* Error telemetry event.
|
|
75
73
|
* @remarks Maps to category = "error"
|
|
76
|
-
*
|
|
77
|
-
* @internal
|
|
74
|
+
* @alpha
|
|
78
75
|
*/
|
|
79
76
|
export interface ITelemetryErrorEventExt extends ITelemetryPropertiesExt {
|
|
80
77
|
eventName: string;
|
|
@@ -82,8 +79,7 @@ export interface ITelemetryErrorEventExt extends ITelemetryPropertiesExt {
|
|
|
82
79
|
/**
|
|
83
80
|
* Performance telemetry event.
|
|
84
81
|
* @remarks Maps to category = "performance"
|
|
85
|
-
*
|
|
86
|
-
* @internal
|
|
82
|
+
* @alpha
|
|
87
83
|
*/
|
|
88
84
|
export interface ITelemetryPerformanceEventExt extends ITelemetryGenericEventExt {
|
|
89
85
|
duration?: number;
|
|
@@ -94,8 +90,7 @@ export interface ITelemetryPerformanceEventExt extends ITelemetryGenericEventExt
|
|
|
94
90
|
* @remarks
|
|
95
91
|
* This interface is meant to be used internally within the Fluid Framework,
|
|
96
92
|
* and `ITelemetryBaseLogger` should be used when loggers are passed between layers.
|
|
97
|
-
*
|
|
98
|
-
* @internal
|
|
93
|
+
* @alpha
|
|
99
94
|
*/
|
|
100
95
|
export interface ITelemetryLoggerExt extends ITelemetryBaseLogger {
|
|
101
96
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telemetryTypes.d.ts","sourceRoot":"","sources":["../src/telemetryTypes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAC;AAEzF
|
|
1
|
+
{"version":3,"file":"telemetryTypes.d.ts","sourceRoot":"","sources":["../src/telemetryTypes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAC;AAEzF;;;;;;;;;GASG;AACH,MAAM,MAAM,sBAAsB,GAAG,SAAS,GAAG,OAAO,GAAG,aAAa,CAAC;AAEzE;;;;;;;;GAQG;AACH,MAAM,MAAM,6BAA6B,GACtC,MAAM,GACN,MAAM,GACN,OAAO,GACP,SAAS,GACT,CAAC,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,EAAE,GAC7B;IACA,CAAC,GAAG,EAAE,MAAM,GACZ,AADe,gEAAgE;IAC/E,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,GAAG,CAAC,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC,EAAE,CAAC;CACrE,CAAC;AAEL;;;;;;;GAOG;AACH,MAAM,WAAW,+BAA+B;IAC/C,KAAK,EAAE,6BAA6B,CAAC;IACrC,GAAG,EAAE,MAAM,CAAC;CACZ;AAED;;;;GAIG;AACH,MAAM,WAAW,uBAAuB;IACvC,CAAC,KAAK,EAAE,MAAM,GAAG,6BAA6B,GAAG,MAAM,CAAC,6BAA6B,CAAC,CAAC;CACvF;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,kBAAmB,SAAQ,uBAAuB;IAClE,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CAClB;AAED;;;;GAIG;AACH,MAAM,WAAW,yBAA0B,SAAQ,uBAAuB;IACzE,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,sBAAsB,CAAC;CAClC;AAED;;;;GAIG;AACH,MAAM,WAAW,uBAAwB,SAAQ,uBAAuB;IACvE,SAAS,EAAE,MAAM,CAAC;CAClB;AAED;;;;GAIG;AACH,MAAM,WAAW,6BAA8B,SAAQ,yBAAyB;IAC/E,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,mBAAoB,SAAQ,oBAAoB;IAChE;;;;;OAKG;IACH,kBAAkB,CACjB,KAAK,EAAE,yBAAyB,EAChC,KAAK,CAAC,EAAE,OAAO,EACf,QAAQ,CAAC,EAAE,OAAO,QAAQ,CAAC,OAAO,GAAG,OAAO,QAAQ,CAAC,OAAO,GAC1D,IAAI,CAAC;IAER;;;;OAIG;IACH,cAAc,CAAC,KAAK,EAAE,uBAAuB,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAEtE;;;;;OAKG;IACH,oBAAoB,CACnB,KAAK,EAAE,6BAA6B,EACpC,KAAK,CAAC,EAAE,OAAO,EACf,QAAQ,CAAC,EAAE,OAAO,QAAQ,CAAC,OAAO,GAAG,OAAO,QAAQ,CAAC,OAAO,GAC1D,IAAI,CAAC;CACR"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"telemetryTypes.js","sourceRoot":"","sources":["../src/telemetryTypes.ts"],"names":[],"mappings":"AAAA;;;GAGG","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { ITelemetryBaseLogger, LogLevel, Tagged } from \"@fluidframework/core-interfaces\";\n\n/**\n * The categories FF uses when instrumenting the code.\n *\n * generic - Informational log event\n *\n * error - Error log event, ideally 0 of these are logged during a session\n *\n * performance - Includes duration, and often has _start, _end, or _cancel suffixes for activity tracking\n
|
|
1
|
+
{"version":3,"file":"telemetryTypes.js","sourceRoot":"","sources":["../src/telemetryTypes.ts"],"names":[],"mappings":"AAAA;;;GAGG","sourcesContent":["/*!\n * Copyright (c) Microsoft Corporation and contributors. All rights reserved.\n * Licensed under the MIT License.\n */\n\nimport { ITelemetryBaseLogger, LogLevel, Tagged } from \"@fluidframework/core-interfaces\";\n\n/**\n * The categories FF uses when instrumenting the code.\n *\n * generic - Informational log event\n *\n * error - Error log event, ideally 0 of these are logged during a session\n *\n * performance - Includes duration, and often has _start, _end, or _cancel suffixes for activity tracking\n * @alpha\n */\nexport type TelemetryEventCategory = \"generic\" | \"error\" | \"performance\";\n\n/**\n * Property types that can be logged.\n *\n * @remarks\n * Includes extra types beyond {@link @fluidframework/core-interfaces#TelemetryBaseEventPropertyType}, which must be\n * converted before sending to a base logger.\n *\n * @alpha\n */\nexport type TelemetryEventPropertyTypeExt =\n\t| string\n\t| number\n\t| boolean\n\t| undefined\n\t| (string | number | boolean)[]\n\t| {\n\t\t\t[key: string]: // Flat objects can have the same properties as the event itself\n\t\t\tstring | number | boolean | undefined | (string | number | boolean)[];\n\t };\n\n/**\n * A property to be logged to telemetry containing both the value and a tag. Tags are generic strings that can be used\n * to mark pieces of information that should be organized or handled differently by loggers in various first or third\n * party scenarios. For example, tags are used to mark personal information that should not be stored in logs.\n *\n * @deprecated Use {@link @fluidframework/core-interfaces#Tagged}\\<{@link TelemetryEventPropertyTypeExt}\\>\n * @internal\n */\nexport interface ITaggedTelemetryPropertyTypeExt {\n\tvalue: TelemetryEventPropertyTypeExt;\n\ttag: string;\n}\n\n/**\n * JSON-serializable properties, which will be logged with telemetry.\n *\n * @alpha\n */\nexport interface ITelemetryPropertiesExt {\n\t[index: string]: TelemetryEventPropertyTypeExt | Tagged<TelemetryEventPropertyTypeExt>;\n}\n\n/**\n * Interface for logging telemetry statements.\n * @remarks May contain any number of properties that get serialized as json payload.\n * @param category - category of the event, like \"error\", \"performance\", \"generic\", etc.\n * @param eventName - name of the event.\n *\n * @internal\n */\nexport interface ITelemetryEventExt extends ITelemetryPropertiesExt {\n\tcategory: string;\n\teventName: string;\n}\n\n/**\n * Informational (non-error) telemetry event\n * @remarks Maps to category = \"generic\"\n * @alpha\n */\nexport interface ITelemetryGenericEventExt extends ITelemetryPropertiesExt {\n\teventName: string;\n\tcategory?: TelemetryEventCategory;\n}\n\n/**\n * Error telemetry event.\n * @remarks Maps to category = \"error\"\n * @alpha\n */\nexport interface ITelemetryErrorEventExt extends ITelemetryPropertiesExt {\n\teventName: string;\n}\n\n/**\n * Performance telemetry event.\n * @remarks Maps to category = \"performance\"\n * @alpha\n */\nexport interface ITelemetryPerformanceEventExt extends ITelemetryGenericEventExt {\n\tduration?: number; // Duration of event (optional)\n}\n\n/**\n * An extended {@link @fluidframework/core-interfaces#ITelemetryBaseLogger} which allows for more lenient event types.\n *\n * @remarks\n * This interface is meant to be used internally within the Fluid Framework,\n * and `ITelemetryBaseLogger` should be used when loggers are passed between layers.\n * @alpha\n */\nexport interface ITelemetryLoggerExt extends ITelemetryBaseLogger {\n\t/**\n\t * Send information telemetry event\n\t * @param event - Event to send\n\t * @param error - optional error object to log\n\t * @param logLevel - optional level of the log.\n\t */\n\tsendTelemetryEvent(\n\t\tevent: ITelemetryGenericEventExt,\n\t\terror?: unknown,\n\t\tlogLevel?: typeof LogLevel.verbose | typeof LogLevel.default,\n\t): void;\n\n\t/**\n\t * Send error telemetry event\n\t * @param event - Event to send\n\t * @param error - optional error object to log\n\t */\n\tsendErrorEvent(event: ITelemetryErrorEventExt, error?: unknown): void;\n\n\t/**\n\t * Send performance telemetry event\n\t * @param event - Event to send\n\t * @param error - optional error object to log\n\t * @param logLevel - optional level of the log.\n\t */\n\tsendPerformanceEvent(\n\t\tevent: ITelemetryPerformanceEventExt,\n\t\terror?: unknown,\n\t\tlogLevel?: typeof LogLevel.verbose | typeof LogLevel.default,\n\t): void;\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fluidframework/telemetry-utils",
|
|
3
|
-
"version": "2.0.0-dev.7.4.0.
|
|
3
|
+
"version": "2.0.0-dev.7.4.0.217884",
|
|
4
4
|
"description": "Collection of telemetry relates utilities for Fluid",
|
|
5
5
|
"homepage": "https://fluidframework.com",
|
|
6
6
|
"repository": {
|
|
@@ -39,9 +39,9 @@
|
|
|
39
39
|
"temp-directory": "nyc/.nyc_output"
|
|
40
40
|
},
|
|
41
41
|
"dependencies": {
|
|
42
|
-
"@fluid-internal/client-utils": "2.0.0-dev.7.4.0.
|
|
43
|
-
"@fluidframework/core-interfaces": "2.0.0-dev.7.4.0.
|
|
44
|
-
"@fluidframework/core-utils": "2.0.0-dev.7.4.0.
|
|
42
|
+
"@fluid-internal/client-utils": "2.0.0-dev.7.4.0.217884",
|
|
43
|
+
"@fluidframework/core-interfaces": "2.0.0-dev.7.4.0.217884",
|
|
44
|
+
"@fluidframework/core-utils": "2.0.0-dev.7.4.0.217884",
|
|
45
45
|
"@fluidframework/protocol-definitions": "^3.0.0",
|
|
46
46
|
"debug": "^4.3.4",
|
|
47
47
|
"events": "^3.1.0",
|
|
@@ -52,13 +52,13 @@
|
|
|
52
52
|
"@fluidframework/build-common": "^2.0.3",
|
|
53
53
|
"@fluidframework/build-tools": "^0.28.0",
|
|
54
54
|
"@fluidframework/eslint-config-fluid": "^3.1.0",
|
|
55
|
-
"@fluidframework/mocha-test-setup": "2.0.0-dev.7.4.0.
|
|
55
|
+
"@fluidframework/mocha-test-setup": "2.0.0-dev.7.4.0.217884",
|
|
56
56
|
"@fluidframework/telemetry-utils-previous": "npm:@fluidframework/telemetry-utils@2.0.0-internal.7.2.0",
|
|
57
57
|
"@microsoft/api-extractor": "^7.38.3",
|
|
58
58
|
"@types/debug": "^4.1.5",
|
|
59
59
|
"@types/events": "^3.0.0",
|
|
60
60
|
"@types/mocha": "^9.1.1",
|
|
61
|
-
"@types/node": "^
|
|
61
|
+
"@types/node": "^18.19.0",
|
|
62
62
|
"@types/uuid": "^9.0.2",
|
|
63
63
|
"c8": "^7.7.1",
|
|
64
64
|
"copyfiles": "^2.4.1",
|
package/src/config.ts
CHANGED
|
@@ -2,27 +2,15 @@
|
|
|
2
2
|
* Copyright (c) Microsoft Corporation and contributors. All rights reserved.
|
|
3
3
|
* Licensed under the MIT License.
|
|
4
4
|
*/
|
|
5
|
-
import {
|
|
5
|
+
import {
|
|
6
|
+
ITelemetryBaseLogger,
|
|
7
|
+
IConfigProviderBase,
|
|
8
|
+
ConfigTypes,
|
|
9
|
+
} from "@fluidframework/core-interfaces";
|
|
6
10
|
import { Lazy } from "@fluidframework/core-utils";
|
|
7
11
|
import { createChildLogger, tagCodeArtifacts } from "./logger";
|
|
8
12
|
import { ITelemetryLoggerExt } from "./telemetryTypes";
|
|
9
13
|
|
|
10
|
-
/**
|
|
11
|
-
* Types supported by {@link IConfigProviderBase}.
|
|
12
|
-
*
|
|
13
|
-
* @internal
|
|
14
|
-
*/
|
|
15
|
-
export type ConfigTypes = string | number | boolean | number[] | string[] | boolean[] | undefined;
|
|
16
|
-
|
|
17
|
-
/**
|
|
18
|
-
* Base interface for providing configurations to enable/disable/control features.
|
|
19
|
-
*
|
|
20
|
-
* @internal
|
|
21
|
-
*/
|
|
22
|
-
export interface IConfigProviderBase {
|
|
23
|
-
getRawConfig(name: string): ConfigTypes;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
14
|
/**
|
|
27
15
|
* Explicitly typed interface for reading configurations.
|
|
28
16
|
*
|
|
@@ -11,12 +11,10 @@ import { IEvent } from "@fluidframework/core-interfaces";
|
|
|
11
11
|
* @remarks
|
|
12
12
|
* Any exceptions thrown by listeners will be caught and raised through "error" event.
|
|
13
13
|
* Any exception thrown by "error" listeners will propagate to the caller.
|
|
14
|
-
*
|
|
15
|
-
* @internal
|
|
16
|
-
*
|
|
17
14
|
* @privateRemarks
|
|
18
15
|
* This probably doesn't belong in this package, as it is not telemetry-specific, and is really only intended for internal fluid-framework use.
|
|
19
16
|
* We should consider moving it to the `core-utils` package.
|
|
17
|
+
* @alpha
|
|
20
18
|
*/
|
|
21
19
|
export class EventEmitterWithErrorHandling<
|
|
22
20
|
TEvent extends IEvent = IEvent,
|
package/src/index.ts
CHANGED
|
@@ -5,11 +5,9 @@
|
|
|
5
5
|
export {
|
|
6
6
|
createChildMonitoringContext,
|
|
7
7
|
MonitoringContext,
|
|
8
|
-
IConfigProviderBase,
|
|
9
8
|
sessionStorageConfigProvider,
|
|
10
9
|
mixinMonitoringContext,
|
|
11
10
|
IConfigProvider,
|
|
12
|
-
ConfigTypes,
|
|
13
11
|
loggerToMonitoringContext,
|
|
14
12
|
} from "./config";
|
|
15
13
|
export {
|
|
@@ -81,3 +79,22 @@ export {
|
|
|
81
79
|
ITelemetryPropertiesExt,
|
|
82
80
|
TelemetryEventCategory,
|
|
83
81
|
} from "./telemetryTypes";
|
|
82
|
+
|
|
83
|
+
/**
|
|
84
|
+
* Types supported by {@link IConfigProviderBase}.
|
|
85
|
+
* @deprecated Use ConfigTypes from fluidFramework/core-interfaces
|
|
86
|
+
*
|
|
87
|
+
* @internal
|
|
88
|
+
*/
|
|
89
|
+
export type ConfigTypes = string | number | boolean | number[] | string[] | boolean[] | undefined;
|
|
90
|
+
|
|
91
|
+
/**
|
|
92
|
+
* Base interface for providing configurations to enable/disable/control features.
|
|
93
|
+
*
|
|
94
|
+
* @deprecated Use IConfigProviderBase from fluidFramework/core-interfaces
|
|
95
|
+
*
|
|
96
|
+
* @internal
|
|
97
|
+
*/
|
|
98
|
+
export interface IConfigProviderBase {
|
|
99
|
+
getRawConfig(name: string): ConfigTypes;
|
|
100
|
+
}
|
package/src/telemetryTypes.ts
CHANGED
|
@@ -13,8 +13,7 @@ import { ITelemetryBaseLogger, LogLevel, Tagged } from "@fluidframework/core-int
|
|
|
13
13
|
* error - Error log event, ideally 0 of these are logged during a session
|
|
14
14
|
*
|
|
15
15
|
* performance - Includes duration, and often has _start, _end, or _cancel suffixes for activity tracking
|
|
16
|
-
*
|
|
17
|
-
* @internal
|
|
16
|
+
* @alpha
|
|
18
17
|
*/
|
|
19
18
|
export type TelemetryEventCategory = "generic" | "error" | "performance";
|
|
20
19
|
|
|
@@ -25,7 +24,7 @@ export type TelemetryEventCategory = "generic" | "error" | "performance";
|
|
|
25
24
|
* Includes extra types beyond {@link @fluidframework/core-interfaces#TelemetryBaseEventPropertyType}, which must be
|
|
26
25
|
* converted before sending to a base logger.
|
|
27
26
|
*
|
|
28
|
-
* @
|
|
27
|
+
* @alpha
|
|
29
28
|
*/
|
|
30
29
|
export type TelemetryEventPropertyTypeExt =
|
|
31
30
|
| string
|
|
@@ -54,7 +53,7 @@ export interface ITaggedTelemetryPropertyTypeExt {
|
|
|
54
53
|
/**
|
|
55
54
|
* JSON-serializable properties, which will be logged with telemetry.
|
|
56
55
|
*
|
|
57
|
-
* @
|
|
56
|
+
* @alpha
|
|
58
57
|
*/
|
|
59
58
|
export interface ITelemetryPropertiesExt {
|
|
60
59
|
[index: string]: TelemetryEventPropertyTypeExt | Tagged<TelemetryEventPropertyTypeExt>;
|
|
@@ -76,8 +75,7 @@ export interface ITelemetryEventExt extends ITelemetryPropertiesExt {
|
|
|
76
75
|
/**
|
|
77
76
|
* Informational (non-error) telemetry event
|
|
78
77
|
* @remarks Maps to category = "generic"
|
|
79
|
-
*
|
|
80
|
-
* @internal
|
|
78
|
+
* @alpha
|
|
81
79
|
*/
|
|
82
80
|
export interface ITelemetryGenericEventExt extends ITelemetryPropertiesExt {
|
|
83
81
|
eventName: string;
|
|
@@ -87,8 +85,7 @@ export interface ITelemetryGenericEventExt extends ITelemetryPropertiesExt {
|
|
|
87
85
|
/**
|
|
88
86
|
* Error telemetry event.
|
|
89
87
|
* @remarks Maps to category = "error"
|
|
90
|
-
*
|
|
91
|
-
* @internal
|
|
88
|
+
* @alpha
|
|
92
89
|
*/
|
|
93
90
|
export interface ITelemetryErrorEventExt extends ITelemetryPropertiesExt {
|
|
94
91
|
eventName: string;
|
|
@@ -97,8 +94,7 @@ export interface ITelemetryErrorEventExt extends ITelemetryPropertiesExt {
|
|
|
97
94
|
/**
|
|
98
95
|
* Performance telemetry event.
|
|
99
96
|
* @remarks Maps to category = "performance"
|
|
100
|
-
*
|
|
101
|
-
* @internal
|
|
97
|
+
* @alpha
|
|
102
98
|
*/
|
|
103
99
|
export interface ITelemetryPerformanceEventExt extends ITelemetryGenericEventExt {
|
|
104
100
|
duration?: number; // Duration of event (optional)
|
|
@@ -110,8 +106,7 @@ export interface ITelemetryPerformanceEventExt extends ITelemetryGenericEventExt
|
|
|
110
106
|
* @remarks
|
|
111
107
|
* This interface is meant to be used internally within the Fluid Framework,
|
|
112
108
|
* and `ITelemetryBaseLogger` should be used when loggers are passed between layers.
|
|
113
|
-
*
|
|
114
|
-
* @internal
|
|
109
|
+
* @alpha
|
|
115
110
|
*/
|
|
116
111
|
export interface ITelemetryLoggerExt extends ITelemetryBaseLogger {
|
|
117
112
|
/**
|