@microsoft/opentelemetry 1.1.0 → 1.3.0

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.
Files changed (280) hide show
  1. package/README.md +25 -16
  2. package/dist/commonjs/a365/configuration/A365Configuration.js +2 -2
  3. package/dist/commonjs/a365/configuration/A365Configuration.js.map +1 -1
  4. package/dist/commonjs/a365/configuration/A365ConfigurationOptions.d.ts +1 -1
  5. package/dist/commonjs/a365/constants.d.ts +109 -2
  6. package/dist/commonjs/a365/constants.d.ts.map +1 -1
  7. package/dist/commonjs/a365/constants.js +108 -1
  8. package/dist/commonjs/a365/constants.js.map +1 -1
  9. package/dist/commonjs/a365/contracts.d.ts +138 -0
  10. package/dist/commonjs/a365/contracts.d.ts.map +1 -1
  11. package/dist/commonjs/a365/contracts.js +33 -0
  12. package/dist/commonjs/a365/contracts.js.map +1 -1
  13. package/dist/commonjs/a365/exporter/Agent365Exporter.d.ts +33 -1
  14. package/dist/commonjs/a365/exporter/Agent365Exporter.d.ts.map +1 -1
  15. package/dist/commonjs/a365/exporter/Agent365Exporter.js +83 -4
  16. package/dist/commonjs/a365/exporter/Agent365Exporter.js.map +1 -1
  17. package/dist/commonjs/a365/exporter/Agent365ExporterOptions.d.ts +8 -0
  18. package/dist/commonjs/a365/exporter/Agent365ExporterOptions.d.ts.map +1 -1
  19. package/dist/commonjs/a365/exporter/Agent365ExporterOptions.js.map +1 -1
  20. package/dist/commonjs/a365/exporter/ExporterEventNames.d.ts +3 -0
  21. package/dist/commonjs/a365/exporter/ExporterEventNames.d.ts.map +1 -1
  22. package/dist/commonjs/a365/exporter/ExporterEventNames.js +3 -0
  23. package/dist/commonjs/a365/exporter/ExporterEventNames.js.map +1 -1
  24. package/dist/commonjs/a365/hosting/agenticTokenCache.d.ts +24 -0
  25. package/dist/commonjs/a365/hosting/agenticTokenCache.d.ts.map +1 -1
  26. package/dist/commonjs/a365/hosting/agenticTokenCache.js +40 -3
  27. package/dist/commonjs/a365/hosting/agenticTokenCache.js.map +1 -1
  28. package/dist/commonjs/a365/hosting/outputLoggingMiddleware.d.ts.map +1 -1
  29. package/dist/commonjs/a365/hosting/outputLoggingMiddleware.js.map +1 -1
  30. package/dist/commonjs/a365/hosting/types.d.ts +47 -1
  31. package/dist/commonjs/a365/hosting/types.d.ts.map +1 -1
  32. package/dist/commonjs/a365/scopes/OpenTelemetryScope.d.ts +1 -1
  33. package/dist/commonjs/a365/scopes/OpenTelemetryScope.d.ts.map +1 -1
  34. package/dist/commonjs/a365/scopes/OpenTelemetryScope.js +1 -1
  35. package/dist/commonjs/a365/scopes/OpenTelemetryScope.js.map +1 -1
  36. package/dist/commonjs/azureMonitor/browserSdkLoader/browserSdkLoaderHelper.d.ts.map +1 -1
  37. package/dist/commonjs/azureMonitor/browserSdkLoader/browserSdkLoaderHelper.js +1 -3
  38. package/dist/commonjs/azureMonitor/browserSdkLoader/browserSdkLoaderHelper.js.map +1 -1
  39. package/dist/commonjs/azureMonitor/generated/models/models.d.ts.map +1 -1
  40. package/dist/commonjs/azureMonitor/generated/models/models.js.map +1 -1
  41. package/dist/commonjs/azureMonitor/index.d.ts +2 -2
  42. package/dist/commonjs/azureMonitor/logs/batchLogRecordProcessor.js +1 -1
  43. package/dist/commonjs/azureMonitor/logs/batchLogRecordProcessor.js.map +1 -1
  44. package/dist/commonjs/azureMonitor/logs/handler.d.ts +3 -3
  45. package/dist/commonjs/azureMonitor/logs/handler.js +3 -3
  46. package/dist/commonjs/azureMonitor/metrics/handler.d.ts +1 -1
  47. package/dist/commonjs/azureMonitor/metrics/handler.js +1 -1
  48. package/dist/commonjs/azureMonitor/metrics/performanceCounters.d.ts +2 -2
  49. package/dist/commonjs/azureMonitor/metrics/performanceCounters.d.ts.map +1 -1
  50. package/dist/commonjs/azureMonitor/metrics/performanceCounters.js +8 -16
  51. package/dist/commonjs/azureMonitor/metrics/performanceCounters.js.map +1 -1
  52. package/dist/commonjs/azureMonitor/metrics/quickpulse/filtering/validator.js +2 -2
  53. package/dist/commonjs/azureMonitor/metrics/quickpulse/filtering/validator.js.map +1 -1
  54. package/dist/commonjs/azureMonitor/metrics/quickpulse/liveMetrics.d.ts +3 -3
  55. package/dist/commonjs/azureMonitor/metrics/quickpulse/liveMetrics.d.ts.map +1 -1
  56. package/dist/commonjs/azureMonitor/metrics/quickpulse/liveMetrics.js +21 -9
  57. package/dist/commonjs/azureMonitor/metrics/quickpulse/liveMetrics.js.map +1 -1
  58. package/dist/commonjs/azureMonitor/metrics/quickpulse/utils.d.ts.map +1 -1
  59. package/dist/commonjs/azureMonitor/metrics/quickpulse/utils.js +1 -1
  60. package/dist/commonjs/azureMonitor/metrics/quickpulse/utils.js.map +1 -1
  61. package/dist/commonjs/azureMonitor/metrics/standardMetrics.d.ts +1 -1
  62. package/dist/commonjs/azureMonitor/metrics/standardMetrics.js +1 -1
  63. package/dist/commonjs/azureMonitor/traces/sampler.js +1 -1
  64. package/dist/commonjs/azureMonitor/traces/sampler.js.map +1 -1
  65. package/dist/commonjs/distro/autoAttach.js +2 -2
  66. package/dist/commonjs/distro/autoAttach.js.map +1 -1
  67. package/dist/commonjs/distro/distro.d.ts +2 -2
  68. package/dist/commonjs/distro/distro.d.ts.map +1 -1
  69. package/dist/commonjs/distro/distro.js +32 -17
  70. package/dist/commonjs/distro/distro.js.map +1 -1
  71. package/dist/commonjs/distro/instrumentations.d.ts +2 -2
  72. package/dist/commonjs/distro/instrumentations.d.ts.map +1 -1
  73. package/dist/commonjs/distro/instrumentations.js +14 -2
  74. package/dist/commonjs/distro/instrumentations.js.map +1 -1
  75. package/dist/commonjs/distro/loader.d.ts +1 -1
  76. package/dist/commonjs/distro/loader.js +1 -1
  77. package/dist/commonjs/genai/instrumentations/langchain/langchainTraceInstrumentor.d.ts +10 -4
  78. package/dist/commonjs/genai/instrumentations/langchain/langchainTraceInstrumentor.d.ts.map +1 -1
  79. package/dist/commonjs/genai/instrumentations/langchain/langchainTraceInstrumentor.js +41 -63
  80. package/dist/commonjs/genai/instrumentations/langchain/langchainTraceInstrumentor.js.map +1 -1
  81. package/dist/commonjs/genai/instrumentations/langchain/tracer.d.ts +16 -3
  82. package/dist/commonjs/genai/instrumentations/langchain/tracer.d.ts.map +1 -1
  83. package/dist/commonjs/genai/instrumentations/langchain/tracer.js +31 -8
  84. package/dist/commonjs/genai/instrumentations/langchain/tracer.js.map +1 -1
  85. package/dist/commonjs/genai/instrumentations/langchain/utils.d.ts +3 -1
  86. package/dist/commonjs/genai/instrumentations/langchain/utils.d.ts.map +1 -1
  87. package/dist/commonjs/genai/instrumentations/langchain/utils.js +137 -13
  88. package/dist/commonjs/genai/instrumentations/langchain/utils.js.map +1 -1
  89. package/dist/commonjs/genai/mainAgent/constants.d.ts +5 -0
  90. package/dist/commonjs/genai/mainAgent/constants.d.ts.map +1 -1
  91. package/dist/commonjs/genai/mainAgent/constants.js +5 -0
  92. package/dist/commonjs/genai/mainAgent/constants.js.map +1 -1
  93. package/dist/commonjs/genai/mainAgent/processor.d.ts +25 -0
  94. package/dist/commonjs/genai/mainAgent/processor.d.ts.map +1 -1
  95. package/dist/commonjs/genai/mainAgent/processor.js +25 -0
  96. package/dist/commonjs/genai/mainAgent/processor.js.map +1 -1
  97. package/dist/commonjs/genai/semconv.d.ts +1 -0
  98. package/dist/commonjs/genai/semconv.d.ts.map +1 -1
  99. package/dist/commonjs/genai/semconv.js +2 -1
  100. package/dist/commonjs/genai/semconv.js.map +1 -1
  101. package/dist/commonjs/otlp/handler.d.ts.map +1 -1
  102. package/dist/commonjs/otlp/handler.js +5 -20
  103. package/dist/commonjs/otlp/handler.js.map +1 -1
  104. package/dist/commonjs/sdkstats/constants.d.ts +45 -0
  105. package/dist/commonjs/sdkstats/constants.d.ts.map +1 -0
  106. package/dist/commonjs/sdkstats/constants.js +77 -0
  107. package/dist/commonjs/sdkstats/constants.js.map +1 -0
  108. package/dist/commonjs/sdkstats/index.d.ts +5 -6
  109. package/dist/commonjs/sdkstats/index.d.ts.map +1 -1
  110. package/dist/commonjs/sdkstats/index.js +15 -8
  111. package/dist/commonjs/sdkstats/index.js.map +1 -1
  112. package/dist/commonjs/sdkstats/manager.js +7 -7
  113. package/dist/commonjs/sdkstats/manager.js.map +1 -1
  114. package/dist/commonjs/sdkstats/metrics.d.ts.map +1 -1
  115. package/dist/commonjs/sdkstats/metrics.js +41 -7
  116. package/dist/commonjs/sdkstats/metrics.js.map +1 -1
  117. package/dist/commonjs/sdkstats/networkStats.d.ts +38 -16
  118. package/dist/commonjs/sdkstats/networkStats.d.ts.map +1 -1
  119. package/dist/commonjs/sdkstats/networkStats.js +95 -30
  120. package/dist/commonjs/sdkstats/networkStats.js.map +1 -1
  121. package/dist/commonjs/sdkstats/state.d.ts +5 -5
  122. package/dist/commonjs/sdkstats/state.js +3 -3
  123. package/dist/commonjs/sdkstats/state.js.map +1 -1
  124. package/dist/commonjs/shared/config.d.ts +1 -1
  125. package/dist/commonjs/shared/config.js +1 -1
  126. package/dist/commonjs/shared/logging/diagFileConsoleLogger.d.ts +1 -0
  127. package/dist/commonjs/shared/logging/diagFileConsoleLogger.d.ts.map +1 -1
  128. package/dist/commonjs/shared/logging/diagFileConsoleLogger.js +14 -6
  129. package/dist/commonjs/shared/logging/diagFileConsoleLogger.js.map +1 -1
  130. package/dist/commonjs/types.d.ts +14 -3
  131. package/dist/commonjs/types.d.ts.map +1 -1
  132. package/dist/commonjs/types.js +2 -3
  133. package/dist/commonjs/types.js.map +1 -1
  134. package/dist/commonjs/utils/sdkStats.d.ts.map +1 -1
  135. package/dist/commonjs/utils/sdkStats.js +14 -3
  136. package/dist/commonjs/utils/sdkStats.js.map +1 -1
  137. package/dist/esm/a365/configuration/A365Configuration.js +2 -2
  138. package/dist/esm/a365/configuration/A365Configuration.js.map +1 -1
  139. package/dist/esm/a365/configuration/A365ConfigurationOptions.d.ts +1 -1
  140. package/dist/esm/a365/constants.d.ts +109 -2
  141. package/dist/esm/a365/constants.d.ts.map +1 -1
  142. package/dist/esm/a365/constants.js +108 -1
  143. package/dist/esm/a365/constants.js.map +1 -1
  144. package/dist/esm/a365/contracts.d.ts +138 -0
  145. package/dist/esm/a365/contracts.d.ts.map +1 -1
  146. package/dist/esm/a365/contracts.js +33 -0
  147. package/dist/esm/a365/contracts.js.map +1 -1
  148. package/dist/esm/a365/exporter/Agent365Exporter.d.ts +33 -1
  149. package/dist/esm/a365/exporter/Agent365Exporter.d.ts.map +1 -1
  150. package/dist/esm/a365/exporter/Agent365Exporter.js +84 -5
  151. package/dist/esm/a365/exporter/Agent365Exporter.js.map +1 -1
  152. package/dist/esm/a365/exporter/Agent365ExporterOptions.d.ts +8 -0
  153. package/dist/esm/a365/exporter/Agent365ExporterOptions.d.ts.map +1 -1
  154. package/dist/esm/a365/exporter/Agent365ExporterOptions.js.map +1 -1
  155. package/dist/esm/a365/exporter/ExporterEventNames.d.ts +3 -0
  156. package/dist/esm/a365/exporter/ExporterEventNames.d.ts.map +1 -1
  157. package/dist/esm/a365/exporter/ExporterEventNames.js +3 -0
  158. package/dist/esm/a365/exporter/ExporterEventNames.js.map +1 -1
  159. package/dist/esm/a365/hosting/agenticTokenCache.d.ts +24 -0
  160. package/dist/esm/a365/hosting/agenticTokenCache.d.ts.map +1 -1
  161. package/dist/esm/a365/hosting/agenticTokenCache.js +40 -3
  162. package/dist/esm/a365/hosting/agenticTokenCache.js.map +1 -1
  163. package/dist/esm/a365/hosting/outputLoggingMiddleware.d.ts.map +1 -1
  164. package/dist/esm/a365/hosting/outputLoggingMiddleware.js.map +1 -1
  165. package/dist/esm/a365/hosting/types.d.ts +47 -1
  166. package/dist/esm/a365/hosting/types.d.ts.map +1 -1
  167. package/dist/esm/a365/scopes/OpenTelemetryScope.d.ts +1 -1
  168. package/dist/esm/a365/scopes/OpenTelemetryScope.d.ts.map +1 -1
  169. package/dist/esm/a365/scopes/OpenTelemetryScope.js +1 -1
  170. package/dist/esm/a365/scopes/OpenTelemetryScope.js.map +1 -1
  171. package/dist/esm/azureMonitor/browserSdkLoader/browserSdkLoaderHelper.d.ts.map +1 -1
  172. package/dist/esm/azureMonitor/browserSdkLoader/browserSdkLoaderHelper.js +1 -3
  173. package/dist/esm/azureMonitor/browserSdkLoader/browserSdkLoaderHelper.js.map +1 -1
  174. package/dist/esm/azureMonitor/generated/models/models.d.ts.map +1 -1
  175. package/dist/esm/azureMonitor/generated/models/models.js.map +1 -1
  176. package/dist/esm/azureMonitor/index.d.ts +2 -2
  177. package/dist/esm/azureMonitor/logs/batchLogRecordProcessor.js +1 -1
  178. package/dist/esm/azureMonitor/logs/batchLogRecordProcessor.js.map +1 -1
  179. package/dist/esm/azureMonitor/logs/handler.d.ts +3 -3
  180. package/dist/esm/azureMonitor/logs/handler.js +3 -3
  181. package/dist/esm/azureMonitor/metrics/handler.d.ts +1 -1
  182. package/dist/esm/azureMonitor/metrics/handler.js +1 -1
  183. package/dist/esm/azureMonitor/metrics/performanceCounters.d.ts +2 -2
  184. package/dist/esm/azureMonitor/metrics/performanceCounters.d.ts.map +1 -1
  185. package/dist/esm/azureMonitor/metrics/performanceCounters.js +8 -16
  186. package/dist/esm/azureMonitor/metrics/performanceCounters.js.map +1 -1
  187. package/dist/esm/azureMonitor/metrics/quickpulse/filtering/validator.js +2 -2
  188. package/dist/esm/azureMonitor/metrics/quickpulse/filtering/validator.js.map +1 -1
  189. package/dist/esm/azureMonitor/metrics/quickpulse/liveMetrics.d.ts +3 -3
  190. package/dist/esm/azureMonitor/metrics/quickpulse/liveMetrics.d.ts.map +1 -1
  191. package/dist/esm/azureMonitor/metrics/quickpulse/liveMetrics.js +21 -9
  192. package/dist/esm/azureMonitor/metrics/quickpulse/liveMetrics.js.map +1 -1
  193. package/dist/esm/azureMonitor/metrics/quickpulse/utils.d.ts.map +1 -1
  194. package/dist/esm/azureMonitor/metrics/quickpulse/utils.js +1 -1
  195. package/dist/esm/azureMonitor/metrics/quickpulse/utils.js.map +1 -1
  196. package/dist/esm/azureMonitor/metrics/standardMetrics.d.ts +1 -1
  197. package/dist/esm/azureMonitor/metrics/standardMetrics.js +1 -1
  198. package/dist/esm/azureMonitor/traces/sampler.js +1 -1
  199. package/dist/esm/azureMonitor/traces/sampler.js.map +1 -1
  200. package/dist/esm/distro/autoAttach.js +2 -2
  201. package/dist/esm/distro/autoAttach.js.map +1 -1
  202. package/dist/esm/distro/distro.d.ts +2 -2
  203. package/dist/esm/distro/distro.d.ts.map +1 -1
  204. package/dist/esm/distro/distro.js +28 -13
  205. package/dist/esm/distro/distro.js.map +1 -1
  206. package/dist/esm/distro/instrumentations.d.ts +2 -2
  207. package/dist/esm/distro/instrumentations.d.ts.map +1 -1
  208. package/dist/esm/distro/instrumentations.js +14 -2
  209. package/dist/esm/distro/instrumentations.js.map +1 -1
  210. package/dist/esm/distro/loader.d.ts +1 -1
  211. package/dist/esm/distro/loader.js +1 -1
  212. package/dist/esm/genai/instrumentations/langchain/langchainTraceInstrumentor.d.ts +10 -4
  213. package/dist/esm/genai/instrumentations/langchain/langchainTraceInstrumentor.d.ts.map +1 -1
  214. package/dist/esm/genai/instrumentations/langchain/langchainTraceInstrumentor.js +41 -30
  215. package/dist/esm/genai/instrumentations/langchain/langchainTraceInstrumentor.js.map +1 -1
  216. package/dist/esm/genai/instrumentations/langchain/tracer.d.ts +16 -3
  217. package/dist/esm/genai/instrumentations/langchain/tracer.d.ts.map +1 -1
  218. package/dist/esm/genai/instrumentations/langchain/tracer.js +31 -8
  219. package/dist/esm/genai/instrumentations/langchain/tracer.js.map +1 -1
  220. package/dist/esm/genai/instrumentations/langchain/utils.d.ts +3 -1
  221. package/dist/esm/genai/instrumentations/langchain/utils.d.ts.map +1 -1
  222. package/dist/esm/genai/instrumentations/langchain/utils.js +137 -15
  223. package/dist/esm/genai/instrumentations/langchain/utils.js.map +1 -1
  224. package/dist/esm/genai/mainAgent/constants.d.ts +5 -0
  225. package/dist/esm/genai/mainAgent/constants.d.ts.map +1 -1
  226. package/dist/esm/genai/mainAgent/constants.js +5 -0
  227. package/dist/esm/genai/mainAgent/constants.js.map +1 -1
  228. package/dist/esm/genai/mainAgent/processor.d.ts +25 -0
  229. package/dist/esm/genai/mainAgent/processor.d.ts.map +1 -1
  230. package/dist/esm/genai/mainAgent/processor.js +25 -0
  231. package/dist/esm/genai/mainAgent/processor.js.map +1 -1
  232. package/dist/esm/genai/semconv.d.ts +1 -0
  233. package/dist/esm/genai/semconv.d.ts.map +1 -1
  234. package/dist/esm/genai/semconv.js +1 -0
  235. package/dist/esm/genai/semconv.js.map +1 -1
  236. package/dist/esm/otlp/handler.d.ts.map +1 -1
  237. package/dist/esm/otlp/handler.js +5 -20
  238. package/dist/esm/otlp/handler.js.map +1 -1
  239. package/dist/esm/sdkstats/constants.d.ts +45 -0
  240. package/dist/esm/sdkstats/constants.d.ts.map +1 -0
  241. package/dist/esm/sdkstats/constants.js +74 -0
  242. package/dist/esm/sdkstats/constants.js.map +1 -0
  243. package/dist/esm/sdkstats/index.d.ts +5 -6
  244. package/dist/esm/sdkstats/index.d.ts.map +1 -1
  245. package/dist/esm/sdkstats/index.js +4 -5
  246. package/dist/esm/sdkstats/index.js.map +1 -1
  247. package/dist/esm/sdkstats/manager.js +7 -7
  248. package/dist/esm/sdkstats/manager.js.map +1 -1
  249. package/dist/esm/sdkstats/metrics.d.ts.map +1 -1
  250. package/dist/esm/sdkstats/metrics.js +42 -8
  251. package/dist/esm/sdkstats/metrics.js.map +1 -1
  252. package/dist/esm/sdkstats/networkStats.d.ts +38 -16
  253. package/dist/esm/sdkstats/networkStats.d.ts.map +1 -1
  254. package/dist/esm/sdkstats/networkStats.js +79 -26
  255. package/dist/esm/sdkstats/networkStats.js.map +1 -1
  256. package/dist/esm/sdkstats/state.d.ts +5 -5
  257. package/dist/esm/sdkstats/state.js +3 -3
  258. package/dist/esm/sdkstats/state.js.map +1 -1
  259. package/dist/esm/shared/config.d.ts +1 -1
  260. package/dist/esm/shared/config.js +1 -1
  261. package/dist/esm/shared/logging/diagFileConsoleLogger.d.ts +1 -0
  262. package/dist/esm/shared/logging/diagFileConsoleLogger.d.ts.map +1 -1
  263. package/dist/esm/shared/logging/diagFileConsoleLogger.js +14 -6
  264. package/dist/esm/shared/logging/diagFileConsoleLogger.js.map +1 -1
  265. package/dist/esm/types.d.ts +14 -3
  266. package/dist/esm/types.d.ts.map +1 -1
  267. package/dist/esm/types.js +1 -2
  268. package/dist/esm/types.js.map +1 -1
  269. package/dist/esm/utils/sdkStats.d.ts.map +1 -1
  270. package/dist/esm/utils/sdkStats.js +14 -3
  271. package/dist/esm/utils/sdkStats.js.map +1 -1
  272. package/package.json +49 -39
  273. package/dist/commonjs/sdkstats/otlpWrapper.d.ts +0 -56
  274. package/dist/commonjs/sdkstats/otlpWrapper.d.ts.map +0 -1
  275. package/dist/commonjs/sdkstats/otlpWrapper.js +0 -121
  276. package/dist/commonjs/sdkstats/otlpWrapper.js.map +0 -1
  277. package/dist/esm/sdkstats/otlpWrapper.d.ts +0 -56
  278. package/dist/esm/sdkstats/otlpWrapper.d.ts.map +0 -1
  279. package/dist/esm/sdkstats/otlpWrapper.js +0 -115
  280. package/dist/esm/sdkstats/otlpWrapper.js.map +0 -1
@@ -2,20 +2,20 @@
2
2
  // Copyright (c) Microsoft Corporation.
3
3
  // Licensed under the MIT License.
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.NetworkStatsLogExporter = exports.NetworkStatsMetricExporter = exports.NetworkStatsSpanExporter = exports._resetNetworkStatsForTest = exports.shortHost = exports.drain = exports.recordSuccess = exports.NETWORK_METRIC_NAMES = exports.REQUEST_SUCCESS_NAME = exports.SdkStatsManager = exports.FEATURE_TYPE_INSTRUMENTATION = exports.FEATURE_TYPE_FEATURE = exports.SdkStatsMetrics = exports.getSdkStatsShutdown = exports.setSdkStatsShutdown = exports.getSdkStatsInstrumentationFlags = exports.setSdkStatsInstrumentation = exports.getSdkStatsFeatureFlags = exports.setSdkStatsFeature = exports.isSdkStatsEnabled = exports.APPLICATIONINSIGHTS_STATSBEAT_DISABLED_ALL = exports.SDKSTATS_DISABLED_ENV = exports.SdkStatsDistroFeature = void 0;
5
+ exports._resetNetworkStatsForTest = exports.shortHost = exports.drain = exports.classifyStatusCode = exports.recordDuration = exports.recordException = exports.recordThrottle = exports.recordRetry = exports.recordFailure = exports.recordSuccess = exports.NETWORK_METRIC_NAMES = exports.EXCEPTION_COUNT_NAME = exports.THROTTLE_COUNT_NAME = exports.RETRY_COUNT_NAME = exports.REQUEST_DURATION_NAME = exports.REQUEST_FAILURE_NAME = exports.REQUEST_SUCCESS_NAME = exports.SdkStatsManager = exports.FEATURE_TYPE_INSTRUMENTATION = exports.FEATURE_TYPE_FEATURE = exports.SdkStatsMetrics = exports.getSdkStatsShutdown = exports.setSdkStatsShutdown = exports.getSdkStatsInstrumentationFlags = exports.setSdkStatsInstrumentation = exports.getSdkStatsFeatureFlags = exports.setSdkStatsFeature = exports.isSdkStatsEnabled = exports.APPLICATIONINSIGHTS_STATSBEAT_DISABLED_ALL = exports.SDKSTATS_DISABLED_ENV = exports.SdkStatsDistroFeature = void 0;
6
6
  /**
7
- * SDK self-telemetry (SDKStats) for the Microsoft OpenTelemetry Distro.
7
+ * SDK self-telemetry (SDKStats) for `@microsoft/opentelemetry`.
8
8
  *
9
9
  * Backend-agnostic SDK health and usage telemetry that works regardless
10
10
  * of which export backends are enabled (Azure Monitor, OTLP, A365,
11
11
  * Console). Tracks:
12
12
  *
13
- * - **Features** — which distro features are active (A365, OTLP, console,
13
+ * - **Features** — which package features are active (A365, OTLP, console,
14
14
  * live metrics, browser SDK loader, ...)
15
15
  * - **Instrumentations** — which library instrumentations are enabled
16
16
  *
17
17
  * Mirrors `src/microsoft/opentelemetry/_sdkstats/__init__.py` from the
18
- * Python distro.
18
+ * Python implementation.
19
19
  */
20
20
  var state_js_1 = require("./state.js");
21
21
  Object.defineProperty(exports, "SdkStatsDistroFeature", { enumerable: true, get: function () { return state_js_1.SdkStatsDistroFeature; } });
@@ -36,13 +36,20 @@ var manager_js_1 = require("./manager.js");
36
36
  Object.defineProperty(exports, "SdkStatsManager", { enumerable: true, get: function () { return manager_js_1.SdkStatsManager; } });
37
37
  var networkStats_js_1 = require("./networkStats.js");
38
38
  Object.defineProperty(exports, "REQUEST_SUCCESS_NAME", { enumerable: true, get: function () { return networkStats_js_1.REQUEST_SUCCESS_NAME; } });
39
+ Object.defineProperty(exports, "REQUEST_FAILURE_NAME", { enumerable: true, get: function () { return networkStats_js_1.REQUEST_FAILURE_NAME; } });
40
+ Object.defineProperty(exports, "REQUEST_DURATION_NAME", { enumerable: true, get: function () { return networkStats_js_1.REQUEST_DURATION_NAME; } });
41
+ Object.defineProperty(exports, "RETRY_COUNT_NAME", { enumerable: true, get: function () { return networkStats_js_1.RETRY_COUNT_NAME; } });
42
+ Object.defineProperty(exports, "THROTTLE_COUNT_NAME", { enumerable: true, get: function () { return networkStats_js_1.THROTTLE_COUNT_NAME; } });
43
+ Object.defineProperty(exports, "EXCEPTION_COUNT_NAME", { enumerable: true, get: function () { return networkStats_js_1.EXCEPTION_COUNT_NAME; } });
39
44
  Object.defineProperty(exports, "NETWORK_METRIC_NAMES", { enumerable: true, get: function () { return networkStats_js_1.NETWORK_METRIC_NAMES; } });
40
45
  Object.defineProperty(exports, "recordSuccess", { enumerable: true, get: function () { return networkStats_js_1.recordSuccess; } });
46
+ Object.defineProperty(exports, "recordFailure", { enumerable: true, get: function () { return networkStats_js_1.recordFailure; } });
47
+ Object.defineProperty(exports, "recordRetry", { enumerable: true, get: function () { return networkStats_js_1.recordRetry; } });
48
+ Object.defineProperty(exports, "recordThrottle", { enumerable: true, get: function () { return networkStats_js_1.recordThrottle; } });
49
+ Object.defineProperty(exports, "recordException", { enumerable: true, get: function () { return networkStats_js_1.recordException; } });
50
+ Object.defineProperty(exports, "recordDuration", { enumerable: true, get: function () { return networkStats_js_1.recordDuration; } });
51
+ Object.defineProperty(exports, "classifyStatusCode", { enumerable: true, get: function () { return networkStats_js_1.classifyStatusCode; } });
41
52
  Object.defineProperty(exports, "drain", { enumerable: true, get: function () { return networkStats_js_1.drain; } });
42
53
  Object.defineProperty(exports, "shortHost", { enumerable: true, get: function () { return networkStats_js_1.shortHost; } });
43
54
  Object.defineProperty(exports, "_resetNetworkStatsForTest", { enumerable: true, get: function () { return networkStats_js_1._resetAllForTest; } });
44
- var otlpWrapper_js_1 = require("./otlpWrapper.js");
45
- Object.defineProperty(exports, "NetworkStatsSpanExporter", { enumerable: true, get: function () { return otlpWrapper_js_1.NetworkStatsSpanExporter; } });
46
- Object.defineProperty(exports, "NetworkStatsMetricExporter", { enumerable: true, get: function () { return otlpWrapper_js_1.NetworkStatsMetricExporter; } });
47
- Object.defineProperty(exports, "NetworkStatsLogExporter", { enumerable: true, get: function () { return otlpWrapper_js_1.NetworkStatsLogExporter; } });
48
55
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/sdkstats/index.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC;;;;;;;;;;;;;GAaG;AAEH,uCAWoB;AAVlB,iHAAA,qBAAqB,OAAA;AACrB,iHAAA,qBAAqB,OAAA;AACrB,sIAAA,0CAA0C,OAAA;AAC1C,6GAAA,iBAAiB,OAAA;AACjB,8GAAA,kBAAkB,OAAA;AAClB,mHAAA,uBAAuB,OAAA;AACvB,sHAAA,0BAA0B,OAAA;AAC1B,2HAAA,+BAA+B,OAAA;AAC/B,+GAAA,mBAAmB,OAAA;AACnB,+GAAA,mBAAmB,OAAA;AAGrB,2CAAmG;AAA1F,6GAAA,eAAe,OAAA;AAAE,kHAAA,oBAAoB,OAAA;AAAE,0HAAA,4BAA4B,OAAA;AAG5E,2CAA+C;AAAtC,6GAAA,eAAe,OAAA;AAExB,qDAO2B;AANzB,uHAAA,oBAAoB,OAAA;AACpB,uHAAA,oBAAoB,OAAA;AACpB,gHAAA,aAAa,OAAA;AACb,wGAAA,KAAK,OAAA;AACL,4GAAA,SAAS,OAAA;AACT,4HAAA,gBAAgB,OAA6B;AAI/C,mDAI0B;AAHxB,0HAAA,wBAAwB,OAAA;AACxB,4HAAA,0BAA0B,OAAA;AAC1B,yHAAA,uBAAuB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/sdkstats/index.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAElC;;;;;;;;;;;;;GAaG;AAEH,uCAWoB;AAVlB,iHAAA,qBAAqB,OAAA;AACrB,iHAAA,qBAAqB,OAAA;AACrB,sIAAA,0CAA0C,OAAA;AAC1C,6GAAA,iBAAiB,OAAA;AACjB,8GAAA,kBAAkB,OAAA;AAClB,mHAAA,uBAAuB,OAAA;AACvB,sHAAA,0BAA0B,OAAA;AAC1B,2HAAA,+BAA+B,OAAA;AAC/B,+GAAA,mBAAmB,OAAA;AACnB,+GAAA,mBAAmB,OAAA;AAGrB,2CAAmG;AAA1F,6GAAA,eAAe,OAAA;AAAE,kHAAA,oBAAoB,OAAA;AAAE,0HAAA,4BAA4B,OAAA;AAG5E,2CAA+C;AAAtC,6GAAA,eAAe,OAAA;AAExB,qDAkB2B;AAjBzB,uHAAA,oBAAoB,OAAA;AACpB,uHAAA,oBAAoB,OAAA;AACpB,wHAAA,qBAAqB,OAAA;AACrB,mHAAA,gBAAgB,OAAA;AAChB,sHAAA,mBAAmB,OAAA;AACnB,uHAAA,oBAAoB,OAAA;AACpB,uHAAA,oBAAoB,OAAA;AACpB,gHAAA,aAAa,OAAA;AACb,gHAAA,aAAa,OAAA;AACb,8GAAA,WAAW,OAAA;AACX,iHAAA,cAAc,OAAA;AACd,kHAAA,eAAe,OAAA;AACf,iHAAA,cAAc,OAAA;AACd,qHAAA,kBAAkB,OAAA;AAClB,wGAAA,KAAK,OAAA;AACL,4GAAA,SAAS,OAAA;AACT,4HAAA,gBAAgB,OAA6B"}
@@ -9,15 +9,15 @@ exports.SdkStatsManager = void 0;
9
9
  * pipeline.
10
10
  *
11
11
  * When the full Azure Monitor pipeline is enabled, the exporter package's
12
- * own SDKStats machinery handles SDKStats emission and the distro just
13
- * publishes its bits via the `AZURE_MONITOR_STATSBEAT_FEATURES` env var
12
+ * own SDKStats machinery handles SDKStats emission and we just
13
+ * publish our bits via the `AZURE_MONITOR_STATSBEAT_FEATURES` env var
14
14
  * for the exporter to read. For A365-only, OTLP-only, or Console-only
15
15
  * customers this manager spins up a standalone `MeterProvider` →
16
16
  * `AzureMonitorStatsbeatExporter` pipeline so feature/instrumentation
17
17
  * SDKStats are still collected.
18
18
  *
19
19
  * Mirrors `src/microsoft/opentelemetry/_sdkstats/_manager.py` from the
20
- * Python distro.
20
+ * Python implementation.
21
21
  */
22
22
  const sdk_metrics_1 = require("@opentelemetry/sdk-metrics");
23
23
  const resources_1 = require("@opentelemetry/resources");
@@ -44,7 +44,7 @@ const SDKSTATS_LONG_EXPORT_INTERVAL_ENV = "APPLICATIONINSIGHTS_STATS_LONG_EXPORT
44
44
  /**
45
45
  * Default short export interval (15 minutes) for network SDKStats
46
46
  * counters. Matches the Application Insights SDKStats short-interval
47
- * cadence used by the Python distro (`_get_stats_short_export_interval()`
47
+ * cadence used by the Python package (`_get_stats_short_export_interval()`
48
48
  * in `azure.monitor.opentelemetry.exporter.statsbeat._utils`).
49
49
  *
50
50
  * @internal
@@ -52,7 +52,7 @@ const SDKSTATS_LONG_EXPORT_INTERVAL_ENV = "APPLICATIONINSIGHTS_STATS_LONG_EXPORT
52
52
  const DEFAULT_SHORT_EXPORT_INTERVAL_MS = 15 * 60 * 1000;
53
53
  /**
54
54
  * Override env var: short (network) export interval in seconds.
55
- * Matches the Python distro env var name.
55
+ * Matches the Python package env var name.
56
56
  *
57
57
  * @internal
58
58
  */
@@ -62,7 +62,7 @@ const SDKSTATS_SHORT_EXPORT_INTERVAL_ENV = "APPLICATIONINSIGHTS_STATS_SHORT_EXPO
62
62
  * Insights connection string. When unset, SDKStats flow to the
63
63
  * Microsoft-owned SDKStats resource (`NON_EU_CONNECTION_STRING` in
64
64
  * the AzMon exporter package). Primarily useful for testing.
65
- * Matches the Python distro env var name.
65
+ * Matches the Python package env var name.
66
66
  *
67
67
  * @internal
68
68
  */
@@ -132,7 +132,7 @@ class SdkStatsManager {
132
132
  const AzureMonitorStatsbeatExporter = sdkStatsExporterModule.AzureMonitorStatsbeatExporter;
133
133
  const NON_EU_CONNECTION_STRING = sdkStatsTypesModule.NON_EU_CONNECTION_STRING;
134
134
  // Allow overriding the SDKStats ingestion target via env var,
135
- // matching the Python distro's APPLICATIONINSIGHTS_STATS_CONNECTION_STRING
135
+ // matching the Python package's APPLICATIONINSIGHTS_STATS_CONNECTION_STRING
136
136
  // hook. Primarily useful for testing — production should leave
137
137
  // this unset so SDKStats flows to the Microsoft-owned SDKStats
138
138
  // resource (NON_EU_CONNECTION_STRING).
@@ -1 +1 @@
1
- {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../src/sdkstats/manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../src/sdkstats/manager.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../../../src/sdkstats/metrics.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAOhE;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,IAAI,CAAC;AACtC,eAAO,MAAM,4BAA4B,IAAI,CAAC;AAuB9C;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,iEAAiE;IACjE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;;;;;;;OAWG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,aAAa,CAAC;IAClC;;;;OAIG;IACH,kBAAkB,EAAE,aAAa,CAAC;CACnC;AAED;;;;GAIG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAyB;gBAE9C,OAAO,EAAE,sBAAsB;IAC3C,2DAA2D;gBAEzD,aAAa,EAAE,aAAa,EAC5B,OAAO,CAAC,EAAE,IAAI,CAAC,sBAAsB,EAAE,oBAAoB,GAAG,mBAAmB,CAAC;IA4EpF,OAAO,CAAC,eAAe,CAcrB;IAEF,OAAO,CAAC,uBAAuB,CAU7B;IAEF,OAAO,CAAC,mBAAmB;CAY5B"}
1
+ {"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../../../src/sdkstats/metrics.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAgBhE;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB,IAAI,CAAC;AACtC,eAAO,MAAM,4BAA4B,IAAI,CAAC;AA+D9C;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,iEAAiE;IACjE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;;;;;;;OAWG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;;OAKG;IACH,iBAAiB,CAAC,EAAE,aAAa,CAAC;IAClC;;;;OAIG;IACH,kBAAkB,EAAE,aAAa,CAAC;CACnC;AAED;;;;GAIG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAyB;gBAE9C,OAAO,EAAE,sBAAsB;IAC3C,2DAA2D;gBAEzD,aAAa,EAAE,aAAa,EAC5B,OAAO,CAAC,EAAE,IAAI,CAAC,sBAAsB,EAAE,oBAAoB,GAAG,mBAAmB,CAAC;IA4EpF,OAAO,CAAC,eAAe,CAcrB;IAEF,OAAO,CAAC,uBAAuB,CAU7B;IAEF,OAAO,CAAC,mBAAmB;CAe5B"}
@@ -14,7 +14,7 @@ exports.SdkStatsMetrics = exports.FEATURE_TYPE_INSTRUMENTATION = exports.FEATURE
14
14
  * caller-supplied `MeterProvider`.
15
15
  *
16
16
  * Mirrors `src/microsoft/opentelemetry/_sdkstats/_metrics.py` from the
17
- * Python distro.
17
+ * Python implementation.
18
18
  */
19
19
  const node_os_1 = __importDefault(require("node:os"));
20
20
  const types_js_1 = require("../types.js");
@@ -36,6 +36,37 @@ const NETWORK_GAUGE_SPECS = [
36
36
  metric: networkStats_js_1.REQUEST_SUCCESS_NAME,
37
37
  unit: "count",
38
38
  description: "Number of successful HTTP exports per endpoint",
39
+ keyAttributes: ["endpoint", "host"],
40
+ },
41
+ {
42
+ metric: networkStats_js_1.REQUEST_FAILURE_NAME,
43
+ unit: "count",
44
+ description: "Number of failed HTTP exports per endpoint, broken down by status code",
45
+ keyAttributes: ["endpoint", "host", "statusCode"],
46
+ },
47
+ {
48
+ metric: networkStats_js_1.REQUEST_DURATION_NAME,
49
+ unit: "ms",
50
+ description: "Average HTTP export request duration per endpoint",
51
+ keyAttributes: ["endpoint", "host"],
52
+ },
53
+ {
54
+ metric: networkStats_js_1.RETRY_COUNT_NAME,
55
+ unit: "count",
56
+ description: "Number of HTTP exports that returned a retryable status code",
57
+ keyAttributes: ["endpoint", "host", "statusCode"],
58
+ },
59
+ {
60
+ metric: networkStats_js_1.THROTTLE_COUNT_NAME,
61
+ unit: "count",
62
+ description: "Number of HTTP exports that returned a throttling status code (402/439)",
63
+ keyAttributes: ["endpoint", "host", "statusCode"],
64
+ },
65
+ {
66
+ metric: networkStats_js_1.EXCEPTION_COUNT_NAME,
67
+ unit: "count",
68
+ description: "Number of HTTP exports that raised an exception (no HTTP response)",
69
+ keyAttributes: ["endpoint", "host", "exceptionType"],
39
70
  },
40
71
  ];
41
72
  /**
@@ -83,7 +114,7 @@ class SdkStatsMetrics {
83
114
  };
84
115
  // Feature / instrumentation bitmask gauges are skipped when running
85
116
  // alongside the Azure Monitor exporter's own SDKStats — that pipeline
86
- // already emits them (with our distro bits bridged in via
117
+ // already emits them (with our feature bits bridged in via
87
118
  // `_bridge_sdkstats_to_azure_monitor`) and would collide with these.
88
119
  // These gauges are registered on the long-interval MeterProvider.
89
120
  if (!networkOnly && longMeterProvider) {
@@ -139,11 +170,14 @@ class SdkStatsMetrics {
139
170
  makeNetworkCallback(spec) {
140
171
  return (result) => {
141
172
  for (const [key, value] of (0, networkStats_js_1.drain)(spec.metric)) {
142
- const attrs = {
143
- ...this.commonAttributes,
144
- endpoint: key[0],
145
- host: key[1],
146
- };
173
+ const attrs = { ...this.commonAttributes };
174
+ for (let i = 0; i < spec.keyAttributes.length; i++) {
175
+ const name = spec.keyAttributes[i];
176
+ const part = key[i];
177
+ if (part !== undefined) {
178
+ attrs[name] = part;
179
+ }
180
+ }
147
181
  result.observe(value, attrs);
148
182
  }
149
183
  };
@@ -1 +1 @@
1
- {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../../src/sdkstats/metrics.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../../src/sdkstats/metrics.ts"],"names":[],"mappings":"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"}
@@ -1,33 +1,50 @@
1
1
  /**
2
2
  * Network SDKStats accumulator for SDK self-telemetry.
3
3
  *
4
- * Per-export success counts for telemetry exporters. Exporters call
5
- * {@link recordSuccess} after each successful transmit; the
6
- * {@link SdkStatsMetrics} observable-gauge callbacks drain the
7
- * accumulated counts on each export interval.
4
+ * Per-export counters and timings for telemetry exporters. Exporters call
5
+ * the {@link recordSuccess} / {@link recordFailure} / {@link recordRetry} /
6
+ * {@link recordThrottle} / {@link recordException} / {@link recordDuration}
7
+ * functions after each transmit; the {@link SdkStatsMetrics}
8
+ * observable-gauge callbacks drain the accumulated counts on each export
9
+ * interval.
8
10
  *
9
11
  * Mirrors `src/microsoft/opentelemetry/_sdkstats/_utils.py` from the Python
10
- * distro (microsoft/opentelemetry-distro-python#144).
12
+ * implementation.
11
13
  */
12
- export declare const REQUEST_SUCCESS_NAME = "Request_Success_Count";
13
- /**
14
- * Names of registered network SDKStats metrics, in registration order.
15
- *
16
- * @internal
17
- */
18
- export declare const NETWORK_METRIC_NAMES: readonly ["Request_Success_Count"];
19
- export type NetworkMetricName = (typeof NETWORK_METRIC_NAMES)[number];
14
+ import { REQUEST_SUCCESS_NAME, REQUEST_FAILURE_NAME, REQUEST_DURATION_NAME, RETRY_COUNT_NAME, THROTTLE_COUNT_NAME, EXCEPTION_COUNT_NAME, NETWORK_METRIC_NAMES, type NetworkMetricName } from "./constants.js";
15
+ export { REQUEST_SUCCESS_NAME, REQUEST_FAILURE_NAME, REQUEST_DURATION_NAME, RETRY_COUNT_NAME, THROTTLE_COUNT_NAME, EXCEPTION_COUNT_NAME, NETWORK_METRIC_NAMES, };
16
+ export type { NetworkMetricName };
20
17
  /**
21
18
  * Composite key for an aggregated network SDKStats counter.
22
19
  *
23
20
  * Per the Application Insights SDKStats spec the per-key dimensions are
24
- * `endpoint` (category, e.g. "otlp", "a365") and `host` (stamp-specific
25
- * region or hostname).
21
+ * `endpoint` (category, e.g. "a365") and `host` (stamp-specific
22
+ * region or hostname), optionally followed by a third dimension —
23
+ * `statusCode` (failure/retry/throttle) or `exceptionType` (exception).
26
24
  *
27
25
  * @internal
28
26
  */
29
- export type NetworkKey = readonly [string, string];
27
+ export type NetworkKey = readonly string[];
30
28
  export declare function recordSuccess(endpoint: string, host: string): void;
29
+ export declare function recordFailure(endpoint: string, host: string, statusCode: number | string): void;
30
+ export declare function recordRetry(endpoint: string, host: string, statusCode: number | string): void;
31
+ export declare function recordThrottle(endpoint: string, host: string, statusCode: number | string): void;
32
+ export declare function recordException(endpoint: string, host: string, exceptionType: string): void;
33
+ export declare function recordDuration(endpoint: string, host: string, durationMs: number): void;
34
+ /**
35
+ * Classification of an HTTP status code per the Application Insights
36
+ * SDKStats Network specification.
37
+ *
38
+ * - `success`: 200 (and 206 if all envelopes were accepted — handled by
39
+ * the caller, this helper only returns the bucket for a single response
40
+ * code).
41
+ * - `retry`: 401, 403, 408, 429, 500, 502, 503, 504.
42
+ * - `throttle`: 402, 439.
43
+ * - `failure`: everything else (excluding redirects 307/308 which are
44
+ * followed transparently and never reported).
45
+ */
46
+ export type StatusCodeKind = "success" | "retry" | "throttle" | "failure" | "ignored";
47
+ export declare function classifyStatusCode(status: number): StatusCodeKind;
31
48
  /**
32
49
  * Compute the stamp-specific short host for the SDKStats `host` dimension.
33
50
  *
@@ -48,6 +65,11 @@ export declare function shortHost(input: string): string;
48
65
  *
49
66
  * Used by the observable-gauge callbacks so each observation reports only
50
67
  * the delta accumulated during the export interval.
68
+ *
69
+ * For {@link REQUEST_DURATION_NAME} the reported value is the average of
70
+ * all durations recorded since the previous drain, per the spec
71
+ * ("Request_Duration ... avg request duration during the scheduled
72
+ * interval").
51
73
  */
52
74
  export declare function drain(metric: NetworkMetricName): Map<NetworkKey, number>;
53
75
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"networkStats.d.ts","sourceRoot":"","sources":["../../../src/sdkstats/networkStats.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;GAUG;AASH,eAAO,MAAM,oBAAoB,0BAA0B,CAAC;AAE5D;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,oCAAkC,CAAC;AAEpE,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEtE;;;;;;;;GAQG;AACH,MAAM,MAAM,UAAU,GAAG,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AA4BnD,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAElE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAwB/C;AAED;;;;;GAKG;AACH,wBAAgB,KAAK,CAAC,MAAM,EAAE,iBAAiB,GAAG,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAQxE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAIvC"}
1
+ {"version":3,"file":"networkStats.d.ts","sourceRoot":"","sources":["../../../src/sdkstats/networkStats.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;GAYG;AAOH,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,EAIpB,KAAK,iBAAiB,EACvB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,EAChB,mBAAmB,EACnB,oBAAoB,EACpB,oBAAoB,GACrB,CAAC;AACF,YAAY,EAAE,iBAAiB,EAAE,CAAC;AAElC;;;;;;;;;GASG;AACH,MAAM,MAAM,UAAU,GAAG,SAAS,MAAM,EAAE,CAAC;AA0C3C,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAElE;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAE/F;AAED,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAE7F;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAEhG;AAED,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,IAAI,CAE3F;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAUvF;AAED;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,OAAO,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,CAAC;AAEtF,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,cAAc,CAMjE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAwB/C;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,KAAK,CAAC,MAAM,EAAE,iBAAiB,GAAG,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAgBxE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAQvC"}
@@ -2,51 +2,61 @@
2
2
  // Copyright (c) Microsoft Corporation.
3
3
  // Licensed under the MIT License.
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
- exports.NETWORK_METRIC_NAMES = exports.REQUEST_SUCCESS_NAME = void 0;
5
+ exports.NETWORK_METRIC_NAMES = exports.EXCEPTION_COUNT_NAME = exports.THROTTLE_COUNT_NAME = exports.RETRY_COUNT_NAME = exports.REQUEST_DURATION_NAME = exports.REQUEST_FAILURE_NAME = exports.REQUEST_SUCCESS_NAME = void 0;
6
6
  exports.recordSuccess = recordSuccess;
7
+ exports.recordFailure = recordFailure;
8
+ exports.recordRetry = recordRetry;
9
+ exports.recordThrottle = recordThrottle;
10
+ exports.recordException = recordException;
11
+ exports.recordDuration = recordDuration;
12
+ exports.classifyStatusCode = classifyStatusCode;
7
13
  exports.shortHost = shortHost;
8
14
  exports.drain = drain;
9
15
  exports._resetAllForTest = _resetAllForTest;
10
16
  /**
11
17
  * Network SDKStats accumulator for SDK self-telemetry.
12
18
  *
13
- * Per-export success counts for telemetry exporters. Exporters call
14
- * {@link recordSuccess} after each successful transmit; the
15
- * {@link SdkStatsMetrics} observable-gauge callbacks drain the
16
- * accumulated counts on each export interval.
19
+ * Per-export counters and timings for telemetry exporters. Exporters call
20
+ * the {@link recordSuccess} / {@link recordFailure} / {@link recordRetry} /
21
+ * {@link recordThrottle} / {@link recordException} / {@link recordDuration}
22
+ * functions after each transmit; the {@link SdkStatsMetrics}
23
+ * observable-gauge callbacks drain the accumulated counts on each export
24
+ * interval.
17
25
  *
18
26
  * Mirrors `src/microsoft/opentelemetry/_sdkstats/_utils.py` from the Python
19
- * distro (microsoft/opentelemetry-distro-python#144).
27
+ * implementation.
20
28
  */
21
- // Metric names must match the AzMon SDKStats backend's recognized
22
- // schema (see `StatsbeatCounter` enum in
23
- // `@azure/monitor-opentelemetry-exporter/dist/esm/export/statsbeat/types.js`).
24
- // Sending envelopes under any other name returns HTTP 200 but the
25
- // backend doesn't index them, so they're invisible in the SDKStats
26
- // dashboards. The constants below intentionally match the wire-format
27
- // names — do NOT rename them to lowercase.
28
- exports.REQUEST_SUCCESS_NAME = "Request_Success_Count";
29
- /**
30
- * Names of registered network SDKStats metrics, in registration order.
31
- *
32
- * @internal
33
- */
34
- exports.NETWORK_METRIC_NAMES = [exports.REQUEST_SUCCESS_NAME];
35
- // Single-threaded JS execution → no lock needed (Python uses one because of
36
- // the GIL + threads; Node.js doesn't share JS objects across worker threads).
29
+ // Wire-format metric names and the set of HTTP status-code buckets used
30
+ // below live in `./constants.js` so the A365 exporter wrapper can
31
+ // share a single source of truth. Re-exported here for backwards
32
+ // compatibility with existing imports of these symbols from
33
+ // `./networkStats.js`.
34
+ const constants_js_1 = require("./constants.js");
35
+ Object.defineProperty(exports, "REQUEST_SUCCESS_NAME", { enumerable: true, get: function () { return constants_js_1.REQUEST_SUCCESS_NAME; } });
36
+ Object.defineProperty(exports, "REQUEST_FAILURE_NAME", { enumerable: true, get: function () { return constants_js_1.REQUEST_FAILURE_NAME; } });
37
+ Object.defineProperty(exports, "REQUEST_DURATION_NAME", { enumerable: true, get: function () { return constants_js_1.REQUEST_DURATION_NAME; } });
38
+ Object.defineProperty(exports, "RETRY_COUNT_NAME", { enumerable: true, get: function () { return constants_js_1.RETRY_COUNT_NAME; } });
39
+ Object.defineProperty(exports, "THROTTLE_COUNT_NAME", { enumerable: true, get: function () { return constants_js_1.THROTTLE_COUNT_NAME; } });
40
+ Object.defineProperty(exports, "EXCEPTION_COUNT_NAME", { enumerable: true, get: function () { return constants_js_1.EXCEPTION_COUNT_NAME; } });
41
+ Object.defineProperty(exports, "NETWORK_METRIC_NAMES", { enumerable: true, get: function () { return constants_js_1.NETWORK_METRIC_NAMES; } });
37
42
  const REQUESTS_MAP = {
38
- [exports.REQUEST_SUCCESS_NAME]: new Map(),
43
+ [constants_js_1.REQUEST_SUCCESS_NAME]: new Map(),
44
+ [constants_js_1.REQUEST_FAILURE_NAME]: new Map(),
45
+ [constants_js_1.RETRY_COUNT_NAME]: new Map(),
46
+ [constants_js_1.THROTTLE_COUNT_NAME]: new Map(),
47
+ [constants_js_1.EXCEPTION_COUNT_NAME]: new Map(),
39
48
  };
49
+ const DURATION_MAP = new Map();
40
50
  // `Map` keys are compared by identity for arrays/objects, so we serialize
41
51
  // the key tuple to a string. The `\u0000` separator can't appear in a URL
42
- // hostname or HTTP status string, so this is unambiguous.
52
+ // hostname, HTTP status code, or exception-type string, so this is
53
+ // unambiguous.
43
54
  const KEY_SEPARATOR = "\u0000";
44
55
  function encodeKey(key) {
45
56
  return key.join(KEY_SEPARATOR);
46
57
  }
47
58
  function decodeKey(encoded) {
48
- const parts = encoded.split(KEY_SEPARATOR);
49
- return [parts[0], parts[1]];
59
+ return encoded.split(KEY_SEPARATOR);
50
60
  }
51
61
  function bump(metric, key, value = 1) {
52
62
  const bucket = REQUESTS_MAP[metric];
@@ -54,7 +64,43 @@ function bump(metric, key, value = 1) {
54
64
  bucket.set(encoded, (bucket.get(encoded) ?? 0) + value);
55
65
  }
56
66
  function recordSuccess(endpoint, host) {
57
- bump(exports.REQUEST_SUCCESS_NAME, [endpoint, host]);
67
+ bump(constants_js_1.REQUEST_SUCCESS_NAME, [endpoint, host]);
68
+ }
69
+ function recordFailure(endpoint, host, statusCode) {
70
+ bump(constants_js_1.REQUEST_FAILURE_NAME, [endpoint, host, String(statusCode)]);
71
+ }
72
+ function recordRetry(endpoint, host, statusCode) {
73
+ bump(constants_js_1.RETRY_COUNT_NAME, [endpoint, host, String(statusCode)]);
74
+ }
75
+ function recordThrottle(endpoint, host, statusCode) {
76
+ bump(constants_js_1.THROTTLE_COUNT_NAME, [endpoint, host, String(statusCode)]);
77
+ }
78
+ function recordException(endpoint, host, exceptionType) {
79
+ bump(constants_js_1.EXCEPTION_COUNT_NAME, [endpoint, host, exceptionType]);
80
+ }
81
+ function recordDuration(endpoint, host, durationMs) {
82
+ if (!Number.isFinite(durationMs) || durationMs < 0)
83
+ return;
84
+ const encoded = encodeKey([endpoint, host]);
85
+ const existing = DURATION_MAP.get(encoded);
86
+ if (existing) {
87
+ existing.sum += durationMs;
88
+ existing.count += 1;
89
+ }
90
+ else {
91
+ DURATION_MAP.set(encoded, { sum: durationMs, count: 1 });
92
+ }
93
+ }
94
+ function classifyStatusCode(status) {
95
+ if (status >= 200 && status < 300 && status !== 206)
96
+ return "success";
97
+ if (constants_js_1.IGNORED_STATUSES.has(status))
98
+ return "ignored";
99
+ if (constants_js_1.THROTTLE_STATUSES.has(status))
100
+ return "throttle";
101
+ if (constants_js_1.RETRY_STATUSES.has(status))
102
+ return "retry";
103
+ return "failure";
58
104
  }
59
105
  /**
60
106
  * Compute the stamp-specific short host for the SDKStats `host` dimension.
@@ -105,10 +151,24 @@ function shortHost(input) {
105
151
  *
106
152
  * Used by the observable-gauge callbacks so each observation reports only
107
153
  * the delta accumulated during the export interval.
154
+ *
155
+ * For {@link REQUEST_DURATION_NAME} the reported value is the average of
156
+ * all durations recorded since the previous drain, per the spec
157
+ * ("Request_Duration ... avg request duration during the scheduled
158
+ * interval").
108
159
  */
109
160
  function drain(metric) {
110
- const bucket = REQUESTS_MAP[metric];
111
161
  const snapshot = new Map();
162
+ if (metric === constants_js_1.REQUEST_DURATION_NAME) {
163
+ for (const [encoded, acc] of DURATION_MAP) {
164
+ if (acc.count === 0)
165
+ continue;
166
+ snapshot.set(decodeKey(encoded), acc.sum / acc.count);
167
+ }
168
+ DURATION_MAP.clear();
169
+ return snapshot;
170
+ }
171
+ const bucket = REQUESTS_MAP[metric];
112
172
  for (const [encoded, value] of bucket) {
113
173
  snapshot.set(decodeKey(encoded), value);
114
174
  }
@@ -119,8 +179,13 @@ function drain(metric) {
119
179
  * @internal Test-only: clear all network SDKStats counters.
120
180
  */
121
181
  function _resetAllForTest() {
122
- for (const name of exports.NETWORK_METRIC_NAMES) {
123
- REQUESTS_MAP[name].clear();
182
+ for (const name of constants_js_1.NETWORK_METRIC_NAMES) {
183
+ if (name === constants_js_1.REQUEST_DURATION_NAME) {
184
+ DURATION_MAP.clear();
185
+ }
186
+ else {
187
+ REQUESTS_MAP[name].clear();
188
+ }
124
189
  }
125
190
  }
126
191
  //# sourceMappingURL=networkStats.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"networkStats.js","sourceRoot":"","sources":["../../../src/sdkstats/networkStats.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"networkStats.js","sourceRoot":"","sources":["../../../src/sdkstats/networkStats.ts"],"names":[],"mappings":"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"}
@@ -4,19 +4,19 @@
4
4
  * Feature and instrumentation flags are stored as bitmasks so they can be
5
5
  * combined and reported efficiently. The bitmask values are intentionally
6
6
  * compatible with the Azure Monitor Exporter SDKStats encoding so that
7
- * Azure Monitor consumers see no behavioural change when the distro
8
- * bridges its bits into the exporter's existing pipeline.
7
+ * Azure Monitor consumers see no behavioural change when our bits are
8
+ * bridged into the exporter's existing pipeline.
9
9
  *
10
10
  * Mirrors `src/microsoft/opentelemetry/_sdkstats/_state.py` from the
11
- * Python distro (microsoft/opentelemetry-distro-python#89).
11
+ * Python implementation (microsoft/opentelemetry-distro-python#89).
12
12
  */
13
13
  import { SdkStatsFeature, SdkStatsInstrumentation } from "../types.js";
14
14
  /**
15
- * Distro-specific feature flags, in addition to the
15
+ * Microsoft OpenTelemetry specific feature flags, in addition to the
16
16
  * {@link SdkStatsFeature} flags shared with the Azure Monitor exporter.
17
17
  *
18
18
  * These bit values intentionally start above the values used by
19
- * {@link SdkStatsFeature} so that distro bits and exporter bits can be
19
+ * {@link SdkStatsFeature} so that the bits and exporter bits can be
20
20
  * OR-combined into a single 64-bit mask without collision.
21
21
  */
22
22
  export declare enum SdkStatsDistroFeature {
@@ -12,11 +12,11 @@ exports.setSdkStatsShutdown = setSdkStatsShutdown;
12
12
  exports.getSdkStatsShutdown = getSdkStatsShutdown;
13
13
  exports._resetSdkStatsStateForTest = _resetSdkStatsStateForTest;
14
14
  /**
15
- * Distro-specific feature flags, in addition to the
15
+ * Microsoft OpenTelemetry specific feature flags, in addition to the
16
16
  * {@link SdkStatsFeature} flags shared with the Azure Monitor exporter.
17
17
  *
18
18
  * These bit values intentionally start above the values used by
19
- * {@link SdkStatsFeature} so that distro bits and exporter bits can be
19
+ * {@link SdkStatsFeature} so that the bits and exporter bits can be
20
20
  * OR-combined into a single 64-bit mask without collision.
21
21
  */
22
22
  var SdkStatsDistroFeature;
@@ -59,7 +59,7 @@ function isSdkStatsEnabled() {
59
59
  }
60
60
  // ---------------------------------------------------------------------------
61
61
  // Mutable global state — kept module-local to ensure a single source of truth
62
- // across the distro process. Node.js executes JS in a single thread (modulo
62
+ // across the process. Node.js executes JS in a single thread (modulo
63
63
  // worker_threads), so no explicit locking is needed.
64
64
  // ---------------------------------------------------------------------------
65
65
  let _featureBits = 0;
@@ -1 +1 @@
1
- {"version":3,"file":"state.js","sourceRoot":"","sources":["../../../src/sdkstats/state.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAwDlC,8CASC;AAYD,gDAEC;AAED,0DAEC;AAED,gEAEC;AAED,0EAEC;AAED,kDAEC;AAED,kDAEC;AAKD,gEAIC;AA3FD;;;;;;;GAOG;AACH,IAAY,qBAKX;AALD,WAAY,qBAAqB;IAC/B,iEAAQ,CAAA;IACR,iFAAiB,CAAA;IACjB,kFAAkB,CAAA;IAClB,wFAAqB,CAAA;AACvB,CAAC,EALW,qBAAqB,qCAArB,qBAAqB,QAKhC;AAED;;;;;;;GAOG;AACU,QAAA,qBAAqB,GAAG,kCAAkC,CAAC;AAExE;;;;;GAKG;AACU,QAAA,0CAA0C,GACrD,4CAA4C,CAAC;AAE/C,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;AAE1D;;GAEG;AACH,SAAgB,iBAAiB;IAC/B,KAAK,MAAM,MAAM,IAAI,CAAC,6BAAqB,EAAE,kDAA0C,CAAC,EAAE,CAAC;QACzF,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,GAAG;YAAE,SAAS;QACnB,IAAI,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;YAChD,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,8EAA8E;AAC9E,8EAA8E;AAC9E,4EAA4E;AAC5E,qDAAqD;AACrD,8EAA8E;AAE9E,IAAI,YAAY,GAAG,CAAC,CAAC;AACrB,IAAI,oBAAoB,GAAG,CAAC,CAAC;AAC7B,IAAI,SAAS,GAAG,KAAK,CAAC;AAEtB,SAAgB,kBAAkB,CAAC,IAA6C;IAC9E,YAAY,IAAI,IAAI,CAAC;AACvB,CAAC;AAED,SAAgB,uBAAuB;IACrC,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,SAAgB,0BAA0B,CAAC,IAA6B;IACtE,oBAAoB,IAAI,IAAI,CAAC;AAC/B,CAAC;AAED,SAAgB,+BAA+B;IAC7C,OAAO,oBAAoB,CAAC;AAC9B,CAAC;AAED,SAAgB,mBAAmB,CAAC,QAAQ,GAAG,IAAI;IACjD,SAAS,GAAG,QAAQ,CAAC;AACvB,CAAC;AAED,SAAgB,mBAAmB;IACjC,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,SAAgB,0BAA0B;IACxC,YAAY,GAAG,CAAC,CAAC;IACjB,oBAAoB,GAAG,CAAC,CAAC;IACzB,SAAS,GAAG,KAAK,CAAC;AACpB,CAAC"}
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../../../src/sdkstats/state.ts"],"names":[],"mappings":";AAAA,uCAAuC;AACvC,kCAAkC;;;AAwDlC,8CASC;AAYD,gDAEC;AAED,0DAEC;AAED,gEAEC;AAED,0EAEC;AAED,kDAEC;AAED,kDAEC;AAKD,gEAIC;AA3FD;;;;;;;GAOG;AACH,IAAY,qBAKX;AALD,WAAY,qBAAqB;IAC/B,iEAAQ,CAAA;IACR,iFAAiB,CAAA;IACjB,kFAAkB,CAAA;IAClB,wFAAqB,CAAA;AACvB,CAAC,EALW,qBAAqB,qCAArB,qBAAqB,QAKhC;AAED;;;;;;;GAOG;AACU,QAAA,qBAAqB,GAAG,kCAAkC,CAAC;AAExE;;;;;GAKG;AACU,QAAA,0CAA0C,GACrD,4CAA4C,CAAC;AAE/C,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;AAE1D;;GAEG;AACH,SAAgB,iBAAiB;IAC/B,KAAK,MAAM,MAAM,IAAI,CAAC,6BAAqB,EAAE,kDAA0C,CAAC,EAAE,CAAC;QACzF,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC,GAAG;YAAE,SAAS;QACnB,IAAI,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;YAChD,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,8EAA8E;AAC9E,8EAA8E;AAC9E,qEAAqE;AACrE,qDAAqD;AACrD,8EAA8E;AAE9E,IAAI,YAAY,GAAG,CAAC,CAAC;AACrB,IAAI,oBAAoB,GAAG,CAAC,CAAC;AAC7B,IAAI,SAAS,GAAG,KAAK,CAAC;AAEtB,SAAgB,kBAAkB,CAAC,IAA6C;IAC9E,YAAY,IAAI,IAAI,CAAC;AACvB,CAAC;AAED,SAAgB,uBAAuB;IACrC,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,SAAgB,0BAA0B,CAAC,IAA6B;IACtE,oBAAoB,IAAI,IAAI,CAAC;AAC/B,CAAC;AAED,SAAgB,+BAA+B;IAC7C,OAAO,oBAAoB,CAAC;AAC9B,CAAC;AAED,SAAgB,mBAAmB,CAAC,QAAQ,GAAG,IAAI;IACjD,SAAS,GAAG,QAAQ,CAAC;AACvB,CAAC;AAED,SAAgB,mBAAmB;IACjC,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,SAAgB,0BAA0B;IACxC,YAAY,GAAG,CAAC,CAAC;IACjB,oBAAoB,GAAG,CAAC,CAAC;IACzB,SAAS,GAAG,KAAK,CAAC;AACpB,CAAC"}
@@ -37,7 +37,7 @@ export declare class InternalConfig {
37
37
  browserSdkLoaderOptions: BrowserSdkLoaderOptions;
38
38
  /**
39
39
  * Initializes a new instance of InternalConfig.
40
- * Accepts MicrosoftOpenTelemetryOptions (distro-level) — global options come
40
+ * Accepts MicrosoftOpenTelemetryOptions (top-level) — global options come
41
41
  * from the top level, Azure Monitor-specific options from the azureMonitor key.
42
42
  */
43
43
  constructor(options?: MicrosoftOpenTelemetryOptions);
@@ -45,7 +45,7 @@ class InternalConfig {
45
45
  browserSdkLoaderOptions;
46
46
  /**
47
47
  * Initializes a new instance of InternalConfig.
48
- * Accepts MicrosoftOpenTelemetryOptions (distro-level) — global options come
48
+ * Accepts MicrosoftOpenTelemetryOptions (top-level) — global options come
49
49
  * from the top level, Azure Monitor-specific options from the azureMonitor key.
50
50
  */
51
51
  constructor(options) {
@@ -19,6 +19,7 @@ export declare class DiagFileConsoleLogger implements DiagLogger {
19
19
  debug(message?: any, ...args: any[]): void;
20
20
  verbose(message?: any, ...args: any[]): void;
21
21
  logMessage(message?: any, ...optionalParams: any[]): Promise<void>;
22
+ private _writeToConsole;
22
23
  /**
23
24
  * Checks if the warning message should be filtered out to avoid showing
24
25
  * non-actionable warnings to customers