@azure/monitor-opentelemetry-exporter 1.0.0-beta.33 → 1.0.0-beta.34
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/LICENSE +21 -0
- package/dist/commonjs/Declarations/Constants.d.ts +7 -2
- package/dist/commonjs/Declarations/Constants.d.ts.map +1 -1
- package/dist/commonjs/Declarations/Constants.js +8 -3
- package/dist/commonjs/Declarations/Constants.js.map +1 -1
- package/dist/commonjs/export/statsbeat/{customerStatsbeat.d.ts → customerSDKStats.d.ts} +30 -22
- package/dist/commonjs/export/statsbeat/customerSDKStats.d.ts.map +1 -0
- package/dist/commonjs/export/statsbeat/{customerStatsbeat.js → customerSDKStats.js} +175 -127
- package/dist/commonjs/export/statsbeat/customerSDKStats.js.map +1 -0
- package/dist/commonjs/export/statsbeat/types.d.ts +34 -9
- package/dist/commonjs/export/statsbeat/types.d.ts.map +1 -1
- package/dist/commonjs/export/statsbeat/types.js +45 -15
- package/dist/commonjs/export/statsbeat/types.js.map +1 -1
- package/dist/commonjs/generated/applicationInsightsClient.js +1 -1
- package/dist/commonjs/generated/applicationInsightsClient.js.map +1 -1
- package/dist/commonjs/platform/nodejs/baseSender.d.ts +1 -1
- package/dist/commonjs/platform/nodejs/baseSender.d.ts.map +1 -1
- package/dist/commonjs/platform/nodejs/baseSender.js +41 -26
- package/dist/commonjs/platform/nodejs/baseSender.js.map +1 -1
- package/dist/commonjs/platform/nodejs/persist/fileSystemPersist.d.ts +3 -3
- package/dist/commonjs/platform/nodejs/persist/fileSystemPersist.d.ts.map +1 -1
- package/dist/commonjs/platform/nodejs/persist/fileSystemPersist.js +8 -8
- package/dist/commonjs/platform/nodejs/persist/fileSystemPersist.js.map +1 -1
- package/dist/commonjs/tsdoc-metadata.json +1 -1
- package/dist/commonjs/types.d.ts +3 -1
- package/dist/commonjs/types.d.ts.map +1 -1
- package/dist/commonjs/types.js +4 -0
- package/dist/commonjs/types.js.map +1 -1
- package/dist/commonjs/utils/constants/applicationinsights.d.ts +2 -1
- package/dist/commonjs/utils/constants/applicationinsights.d.ts.map +1 -1
- package/dist/commonjs/utils/constants/applicationinsights.js +3 -2
- package/dist/commonjs/utils/constants/applicationinsights.js.map +1 -1
- package/dist/commonjs/utils/logUtils.d.ts.map +1 -1
- package/dist/commonjs/utils/logUtils.js +24 -6
- package/dist/commonjs/utils/logUtils.js.map +1 -1
- package/dist/commonjs/utils/spanUtils.d.ts.map +1 -1
- package/dist/commonjs/utils/spanUtils.js +16 -3
- package/dist/commonjs/utils/spanUtils.js.map +1 -1
- package/dist/esm/Declarations/Constants.d.ts +7 -2
- package/dist/esm/Declarations/Constants.d.ts.map +1 -1
- package/dist/esm/Declarations/Constants.js +7 -2
- package/dist/esm/Declarations/Constants.js.map +1 -1
- package/dist/esm/export/statsbeat/{customerStatsbeat.d.ts → customerSDKStats.d.ts} +30 -22
- package/dist/esm/export/statsbeat/customerSDKStats.d.ts.map +1 -0
- package/dist/esm/export/statsbeat/{customerStatsbeat.js → customerSDKStats.js} +175 -127
- package/dist/esm/export/statsbeat/customerSDKStats.js.map +1 -0
- package/dist/esm/export/statsbeat/types.d.ts +34 -9
- package/dist/esm/export/statsbeat/types.d.ts.map +1 -1
- package/dist/esm/export/statsbeat/types.js +43 -13
- package/dist/esm/export/statsbeat/types.js.map +1 -1
- package/dist/esm/generated/applicationInsightsClient.js +1 -1
- package/dist/esm/generated/applicationInsightsClient.js.map +1 -1
- package/dist/esm/platform/nodejs/baseSender.d.ts +1 -1
- package/dist/esm/platform/nodejs/baseSender.d.ts.map +1 -1
- package/dist/esm/platform/nodejs/baseSender.js +39 -24
- package/dist/esm/platform/nodejs/baseSender.js.map +1 -1
- package/dist/esm/platform/nodejs/persist/fileSystemPersist.d.ts +3 -3
- package/dist/esm/platform/nodejs/persist/fileSystemPersist.d.ts.map +1 -1
- package/dist/esm/platform/nodejs/persist/fileSystemPersist.js +9 -9
- package/dist/esm/platform/nodejs/persist/fileSystemPersist.js.map +1 -1
- package/dist/esm/types.d.ts +3 -1
- package/dist/esm/types.d.ts.map +1 -1
- package/dist/esm/types.js +4 -0
- package/dist/esm/types.js.map +1 -1
- package/dist/esm/utils/constants/applicationinsights.d.ts +2 -1
- package/dist/esm/utils/constants/applicationinsights.d.ts.map +1 -1
- package/dist/esm/utils/constants/applicationinsights.js +2 -1
- package/dist/esm/utils/constants/applicationinsights.js.map +1 -1
- package/dist/esm/utils/logUtils.d.ts.map +1 -1
- package/dist/esm/utils/logUtils.js +21 -3
- package/dist/esm/utils/logUtils.js.map +1 -1
- package/dist/esm/utils/spanUtils.d.ts.map +1 -1
- package/dist/esm/utils/spanUtils.js +19 -6
- package/dist/esm/utils/spanUtils.js.map +1 -1
- package/package.json +32 -33
- package/dist/commonjs/export/statsbeat/customerStatsbeat.d.ts.map +0 -1
- package/dist/commonjs/export/statsbeat/customerStatsbeat.js.map +0 -1
- package/dist/esm/export/statsbeat/customerStatsbeat.d.ts.map +0 -1
- package/dist/esm/export/statsbeat/customerStatsbeat.js.map +0 -1
|
@@ -34,15 +34,16 @@ export declare class NetworkStatsbeat {
|
|
|
34
34
|
constructor(endpoint: string, host: string);
|
|
35
35
|
}
|
|
36
36
|
/**
|
|
37
|
-
*
|
|
37
|
+
* SDK Stats class for customer-visible telemetry.
|
|
38
38
|
* @internal
|
|
39
39
|
*/
|
|
40
|
-
export declare class
|
|
40
|
+
export declare class CustomerSDKStats {
|
|
41
41
|
totalItemSuccessCount: Map<TelemetryType, number>;
|
|
42
|
-
totalItemDropCount: Map<TelemetryType, Map<DropCode | number, Map<string, number
|
|
42
|
+
totalItemDropCount: Map<TelemetryType, Map<DropCode | number, Map<string, Map<boolean | null, number>>>>;
|
|
43
43
|
totalItemRetryCount: Map<TelemetryType, Map<RetryCode | number, Map<string, number>>>;
|
|
44
44
|
constructor();
|
|
45
45
|
}
|
|
46
|
+
export declare const CustomerStatsbeat: typeof CustomerSDKStats;
|
|
46
47
|
export declare const STATSBEAT_LANGUAGE = "node";
|
|
47
48
|
export declare const AZURE_MONITOR_AUTO_ATTACH = "AZURE_MONITOR_AUTO_ATTACH";
|
|
48
49
|
export declare const MAX_STATSBEAT_FAILURES = 3;
|
|
@@ -69,11 +70,12 @@ export declare enum StatsbeatCounter {
|
|
|
69
70
|
ATTACH = "Attach",
|
|
70
71
|
FEATURE = "Feature"
|
|
71
72
|
}
|
|
72
|
-
export declare enum
|
|
73
|
+
export declare enum CustomSDKStatsCounter {
|
|
73
74
|
ITEM_SUCCESS_COUNT = "preview.item.success.count",
|
|
74
75
|
ITEM_DROP_COUNT = "preview.item.dropped.count",
|
|
75
76
|
ITEM_RETRY_COUNT = "preview.item.retry.count"
|
|
76
77
|
}
|
|
78
|
+
export declare const CustomStatsbeatCounter: typeof CustomSDKStatsCounter;
|
|
77
79
|
export declare const AIMS_URI = "http://169.254.169.254/metadata/instance/compute";
|
|
78
80
|
export declare const AIMS_API_VERSION = "api-version=2017-12-01";
|
|
79
81
|
export declare const AIMS_FORMAT = "format=json";
|
|
@@ -89,11 +91,12 @@ export interface CommonStatsbeatProperties {
|
|
|
89
91
|
version: string;
|
|
90
92
|
attach: string;
|
|
91
93
|
}
|
|
92
|
-
export interface
|
|
94
|
+
export interface CustomerSDKStatsProperties {
|
|
93
95
|
language: string;
|
|
94
96
|
version: string;
|
|
95
97
|
computeType: string;
|
|
96
98
|
}
|
|
99
|
+
export type CustomerStatsbeatProperties = CustomerSDKStatsProperties;
|
|
97
100
|
export declare enum TelemetryType {
|
|
98
101
|
AVAILABILITY = "AVAILABILITY",
|
|
99
102
|
CUSTOM_EVENT = "CUSTOM_EVENT",
|
|
@@ -108,18 +111,14 @@ export declare enum TelemetryType {
|
|
|
108
111
|
}
|
|
109
112
|
export declare enum DropCode {
|
|
110
113
|
CLIENT_EXCEPTION = "CLIENT_EXCEPTION",
|
|
111
|
-
CLIENT_EXPIRED_DATA = "CLIENT_EXPIRED_DATA",
|
|
112
114
|
CLIENT_READONLY = "CLIENT_READONLY",
|
|
113
|
-
CLIENT_STALE_DATA = "CLIENT_STALE_DATA",
|
|
114
115
|
CLIENT_PERSISTENCE_CAPACITY = "CLIENT_PERSISTENCE_CAPACITY",
|
|
115
|
-
NON_RETRYABLE_STATUS_CODE = "NON_RETRYABLE_STATUS_CODE",
|
|
116
116
|
CLIENT_STORAGE_DISABLED = "CLIENT_STORAGE_DISABLED",
|
|
117
117
|
UNKNOWN = "UNKNOWN"
|
|
118
118
|
}
|
|
119
119
|
export declare enum RetryCode {
|
|
120
120
|
CLIENT_EXCEPTION = "CLIENT_EXCEPTION",
|
|
121
121
|
CLIENT_TIMEOUT = "CLIENT_TIMEOUT",
|
|
122
|
-
RETRYABLE_STATUS_CODE = "RETRYABLE_STATUS_CODE",
|
|
123
122
|
UNKNOWN = "UNKNOWN"
|
|
124
123
|
}
|
|
125
124
|
export interface AttachStatsbeatProperties {
|
|
@@ -146,6 +145,32 @@ export declare enum StatsbeatFeatureType {
|
|
|
146
145
|
FEATURE = 0,
|
|
147
146
|
INSTRUMENTATION = 1
|
|
148
147
|
}
|
|
148
|
+
/**
|
|
149
|
+
* Exception types for client exceptions
|
|
150
|
+
* @internal
|
|
151
|
+
*/
|
|
152
|
+
export declare enum ExceptionType {
|
|
153
|
+
CLIENT_EXCEPTION = "Client exception",
|
|
154
|
+
NETWORK_EXCEPTION = "Network exception",
|
|
155
|
+
STORAGE_EXCEPTION = "Storage exception",
|
|
156
|
+
TIMEOUT_EXCEPTION = "Timeout exception"
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* Reasons for dropping telemetry
|
|
160
|
+
*/
|
|
161
|
+
export declare enum DropReason {
|
|
162
|
+
CLIENT_READONLY = "Client readonly",
|
|
163
|
+
CLIENT_PERSISTENCE_CAPACITY = "Client persistence capacity",
|
|
164
|
+
CLIENT_STORAGE_DISABLED = "Client local storage disabled",
|
|
165
|
+
UNKNOWN = "Unknown reason"
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* Reasons for retrying telemetry
|
|
169
|
+
*/
|
|
170
|
+
export declare enum RetryReason {
|
|
171
|
+
CLIENT_TIMEOUT = "Client timeout",
|
|
172
|
+
UNKNOWN = "Unknown reason"
|
|
173
|
+
}
|
|
149
174
|
/**
|
|
150
175
|
* Status codes indicating that we should shutdown statsbeat
|
|
151
176
|
* @internal
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/export/statsbeat/types.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,qBAAa,gBAAgB;IACpB,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IAEzB,QAAQ,EAAE,MAAM,CAAC;IAEjB,QAAQ,EAAE,MAAM,CAAC;IAEjB,IAAI,EAAE,MAAM,CAAC;IAEb,iBAAiB,EAAE,MAAM,CAAC;IAE1B,gBAAgB,EAAE,MAAM,CAAC;IAEzB,2BAA2B,EAAE,MAAM,CAAC;IAEpC,qBAAqB,EAAE,MAAM,CAAC;IAE9B,sBAAsB,EAAE,MAAM,CAAC;IAE/B,uBAAuB,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAEjE,UAAU,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAEpD,cAAc,EAAE;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAE3D,aAAa,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAEvD,4BAA4B,EAAE,MAAM,CAAC;IAErC,gCAAgC,EAAE,MAAM,CAAC;IAEzC,2BAA2B,EAAE,MAAM,CAAC;gBAE/B,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;CAiB3C;AAED;;;GAGG;AACH,qBAAa,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/export/statsbeat/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -40,12 +40,13 @@ export class NetworkStatsbeat {
|
|
|
40
40
|
}
|
|
41
41
|
}
|
|
42
42
|
/**
|
|
43
|
-
*
|
|
43
|
+
* SDK Stats class for customer-visible telemetry.
|
|
44
44
|
* @internal
|
|
45
45
|
*/
|
|
46
|
-
export class
|
|
46
|
+
export class CustomerSDKStats {
|
|
47
47
|
totalItemSuccessCount;
|
|
48
|
-
//
|
|
48
|
+
// telemetry_type -> drop.code -> drop.reason -> success -> count
|
|
49
|
+
// success can be true/false for request/dependency telemetry, or null for other types
|
|
49
50
|
totalItemDropCount;
|
|
50
51
|
// Nested Map structure: telemetry_type -> retry.code -> retry.reason -> count
|
|
51
52
|
totalItemRetryCount;
|
|
@@ -55,6 +56,8 @@ export class CustomerStatsbeat {
|
|
|
55
56
|
this.totalItemRetryCount = new Map();
|
|
56
57
|
}
|
|
57
58
|
}
|
|
59
|
+
// Legacy alias for backward compatibility
|
|
60
|
+
export const CustomerStatsbeat = CustomerSDKStats;
|
|
58
61
|
export const STATSBEAT_LANGUAGE = "node";
|
|
59
62
|
export const AZURE_MONITOR_AUTO_ATTACH = "AZURE_MONITOR_AUTO_ATTACH";
|
|
60
63
|
export const MAX_STATSBEAT_FAILURES = 3;
|
|
@@ -83,12 +86,14 @@ export var StatsbeatCounter;
|
|
|
83
86
|
StatsbeatCounter["ATTACH"] = "Attach";
|
|
84
87
|
StatsbeatCounter["FEATURE"] = "Feature";
|
|
85
88
|
})(StatsbeatCounter || (StatsbeatCounter = {}));
|
|
86
|
-
export var
|
|
87
|
-
(function (
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
})(
|
|
89
|
+
export var CustomSDKStatsCounter;
|
|
90
|
+
(function (CustomSDKStatsCounter) {
|
|
91
|
+
CustomSDKStatsCounter["ITEM_SUCCESS_COUNT"] = "preview.item.success.count";
|
|
92
|
+
CustomSDKStatsCounter["ITEM_DROP_COUNT"] = "preview.item.dropped.count";
|
|
93
|
+
CustomSDKStatsCounter["ITEM_RETRY_COUNT"] = "preview.item.retry.count";
|
|
94
|
+
})(CustomSDKStatsCounter || (CustomSDKStatsCounter = {}));
|
|
95
|
+
// Legacy alias for backward compatibility
|
|
96
|
+
export const CustomStatsbeatCounter = CustomSDKStatsCounter;
|
|
92
97
|
export const AIMS_URI = "http://169.254.169.254/metadata/instance/compute";
|
|
93
98
|
export const AIMS_API_VERSION = "api-version=2017-12-01";
|
|
94
99
|
export const AIMS_FORMAT = "format=json";
|
|
@@ -124,11 +129,8 @@ export var TelemetryType;
|
|
|
124
129
|
export var DropCode;
|
|
125
130
|
(function (DropCode) {
|
|
126
131
|
DropCode["CLIENT_EXCEPTION"] = "CLIENT_EXCEPTION";
|
|
127
|
-
DropCode["CLIENT_EXPIRED_DATA"] = "CLIENT_EXPIRED_DATA";
|
|
128
132
|
DropCode["CLIENT_READONLY"] = "CLIENT_READONLY";
|
|
129
|
-
DropCode["CLIENT_STALE_DATA"] = "CLIENT_STALE_DATA";
|
|
130
133
|
DropCode["CLIENT_PERSISTENCE_CAPACITY"] = "CLIENT_PERSISTENCE_CAPACITY";
|
|
131
|
-
DropCode["NON_RETRYABLE_STATUS_CODE"] = "NON_RETRYABLE_STATUS_CODE";
|
|
132
134
|
DropCode["CLIENT_STORAGE_DISABLED"] = "CLIENT_STORAGE_DISABLED";
|
|
133
135
|
DropCode["UNKNOWN"] = "UNKNOWN";
|
|
134
136
|
})(DropCode || (DropCode = {}));
|
|
@@ -136,7 +138,6 @@ export var RetryCode;
|
|
|
136
138
|
(function (RetryCode) {
|
|
137
139
|
RetryCode["CLIENT_EXCEPTION"] = "CLIENT_EXCEPTION";
|
|
138
140
|
RetryCode["CLIENT_TIMEOUT"] = "CLIENT_TIMEOUT";
|
|
139
|
-
RetryCode["RETRYABLE_STATUS_CODE"] = "RETRYABLE_STATUS_CODE";
|
|
140
141
|
RetryCode["UNKNOWN"] = "UNKNOWN";
|
|
141
142
|
})(RetryCode || (RetryCode = {}));
|
|
142
143
|
export var StatsbeatFeatureType;
|
|
@@ -144,6 +145,35 @@ export var StatsbeatFeatureType;
|
|
|
144
145
|
StatsbeatFeatureType[StatsbeatFeatureType["FEATURE"] = 0] = "FEATURE";
|
|
145
146
|
StatsbeatFeatureType[StatsbeatFeatureType["INSTRUMENTATION"] = 1] = "INSTRUMENTATION";
|
|
146
147
|
})(StatsbeatFeatureType || (StatsbeatFeatureType = {}));
|
|
148
|
+
/**
|
|
149
|
+
* Exception types for client exceptions
|
|
150
|
+
* @internal
|
|
151
|
+
*/
|
|
152
|
+
export var ExceptionType;
|
|
153
|
+
(function (ExceptionType) {
|
|
154
|
+
ExceptionType["CLIENT_EXCEPTION"] = "Client exception";
|
|
155
|
+
ExceptionType["NETWORK_EXCEPTION"] = "Network exception";
|
|
156
|
+
ExceptionType["STORAGE_EXCEPTION"] = "Storage exception";
|
|
157
|
+
ExceptionType["TIMEOUT_EXCEPTION"] = "Timeout exception";
|
|
158
|
+
})(ExceptionType || (ExceptionType = {}));
|
|
159
|
+
/**
|
|
160
|
+
* Reasons for dropping telemetry
|
|
161
|
+
*/
|
|
162
|
+
export var DropReason;
|
|
163
|
+
(function (DropReason) {
|
|
164
|
+
DropReason["CLIENT_READONLY"] = "Client readonly";
|
|
165
|
+
DropReason["CLIENT_PERSISTENCE_CAPACITY"] = "Client persistence capacity";
|
|
166
|
+
DropReason["CLIENT_STORAGE_DISABLED"] = "Client local storage disabled";
|
|
167
|
+
DropReason["UNKNOWN"] = "Unknown reason";
|
|
168
|
+
})(DropReason || (DropReason = {}));
|
|
169
|
+
/**
|
|
170
|
+
* Reasons for retrying telemetry
|
|
171
|
+
*/
|
|
172
|
+
export var RetryReason;
|
|
173
|
+
(function (RetryReason) {
|
|
174
|
+
RetryReason["CLIENT_TIMEOUT"] = "Client timeout";
|
|
175
|
+
RetryReason["UNKNOWN"] = "Unknown reason";
|
|
176
|
+
})(RetryReason || (RetryReason = {}));
|
|
147
177
|
/**
|
|
148
178
|
* Status codes indicating that we should shutdown statsbeat
|
|
149
179
|
* @internal
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/export/statsbeat/types.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/**\n * Statsbeat class for network telemetry.\n * @internal\n */\nexport class NetworkStatsbeat {\n public time: number | undefined;\n\n public lastTime: number;\n\n public endpoint: string;\n\n public host: string;\n\n public totalRequestCount: number;\n\n public lastRequestCount: number;\n\n public totalSuccessfulRequestCount: number;\n\n public totalReadFailureCount: number;\n\n public totalWriteFailureCount: number;\n\n public totalFailedRequestCount: { statusCode: number; count: number }[];\n\n public retryCount: { statusCode: number; count: number }[];\n\n public exceptionCount: { exceptionType: string; count: number }[];\n\n public throttleCount: { statusCode: number; count: number }[];\n\n public intervalRequestExecutionTime: number;\n\n public lastIntervalRequestExecutionTime: number;\n\n public averageRequestExecutionTime: number;\n\n constructor(endpoint: string, host: string) {\n this.endpoint = endpoint;\n this.host = host;\n this.totalRequestCount = 0;\n this.totalSuccessfulRequestCount = 0;\n this.totalReadFailureCount = 0;\n this.totalWriteFailureCount = 0;\n this.totalFailedRequestCount = [];\n this.retryCount = [];\n this.exceptionCount = [];\n this.throttleCount = [];\n this.intervalRequestExecutionTime = 0;\n this.lastIntervalRequestExecutionTime = 0;\n this.lastTime = +new Date();\n this.lastRequestCount = 0;\n this.averageRequestExecutionTime = 0;\n }\n}\n\n/**\n * Statsbeat class for customer-visible telemetry.\n * @internal\n */\nexport class CustomerStatsbeat {\n public totalItemSuccessCount: Map<TelemetryType, number>;\n\n // Nested Map structure: telemetry_type -> drop.code -> drop.reason -> count\n public totalItemDropCount: Map<TelemetryType, Map<DropCode | number, Map<string, number>>>;\n\n // Nested Map structure: telemetry_type -> retry.code -> retry.reason -> count\n public totalItemRetryCount: Map<TelemetryType, Map<RetryCode | number, Map<string, number>>>;\n\n constructor() {\n this.totalItemSuccessCount = new Map<TelemetryType, number>();\n this.totalItemDropCount = new Map<TelemetryType, Map<DropCode | number, Map<string, number>>>();\n this.totalItemRetryCount = new Map<\n TelemetryType,\n Map<RetryCode | number, Map<string, number>>\n >();\n }\n}\n\nexport const STATSBEAT_LANGUAGE = \"node\";\n\nexport const AZURE_MONITOR_AUTO_ATTACH = \"AZURE_MONITOR_AUTO_ATTACH\";\n\nexport const MAX_STATSBEAT_FAILURES = 3;\n\nexport const StatsbeatResourceProvider = {\n appsvc: \"appsvc\",\n aks: \"aks\",\n functions: \"functions\",\n vm: \"vm\",\n unknown: \"unknown\",\n};\n\nexport enum AttachTypeName {\n INTEGRATED_AUTO = \"IntegratedAuto\",\n MANUAL = \"Manual\",\n}\n\nexport enum StatsbeatCounter {\n SUCCESS_COUNT = \"Request_Success_Count\",\n FAILURE_COUNT = \"Request_Failure_Count\",\n RETRY_COUNT = \"Retry_Count\",\n THROTTLE_COUNT = \"Throttle_Count\",\n EXCEPTION_COUNT = \"Exception_Count\",\n AVERAGE_DURATION = \"Request_Duration\",\n READ_FAILURE_COUNT = \"Read_Failure_Count\",\n WRITE_FAILURE_COUNT = \"Write_Failure_Count\",\n ATTACH = \"Attach\",\n FEATURE = \"Feature\",\n}\n\nexport enum CustomStatsbeatCounter {\n ITEM_SUCCESS_COUNT = \"preview.item.success.count\",\n ITEM_DROP_COUNT = \"preview.item.dropped.count\",\n ITEM_RETRY_COUNT = \"preview.item.retry.count\",\n}\n\nexport const AIMS_URI = \"http://169.254.169.254/metadata/instance/compute\";\nexport const AIMS_API_VERSION = \"api-version=2017-12-01\";\nexport const AIMS_FORMAT = \"format=json\";\nexport const NON_EU_CONNECTION_STRING =\n \"InstrumentationKey=c4a29126-a7cb-47e5-b348-11414998b11e;IngestionEndpoint=https://westus-0.in.applicationinsights.azure.com\";\nexport const EU_CONNECTION_STRING =\n \"InstrumentationKey=7dc56bab-3c0c-4e9f-9ebb-d1acadee8d0f;IngestionEndpoint=https://westeurope-5.in.applicationinsights.azure.com\";\nexport const EU_ENDPOINTS = [\n \"westeurope\",\n \"northeurope\",\n \"francecentral\",\n \"francesouth\",\n \"germanywestcentral\",\n \"norwayeast\",\n \"norwaywest\",\n \"swedencentral\",\n \"switzerlandnorth\",\n \"switzerlandwest\",\n \"uksouth\",\n \"ukwest\",\n];\n\nexport interface CommonStatsbeatProperties {\n os: string;\n rp: string;\n cikey: string;\n runtimeVersion: string;\n language: string;\n version: string;\n attach: string;\n}\n\nexport interface CustomerStatsbeatProperties {\n language: string;\n version: string;\n computeType: string;\n}\n\nexport enum TelemetryType {\n AVAILABILITY = \"AVAILABILITY\",\n CUSTOM_EVENT = \"CUSTOM_EVENT\",\n CUSTOM_METRIC = \"CUSTOM_METRIC\",\n DEPENDENCY = \"DEPENDENCY\",\n EXCEPTION = \"EXCEPTION\",\n PAGE_VIEW = \"PAGE_VIEW\",\n PERFORMANCE_COUNTER = \"PERFORMANCE_COUNTER\",\n REQUEST = \"REQUEST\",\n TRACE = \"TRACE\",\n UNKNOWN = \"UNKNOWN\",\n}\n\nexport enum DropCode {\n CLIENT_EXCEPTION = \"CLIENT_EXCEPTION\",\n CLIENT_EXPIRED_DATA = \"CLIENT_EXPIRED_DATA\",\n CLIENT_READONLY = \"CLIENT_READONLY\",\n CLIENT_STALE_DATA = \"CLIENT_STALE_DATA\",\n CLIENT_PERSISTENCE_CAPACITY = \"CLIENT_PERSISTENCE_CAPACITY\",\n NON_RETRYABLE_STATUS_CODE = \"NON_RETRYABLE_STATUS_CODE\",\n CLIENT_STORAGE_DISABLED = \"CLIENT_STORAGE_DISABLED\",\n UNKNOWN = \"UNKNOWN\",\n}\n\nexport enum RetryCode {\n CLIENT_EXCEPTION = \"CLIENT_EXCEPTION\",\n CLIENT_TIMEOUT = \"CLIENT_TIMEOUT\",\n RETRYABLE_STATUS_CODE = \"RETRYABLE_STATUS_CODE\",\n UNKNOWN = \"UNKNOWN\",\n}\n\nexport interface AttachStatsbeatProperties {\n rpId: string;\n}\n\nexport interface NetworkStatsbeatProperties {\n endpoint: string;\n host: string;\n}\n\nexport interface StatsbeatOptions {\n instrumentationKey: string;\n endpointUrl: string;\n networkCollectionInterval?: number;\n longCollectionInterval?: number;\n disableOfflineStorage?: boolean;\n}\n\nexport interface VirtualMachineInfo {\n isVM?: boolean;\n id?: string;\n subscriptionId?: string;\n osType?: string;\n}\n\nexport enum StatsbeatFeatureType {\n FEATURE = 0,\n INSTRUMENTATION = 1,\n}\n\n/**\n * Status codes indicating that we should shutdown statsbeat\n * @internal\n */\nexport function isStatsbeatShutdownStatus(statusCode: number): boolean {\n return (\n statusCode === 401 || // Unauthorized\n statusCode === 403 || // Forbidden\n statusCode === 503 // Server Unavailable\n );\n}\n"]}
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/export/statsbeat/types.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/**\n * Statsbeat class for network telemetry.\n * @internal\n */\nexport class NetworkStatsbeat {\n public time: number | undefined;\n\n public lastTime: number;\n\n public endpoint: string;\n\n public host: string;\n\n public totalRequestCount: number;\n\n public lastRequestCount: number;\n\n public totalSuccessfulRequestCount: number;\n\n public totalReadFailureCount: number;\n\n public totalWriteFailureCount: number;\n\n public totalFailedRequestCount: { statusCode: number; count: number }[];\n\n public retryCount: { statusCode: number; count: number }[];\n\n public exceptionCount: { exceptionType: string; count: number }[];\n\n public throttleCount: { statusCode: number; count: number }[];\n\n public intervalRequestExecutionTime: number;\n\n public lastIntervalRequestExecutionTime: number;\n\n public averageRequestExecutionTime: number;\n\n constructor(endpoint: string, host: string) {\n this.endpoint = endpoint;\n this.host = host;\n this.totalRequestCount = 0;\n this.totalSuccessfulRequestCount = 0;\n this.totalReadFailureCount = 0;\n this.totalWriteFailureCount = 0;\n this.totalFailedRequestCount = [];\n this.retryCount = [];\n this.exceptionCount = [];\n this.throttleCount = [];\n this.intervalRequestExecutionTime = 0;\n this.lastIntervalRequestExecutionTime = 0;\n this.lastTime = +new Date();\n this.lastRequestCount = 0;\n this.averageRequestExecutionTime = 0;\n }\n}\n\n/**\n * SDK Stats class for customer-visible telemetry.\n * @internal\n */\nexport class CustomerSDKStats {\n public totalItemSuccessCount: Map<TelemetryType, number>;\n\n // telemetry_type -> drop.code -> drop.reason -> success -> count\n // success can be true/false for request/dependency telemetry, or null for other types\n public totalItemDropCount: Map<\n TelemetryType,\n Map<DropCode | number, Map<string, Map<boolean | null, number>>>\n >;\n\n // Nested Map structure: telemetry_type -> retry.code -> retry.reason -> count\n public totalItemRetryCount: Map<TelemetryType, Map<RetryCode | number, Map<string, number>>>;\n\n constructor() {\n this.totalItemSuccessCount = new Map<TelemetryType, number>();\n this.totalItemDropCount = new Map<\n TelemetryType,\n Map<DropCode | number, Map<string, Map<boolean | null, number>>>\n >();\n this.totalItemRetryCount = new Map<\n TelemetryType,\n Map<RetryCode | number, Map<string, number>>\n >();\n }\n}\n\n// Legacy alias for backward compatibility\nexport const CustomerStatsbeat = CustomerSDKStats;\n\nexport const STATSBEAT_LANGUAGE = \"node\";\n\nexport const AZURE_MONITOR_AUTO_ATTACH = \"AZURE_MONITOR_AUTO_ATTACH\";\n\nexport const MAX_STATSBEAT_FAILURES = 3;\n\nexport const StatsbeatResourceProvider = {\n appsvc: \"appsvc\",\n aks: \"aks\",\n functions: \"functions\",\n vm: \"vm\",\n unknown: \"unknown\",\n};\n\nexport enum AttachTypeName {\n INTEGRATED_AUTO = \"IntegratedAuto\",\n MANUAL = \"Manual\",\n}\n\nexport enum StatsbeatCounter {\n SUCCESS_COUNT = \"Request_Success_Count\",\n FAILURE_COUNT = \"Request_Failure_Count\",\n RETRY_COUNT = \"Retry_Count\",\n THROTTLE_COUNT = \"Throttle_Count\",\n EXCEPTION_COUNT = \"Exception_Count\",\n AVERAGE_DURATION = \"Request_Duration\",\n READ_FAILURE_COUNT = \"Read_Failure_Count\",\n WRITE_FAILURE_COUNT = \"Write_Failure_Count\",\n ATTACH = \"Attach\",\n FEATURE = \"Feature\",\n}\n\nexport enum CustomSDKStatsCounter {\n ITEM_SUCCESS_COUNT = \"preview.item.success.count\",\n ITEM_DROP_COUNT = \"preview.item.dropped.count\",\n ITEM_RETRY_COUNT = \"preview.item.retry.count\",\n}\n\n// Legacy alias for backward compatibility\nexport const CustomStatsbeatCounter = CustomSDKStatsCounter;\n\nexport const AIMS_URI = \"http://169.254.169.254/metadata/instance/compute\";\nexport const AIMS_API_VERSION = \"api-version=2017-12-01\";\nexport const AIMS_FORMAT = \"format=json\";\nexport const NON_EU_CONNECTION_STRING =\n \"InstrumentationKey=c4a29126-a7cb-47e5-b348-11414998b11e;IngestionEndpoint=https://westus-0.in.applicationinsights.azure.com\";\nexport const EU_CONNECTION_STRING =\n \"InstrumentationKey=7dc56bab-3c0c-4e9f-9ebb-d1acadee8d0f;IngestionEndpoint=https://westeurope-5.in.applicationinsights.azure.com\";\nexport const EU_ENDPOINTS = [\n \"westeurope\",\n \"northeurope\",\n \"francecentral\",\n \"francesouth\",\n \"germanywestcentral\",\n \"norwayeast\",\n \"norwaywest\",\n \"swedencentral\",\n \"switzerlandnorth\",\n \"switzerlandwest\",\n \"uksouth\",\n \"ukwest\",\n];\n\nexport interface CommonStatsbeatProperties {\n os: string;\n rp: string;\n cikey: string;\n runtimeVersion: string;\n language: string;\n version: string;\n attach: string;\n}\n\nexport interface CustomerSDKStatsProperties {\n language: string;\n version: string;\n computeType: string;\n}\n\n// Legacy alias for backward compatibility\nexport type CustomerStatsbeatProperties = CustomerSDKStatsProperties;\n\nexport enum TelemetryType {\n AVAILABILITY = \"AVAILABILITY\",\n CUSTOM_EVENT = \"CUSTOM_EVENT\",\n CUSTOM_METRIC = \"CUSTOM_METRIC\",\n DEPENDENCY = \"DEPENDENCY\",\n EXCEPTION = \"EXCEPTION\",\n PAGE_VIEW = \"PAGE_VIEW\",\n PERFORMANCE_COUNTER = \"PERFORMANCE_COUNTER\",\n REQUEST = \"REQUEST\",\n TRACE = \"TRACE\",\n UNKNOWN = \"UNKNOWN\",\n}\n\nexport enum DropCode {\n CLIENT_EXCEPTION = \"CLIENT_EXCEPTION\",\n CLIENT_READONLY = \"CLIENT_READONLY\",\n CLIENT_PERSISTENCE_CAPACITY = \"CLIENT_PERSISTENCE_CAPACITY\",\n CLIENT_STORAGE_DISABLED = \"CLIENT_STORAGE_DISABLED\",\n UNKNOWN = \"UNKNOWN\",\n}\n\nexport enum RetryCode {\n CLIENT_EXCEPTION = \"CLIENT_EXCEPTION\",\n CLIENT_TIMEOUT = \"CLIENT_TIMEOUT\",\n UNKNOWN = \"UNKNOWN\",\n}\n\nexport interface AttachStatsbeatProperties {\n rpId: string;\n}\n\nexport interface NetworkStatsbeatProperties {\n endpoint: string;\n host: string;\n}\n\nexport interface StatsbeatOptions {\n instrumentationKey: string;\n endpointUrl: string;\n networkCollectionInterval?: number;\n longCollectionInterval?: number;\n disableOfflineStorage?: boolean;\n}\n\nexport interface VirtualMachineInfo {\n isVM?: boolean;\n id?: string;\n subscriptionId?: string;\n osType?: string;\n}\n\nexport enum StatsbeatFeatureType {\n FEATURE = 0,\n INSTRUMENTATION = 1,\n}\n\n/**\n * Exception types for client exceptions\n * @internal\n */\nexport enum ExceptionType {\n CLIENT_EXCEPTION = \"Client exception\",\n NETWORK_EXCEPTION = \"Network exception\",\n STORAGE_EXCEPTION = \"Storage exception\",\n TIMEOUT_EXCEPTION = \"Timeout exception\",\n}\n\n/**\n * Reasons for dropping telemetry\n */\nexport enum DropReason {\n CLIENT_READONLY = \"Client readonly\",\n CLIENT_PERSISTENCE_CAPACITY = \"Client persistence capacity\",\n CLIENT_STORAGE_DISABLED = \"Client local storage disabled\",\n UNKNOWN = \"Unknown reason\",\n}\n\n/**\n * Reasons for retrying telemetry\n */\nexport enum RetryReason {\n CLIENT_TIMEOUT = \"Client timeout\",\n UNKNOWN = \"Unknown reason\",\n}\n\n/**\n * Status codes indicating that we should shutdown statsbeat\n * @internal\n */\nexport function isStatsbeatShutdownStatus(statusCode: number): boolean {\n return (\n statusCode === 401 || // Unauthorized\n statusCode === 403 || // Forbidden\n statusCode === 503 // Server Unavailable\n );\n}\n"]}
|
|
@@ -22,7 +22,7 @@ export class ApplicationInsightsClient extends coreClient.ServiceClient {
|
|
|
22
22
|
const defaults = {
|
|
23
23
|
requestContentType: "application/json; charset=utf-8",
|
|
24
24
|
};
|
|
25
|
-
const packageDetails = `azsdk-js-monitor-opentelemetry-exporter/1.0.0-beta.
|
|
25
|
+
const packageDetails = `azsdk-js-monitor-opentelemetry-exporter/1.0.0-beta.34`;
|
|
26
26
|
const userAgentPrefix = options.userAgentOptions && options.userAgentOptions.userAgentPrefix
|
|
27
27
|
? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}`
|
|
28
28
|
: `${packageDetails}`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"applicationInsightsClient.js","sourceRoot":"","sources":["../../../src/generated/applicationInsightsClient.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,UAAU,MAAM,oBAAoB,CAAC;AACjD,OAAO,KAAK,UAAU,MAAM,wBAAwB,CAAC;AACrD,OAAO,KAAK,OAAO,MAAM,qBAAqB,CAAC;AAQ/C,MAAM,OAAO,yBAA0B,SAAQ,UAAU,CAAC,aAAa;IACrE,IAAI,CAAS;IAEb;;;OAGG;IACH,YAAY,OAAiD;QAC3D,0CAA0C;QAC1C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,GAAG,EAAE,CAAC;QACf,CAAC;QACD,MAAM,QAAQ,GAA4C;YACxD,kBAAkB,EAAE,iCAAiC;SACtD,CAAC;QAEF,MAAM,cAAc,GAAG,uDAAuD,CAAC;QAC/E,MAAM,eAAe,GACnB,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,gBAAgB,CAAC,eAAe;YAClE,CAAC,CAAC,GAAG,OAAO,CAAC,gBAAgB,CAAC,eAAe,IAAI,cAAc,EAAE;YACjE,CAAC,CAAC,GAAG,cAAc,EAAE,CAAC;QAE1B,MAAM,mBAAmB,GAAG;YAC1B,GAAG,QAAQ;YACX,GAAG,OAAO;YACV,gBAAgB,EAAE;gBAChB,eAAe;aAChB;YACD,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,OAAO,IAAI,aAAa;SAC/D,CAAC;QACF,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAE3B,0CAA0C;QAC1C,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,sCAAsC,CAAC;IACrE,CAAC;IAED;;;;OAIG;IACH,KAAK,CACH,IAAqB,EACrB,OAA6B;QAE7B,OAAO,IAAI,CAAC,oBAAoB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,kBAAkB,CAAC,CAAC;IAC1E,CAAC;CACF;AACD,2BAA2B;AAC3B,MAAM,UAAU,GAAG,UAAU,CAAC,gBAAgB,CAAC,OAAO,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;AAE3E,MAAM,kBAAkB,GAA6B;IACnD,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE,MAAM;IAClB,SAAS,EAAE;QACT,GAAG,EAAE;YACH,UAAU,EAAE,OAAO,CAAC,aAAa;SAClC;QACD,GAAG,EAAE;YACH,UAAU,EAAE,OAAO,CAAC,aAAa;SAClC;QACD,GAAG,EAAE;YACH,UAAU,EAAE,OAAO,CAAC,aAAa;YACjC,OAAO,EAAE,IAAI;SACd;QACD,GAAG,EAAE;YACH,UAAU,EAAE,OAAO,CAAC,aAAa;YACjC,OAAO,EAAE,IAAI;SACd;QACD,GAAG,EAAE;YACH,UAAU,EAAE,OAAO,CAAC,aAAa;YACjC,OAAO,EAAE,IAAI;SACd;QACD,GAAG,EAAE;YACH,UAAU,EAAE,OAAO,CAAC,aAAa;YACjC,OAAO,EAAE,IAAI;SACd;QACD,GAAG,EAAE;YACH,UAAU,EAAE,OAAO,CAAC,aAAa;YACjC,OAAO,EAAE,IAAI;SACd;KACF;IACD,WAAW,EAAE,UAAU,CAAC,IAAI;IAC5B,aAAa,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC;IAChC,gBAAgB,EAAE,CAAC,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,MAAM,CAAC;IAC7D,SAAS,EAAE,MAAM;IACjB,UAAU;CACX,CAAC","sourcesContent":["/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport * as coreClient from \"@azure/core-client\";\nimport * as Parameters from \"./models/parameters.js\";\nimport * as Mappers from \"./models/mappers.js\";\nimport {\n ApplicationInsightsClientOptionalParams,\n TelemetryItem,\n TrackOptionalParams,\n TrackOperationResponse,\n} from \"./models/index.js\";\n\nexport class ApplicationInsightsClient extends coreClient.ServiceClient {\n host: string;\n\n /**\n * Initializes a new instance of the ApplicationInsightsClient class.\n * @param options The parameter options\n */\n constructor(options?: ApplicationInsightsClientOptionalParams) {\n // Initializing default values for options\n if (!options) {\n options = {};\n }\n const defaults: ApplicationInsightsClientOptionalParams = {\n requestContentType: \"application/json; charset=utf-8\",\n };\n\n const packageDetails = `azsdk-js-monitor-opentelemetry-exporter/1.0.0-beta.
|
|
1
|
+
{"version":3,"file":"applicationInsightsClient.js","sourceRoot":"","sources":["../../../src/generated/applicationInsightsClient.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,UAAU,MAAM,oBAAoB,CAAC;AACjD,OAAO,KAAK,UAAU,MAAM,wBAAwB,CAAC;AACrD,OAAO,KAAK,OAAO,MAAM,qBAAqB,CAAC;AAQ/C,MAAM,OAAO,yBAA0B,SAAQ,UAAU,CAAC,aAAa;IACrE,IAAI,CAAS;IAEb;;;OAGG;IACH,YAAY,OAAiD;QAC3D,0CAA0C;QAC1C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,GAAG,EAAE,CAAC;QACf,CAAC;QACD,MAAM,QAAQ,GAA4C;YACxD,kBAAkB,EAAE,iCAAiC;SACtD,CAAC;QAEF,MAAM,cAAc,GAAG,uDAAuD,CAAC;QAC/E,MAAM,eAAe,GACnB,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,gBAAgB,CAAC,eAAe;YAClE,CAAC,CAAC,GAAG,OAAO,CAAC,gBAAgB,CAAC,eAAe,IAAI,cAAc,EAAE;YACjE,CAAC,CAAC,GAAG,cAAc,EAAE,CAAC;QAE1B,MAAM,mBAAmB,GAAG;YAC1B,GAAG,QAAQ;YACX,GAAG,OAAO;YACV,gBAAgB,EAAE;gBAChB,eAAe;aAChB;YACD,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,OAAO,IAAI,aAAa;SAC/D,CAAC;QACF,KAAK,CAAC,mBAAmB,CAAC,CAAC;QAE3B,0CAA0C;QAC1C,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,IAAI,sCAAsC,CAAC;IACrE,CAAC;IAED;;;;OAIG;IACH,KAAK,CACH,IAAqB,EACrB,OAA6B;QAE7B,OAAO,IAAI,CAAC,oBAAoB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,kBAAkB,CAAC,CAAC;IAC1E,CAAC;CACF;AACD,2BAA2B;AAC3B,MAAM,UAAU,GAAG,UAAU,CAAC,gBAAgB,CAAC,OAAO,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;AAE3E,MAAM,kBAAkB,GAA6B;IACnD,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE,MAAM;IAClB,SAAS,EAAE;QACT,GAAG,EAAE;YACH,UAAU,EAAE,OAAO,CAAC,aAAa;SAClC;QACD,GAAG,EAAE;YACH,UAAU,EAAE,OAAO,CAAC,aAAa;SAClC;QACD,GAAG,EAAE;YACH,UAAU,EAAE,OAAO,CAAC,aAAa;YACjC,OAAO,EAAE,IAAI;SACd;QACD,GAAG,EAAE;YACH,UAAU,EAAE,OAAO,CAAC,aAAa;YACjC,OAAO,EAAE,IAAI;SACd;QACD,GAAG,EAAE;YACH,UAAU,EAAE,OAAO,CAAC,aAAa;YACjC,OAAO,EAAE,IAAI;SACd;QACD,GAAG,EAAE;YACH,UAAU,EAAE,OAAO,CAAC,aAAa;YACjC,OAAO,EAAE,IAAI;SACd;QACD,GAAG,EAAE;YACH,UAAU,EAAE,OAAO,CAAC,aAAa;YACjC,OAAO,EAAE,IAAI;SACd;KACF;IACD,WAAW,EAAE,UAAU,CAAC,IAAI;IAC5B,aAAa,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC;IAChC,gBAAgB,EAAE,CAAC,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,MAAM,CAAC;IAC7D,SAAS,EAAE,MAAM;IACjB,UAAU;CACX,CAAC","sourcesContent":["/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport * as coreClient from \"@azure/core-client\";\nimport * as Parameters from \"./models/parameters.js\";\nimport * as Mappers from \"./models/mappers.js\";\nimport {\n ApplicationInsightsClientOptionalParams,\n TelemetryItem,\n TrackOptionalParams,\n TrackOperationResponse,\n} from \"./models/index.js\";\n\nexport class ApplicationInsightsClient extends coreClient.ServiceClient {\n host: string;\n\n /**\n * Initializes a new instance of the ApplicationInsightsClient class.\n * @param options The parameter options\n */\n constructor(options?: ApplicationInsightsClientOptionalParams) {\n // Initializing default values for options\n if (!options) {\n options = {};\n }\n const defaults: ApplicationInsightsClientOptionalParams = {\n requestContentType: \"application/json; charset=utf-8\",\n };\n\n const packageDetails = `azsdk-js-monitor-opentelemetry-exporter/1.0.0-beta.34`;\n const userAgentPrefix =\n options.userAgentOptions && options.userAgentOptions.userAgentPrefix\n ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}`\n : `${packageDetails}`;\n\n const optionsWithDefaults = {\n ...defaults,\n ...options,\n userAgentOptions: {\n userAgentPrefix,\n },\n endpoint: options.endpoint ?? options.baseUri ?? \"{Host}/v2.1\",\n };\n super(optionsWithDefaults);\n\n // Assigning values to Constant parameters\n this.host = options.host || \"https://dc.services.visualstudio.com\";\n }\n\n /**\n * This operation sends a sequence of telemetry events that will be monitored by Azure Monitor.\n * @param body The list of telemetry events to track.\n * @param options The options parameters.\n */\n track(\n body: TelemetryItem[],\n options?: TrackOptionalParams,\n ): Promise<TrackOperationResponse> {\n return this.sendOperationRequest({ body, options }, trackOperationSpec);\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst trackOperationSpec: coreClient.OperationSpec = {\n path: \"/track\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.TrackResponse,\n },\n 206: {\n bodyMapper: Mappers.TrackResponse,\n },\n 400: {\n bodyMapper: Mappers.TrackResponse,\n isError: true,\n },\n 402: {\n bodyMapper: Mappers.TrackResponse,\n isError: true,\n },\n 429: {\n bodyMapper: Mappers.TrackResponse,\n isError: true,\n },\n 500: {\n bodyMapper: Mappers.TrackResponse,\n isError: true,\n },\n 503: {\n bodyMapper: Mappers.TrackResponse,\n isError: true,\n },\n },\n requestBody: Parameters.body,\n urlParameters: [Parameters.host],\n headerParameters: [Parameters.contentType, Parameters.accept],\n mediaType: \"json\",\n serializer,\n};\n"]}
|
|
@@ -11,7 +11,7 @@ export declare abstract class BaseSender {
|
|
|
11
11
|
private numConsecutiveRedirects;
|
|
12
12
|
private retryTimer;
|
|
13
13
|
private networkStatsbeatMetrics;
|
|
14
|
-
private
|
|
14
|
+
private customerSDKStatsMetrics;
|
|
15
15
|
private longIntervalStatsbeatMetrics;
|
|
16
16
|
private statsbeatFailureCount;
|
|
17
17
|
private batchSendRetryIntervalMs;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"baseSender.d.ts","sourceRoot":"","sources":["../../../../src/platform/nodejs/baseSender.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAqB,YAAY,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"baseSender.d.ts","sourceRoot":"","sources":["../../../../src/platform/nodejs/baseSender.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAqB,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEtE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAC;AAEnE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAaxD,OAAO,KAAK,EAAE,aAAa,IAAI,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAU1E;;;GAGG;AACH,8BAAsB,UAAU;IAC9B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoB;IAC9C,OAAO,CAAC,uBAAuB,CAAS;IACxC,OAAO,CAAC,UAAU,CAAwB;IAC1C,OAAO,CAAC,uBAAuB,CAAsC;IACrE,OAAO,CAAC,uBAAuB,CAAsC;IACrE,OAAO,CAAC,4BAA4B,CAAC;IACrC,OAAO,CAAC,qBAAqB,CAAa;IAC1C,OAAO,CAAC,wBAAwB,CAAgD;IAChF,OAAO,CAAC,iBAAiB,CAAU;IACnC,OAAO,CAAC,qBAAqB,CAAU;gBAE3B,OAAO,EAAE;QACnB,WAAW,EAAE,MAAM,CAAC;QACpB,kBAAkB,EAAE,MAAM,CAAC;QAC3B,cAAc,EAAE,OAAO,CAAC;QACxB,eAAe,EAAE,2BAA2B,CAAC;QAC7C,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,iBAAiB,CAAC,EAAE,OAAO,CAAC;KAC7B;IA4CD,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC;IACxD,QAAQ,CAAC,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAClC,QAAQ,CAAC,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI;IAEpE;;OAEG;IACU,eAAe,CAAC,SAAS,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC;IAoN1E;;OAEG;YACW,OAAO;IAuBrB;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAOjC;;OAEG;IACH,OAAO,CAAC,iBAAiB;YAaX,sBAAsB;IAcpC,OAAO,CAAC,oBAAoB;CAO7B"}
|
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
// Copyright (c) Microsoft Corporation.
|
|
2
2
|
// Licensed under the MIT License.
|
|
3
3
|
import { diag } from "@opentelemetry/api";
|
|
4
|
+
import { ExceptionType } from "../../export/statsbeat/types.js";
|
|
4
5
|
import { FileSystemPersist } from "./persist/index.js";
|
|
5
6
|
import { ExportResultCode } from "@opentelemetry/core";
|
|
6
7
|
import { NetworkStatsbeatMetrics } from "../../export/statsbeat/networkStatsbeatMetrics.js";
|
|
7
8
|
import { LongIntervalStatsbeatMetrics } from "../../export/statsbeat/longIntervalStatsbeatMetrics.js";
|
|
8
9
|
import { DropCode, RetryCode, MAX_STATSBEAT_FAILURES, isStatsbeatShutdownStatus, } from "../../export/statsbeat/types.js";
|
|
9
10
|
import { isRetriable } from "../../utils/breezeUtils.js";
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
11
|
+
import { ENV_APPLICATIONINSIGHTS_SDKSTATS_ENABLED_PREVIEW, ENV_APPLICATIONINSIGHTS_SDKSTATS_EXPORT_INTERVAL, RetriableRestErrorTypes, } from "../../Declarations/Constants.js";
|
|
12
|
+
import { CustomerSDKStatsMetrics } from "../../export/statsbeat/customerSDKStats.js";
|
|
12
13
|
const DEFAULT_BATCH_SEND_RETRY_INTERVAL_MS = 60_000;
|
|
13
14
|
/**
|
|
14
15
|
* Base sender class
|
|
@@ -19,7 +20,7 @@ export class BaseSender {
|
|
|
19
20
|
numConsecutiveRedirects;
|
|
20
21
|
retryTimer;
|
|
21
22
|
networkStatsbeatMetrics;
|
|
22
|
-
|
|
23
|
+
customerSDKStatsMetrics;
|
|
23
24
|
longIntervalStatsbeatMetrics;
|
|
24
25
|
statsbeatFailureCount = 0;
|
|
25
26
|
batchSendRetryIntervalMs = DEFAULT_BATCH_SEND_RETRY_INTERVAL_MS;
|
|
@@ -39,15 +40,27 @@ export class BaseSender {
|
|
|
39
40
|
endpointUrl: options.endpointUrl,
|
|
40
41
|
disableOfflineStorage: this.disableOfflineStorage,
|
|
41
42
|
});
|
|
42
|
-
if (process.env[
|
|
43
|
-
|
|
43
|
+
if (process.env[ENV_APPLICATIONINSIGHTS_SDKSTATS_ENABLED_PREVIEW]) {
|
|
44
|
+
let exportInterval;
|
|
45
|
+
if (process.env[ENV_APPLICATIONINSIGHTS_SDKSTATS_EXPORT_INTERVAL]) {
|
|
46
|
+
const envValue = process.env[ENV_APPLICATIONINSIGHTS_SDKSTATS_EXPORT_INTERVAL];
|
|
47
|
+
const exportIntervalSeconds = parseInt(envValue, 10);
|
|
48
|
+
if (!isNaN(exportIntervalSeconds) && exportIntervalSeconds > 0) {
|
|
49
|
+
exportInterval = exportIntervalSeconds * 1000; // Convert seconds to milliseconds
|
|
50
|
+
}
|
|
51
|
+
else {
|
|
52
|
+
diag.warn(`Invalid value for APPLICATIONINSIGHTS_SDKSTATS_EXPORT_INTERVAL environment variable: '${envValue}'. Expected a positive number (seconds). Using default export interval.`);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
this.customerSDKStatsMetrics = CustomerSDKStatsMetrics.getInstance({
|
|
44
56
|
instrumentationKey: options.instrumentationKey,
|
|
45
57
|
endpointUrl: options.endpointUrl,
|
|
46
58
|
disableOfflineStorage: this.disableOfflineStorage,
|
|
59
|
+
networkCollectionInterval: exportInterval,
|
|
47
60
|
});
|
|
48
61
|
}
|
|
49
62
|
}
|
|
50
|
-
this.persister = new FileSystemPersist(options.instrumentationKey, options.exporterOptions, this.
|
|
63
|
+
this.persister = new FileSystemPersist(options.instrumentationKey, options.exporterOptions, this.customerSDKStatsMetrics);
|
|
51
64
|
this.retryTimer = null;
|
|
52
65
|
this.isStatsbeatSender = options.isStatsbeatSender || false;
|
|
53
66
|
}
|
|
@@ -77,7 +90,7 @@ export class BaseSender {
|
|
|
77
90
|
// If we are not exporting statsbeat and statsbeat is not disabled -- count success
|
|
78
91
|
if (!this.isStatsbeatSender) {
|
|
79
92
|
this.networkStatsbeatMetrics?.countSuccess(duration);
|
|
80
|
-
this.
|
|
93
|
+
this.customerSDKStatsMetrics?.countSuccessfulItems(envelopes);
|
|
81
94
|
}
|
|
82
95
|
return { code: ExportResultCode.SUCCESS };
|
|
83
96
|
}
|
|
@@ -86,7 +99,7 @@ export class BaseSender {
|
|
|
86
99
|
if (statusCode === 429 || statusCode === 439) {
|
|
87
100
|
if (!this.isStatsbeatSender) {
|
|
88
101
|
this.networkStatsbeatMetrics?.countThrottle(statusCode);
|
|
89
|
-
this.
|
|
102
|
+
this.customerSDKStatsMetrics?.countRetryItems(envelopes, statusCode);
|
|
90
103
|
}
|
|
91
104
|
return {
|
|
92
105
|
code: ExportResultCode.SUCCESS,
|
|
@@ -96,7 +109,7 @@ export class BaseSender {
|
|
|
96
109
|
diag.info(result);
|
|
97
110
|
const breezeResponse = JSON.parse(result);
|
|
98
111
|
const filteredEnvelopes = [];
|
|
99
|
-
// Create a list of successful envelopes by filtering out the failed ones for customer
|
|
112
|
+
// Create a list of successful envelopes by filtering out the failed ones for customer SDK Stats
|
|
100
113
|
const successfulEnvelopes = [...envelopes];
|
|
101
114
|
// If we have a partial success, count the succeeded envelopes
|
|
102
115
|
if (breezeResponse.itemsAccepted > 0 && statusCode === 206 && !this.isStatsbeatSender) {
|
|
@@ -118,13 +131,13 @@ export class BaseSender {
|
|
|
118
131
|
// Count only the successful envelopes (non-undefined)
|
|
119
132
|
if (!this.isStatsbeatSender) {
|
|
120
133
|
this.networkStatsbeatMetrics?.countSuccess(duration);
|
|
121
|
-
this.
|
|
134
|
+
this.customerSDKStatsMetrics?.countSuccessfulItems(envelopes);
|
|
122
135
|
}
|
|
123
136
|
}
|
|
124
137
|
if (filteredEnvelopes.length > 0) {
|
|
125
138
|
if (!this.isStatsbeatSender) {
|
|
126
139
|
this.networkStatsbeatMetrics?.countRetry(statusCode);
|
|
127
|
-
this.
|
|
140
|
+
this.customerSDKStatsMetrics?.countRetryItems(envelopes, statusCode);
|
|
128
141
|
}
|
|
129
142
|
// calls resultCallback(ExportResult) based on result of persister.push
|
|
130
143
|
return await this.persist(filteredEnvelopes);
|
|
@@ -132,8 +145,9 @@ export class BaseSender {
|
|
|
132
145
|
// Failed -- not retriable
|
|
133
146
|
if (!this.isStatsbeatSender) {
|
|
134
147
|
this.networkStatsbeatMetrics?.countFailure(duration, statusCode);
|
|
135
|
-
// Count dropped items for customer
|
|
136
|
-
|
|
148
|
+
// Count dropped items for customer SDK Stats for non-retriable status codes
|
|
149
|
+
const filteredSuccessfulEnvelopes = successfulEnvelopes.filter(Boolean);
|
|
150
|
+
this.customerSDKStatsMetrics?.countDroppedItems(filteredSuccessfulEnvelopes, statusCode);
|
|
137
151
|
}
|
|
138
152
|
return {
|
|
139
153
|
code: ExportResultCode.FAILED,
|
|
@@ -143,7 +157,7 @@ export class BaseSender {
|
|
|
143
157
|
// calls resultCallback(ExportResult) based on result of persister.push
|
|
144
158
|
if (!this.isStatsbeatSender) {
|
|
145
159
|
this.networkStatsbeatMetrics?.countRetry(statusCode);
|
|
146
|
-
this.
|
|
160
|
+
this.customerSDKStatsMetrics?.countRetryItems(envelopes, statusCode);
|
|
147
161
|
}
|
|
148
162
|
return await this.persist(envelopes);
|
|
149
163
|
}
|
|
@@ -153,13 +167,13 @@ export class BaseSender {
|
|
|
153
167
|
if (this.networkStatsbeatMetrics && !this.isStatsbeatSender) {
|
|
154
168
|
if (statusCode) {
|
|
155
169
|
this.networkStatsbeatMetrics.countFailure(duration, statusCode);
|
|
156
|
-
this.
|
|
170
|
+
this.customerSDKStatsMetrics?.countDroppedItems(envelopes, statusCode);
|
|
157
171
|
}
|
|
158
172
|
}
|
|
159
173
|
else {
|
|
160
174
|
// Handles all other status codes or client exceptions for Statsbeat
|
|
161
175
|
this.incrementStatsbeatFailure();
|
|
162
|
-
this.
|
|
176
|
+
this.customerSDKStatsMetrics?.countDroppedItems(envelopes, DropCode.CLIENT_EXCEPTION);
|
|
163
177
|
}
|
|
164
178
|
return {
|
|
165
179
|
code: ExportResultCode.FAILED,
|
|
@@ -189,7 +203,7 @@ export class BaseSender {
|
|
|
189
203
|
const redirectError = new Error("Circular redirect");
|
|
190
204
|
if (!this.isStatsbeatSender) {
|
|
191
205
|
this.networkStatsbeatMetrics?.countException(redirectError);
|
|
192
|
-
this.
|
|
206
|
+
this.customerSDKStatsMetrics?.countDroppedItems(envelopes, DropCode.CLIENT_EXCEPTION, redirectError.message, ExceptionType.CLIENT_EXCEPTION);
|
|
193
207
|
}
|
|
194
208
|
return { code: ExportResultCode.FAILED, error: redirectError };
|
|
195
209
|
}
|
|
@@ -198,7 +212,7 @@ export class BaseSender {
|
|
|
198
212
|
isRetriable(restError.statusCode) &&
|
|
199
213
|
!this.isStatsbeatSender) {
|
|
200
214
|
this.networkStatsbeatMetrics?.countRetry(restError.statusCode);
|
|
201
|
-
this.
|
|
215
|
+
this.customerSDKStatsMetrics?.countRetryItems(envelopes, restError.statusCode);
|
|
202
216
|
return this.persist(envelopes);
|
|
203
217
|
}
|
|
204
218
|
else if (restError.statusCode === 400 &&
|
|
@@ -216,13 +230,13 @@ export class BaseSender {
|
|
|
216
230
|
}
|
|
217
231
|
// For retriable REST errors
|
|
218
232
|
if (this.isRetriableRestError(restError) && !this.isStatsbeatSender) {
|
|
219
|
-
if (this.
|
|
220
|
-
this.
|
|
233
|
+
if (this.customerSDKStatsMetrics?.isTimeoutError(restError) && !this.isStatsbeatSender) {
|
|
234
|
+
this.customerSDKStatsMetrics?.countRetryItems(envelopes, RetryCode.CLIENT_TIMEOUT, "timeout_exception", ExceptionType.TIMEOUT_EXCEPTION);
|
|
221
235
|
diag.error("Request timed out. Error message:", restError.message);
|
|
222
236
|
}
|
|
223
237
|
else if (restError.statusCode) {
|
|
224
238
|
this.networkStatsbeatMetrics?.countRetry(restError.statusCode);
|
|
225
|
-
this.
|
|
239
|
+
this.customerSDKStatsMetrics?.countRetryItems(envelopes, restError.statusCode);
|
|
226
240
|
}
|
|
227
241
|
diag.error("Retrying due to transient client side error. Error message:", restError.message);
|
|
228
242
|
return this.persist(envelopes);
|
|
@@ -230,6 +244,7 @@ export class BaseSender {
|
|
|
230
244
|
// For non-retriable REST errors or client exceptions
|
|
231
245
|
if (!this.isStatsbeatSender) {
|
|
232
246
|
this.networkStatsbeatMetrics?.countException(restError);
|
|
247
|
+
this.customerSDKStatsMetrics?.countDroppedItems(envelopes, DropCode.CLIENT_EXCEPTION, restError.message);
|
|
233
248
|
diag.error("Envelopes could not be exported and are not retriable. Error message:", restError.message);
|
|
234
249
|
}
|
|
235
250
|
return { code: ExportResultCode.FAILED, error: restError };
|
|
@@ -252,7 +267,7 @@ export class BaseSender {
|
|
|
252
267
|
if (!this.isStatsbeatSender) {
|
|
253
268
|
this.networkStatsbeatMetrics?.countWriteFailure();
|
|
254
269
|
if (this.disableOfflineStorage && envelopes) {
|
|
255
|
-
this.
|
|
270
|
+
this.customerSDKStatsMetrics?.countDroppedItems(envelopes, DropCode.CLIENT_STORAGE_DISABLED);
|
|
256
271
|
}
|
|
257
272
|
}
|
|
258
273
|
return { code: ExportResultCode.FAILED, error: ex };
|
|
@@ -277,8 +292,8 @@ export class BaseSender {
|
|
|
277
292
|
if (this.longIntervalStatsbeatMetrics) {
|
|
278
293
|
this.longIntervalStatsbeatMetrics?.shutdown();
|
|
279
294
|
}
|
|
280
|
-
if (this.
|
|
281
|
-
this.
|
|
295
|
+
if (this.customerSDKStatsMetrics) {
|
|
296
|
+
this.customerSDKStatsMetrics.shutdown();
|
|
282
297
|
}
|
|
283
298
|
this.statsbeatFailureCount = 0;
|
|
284
299
|
}
|