@microsoft/opentelemetry 1.0.2 → 1.2.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 (404) hide show
  1. package/README.md +74 -71
  2. package/dist/commonjs/a365/configuration/A365Configuration.d.ts +3 -0
  3. package/dist/commonjs/a365/configuration/A365Configuration.d.ts.map +1 -1
  4. package/dist/commonjs/a365/configuration/A365Configuration.js +8 -3
  5. package/dist/commonjs/a365/configuration/A365Configuration.js.map +1 -1
  6. package/dist/commonjs/a365/configuration/A365ConfigurationOptions.d.ts +10 -1
  7. package/dist/commonjs/a365/configuration/A365ConfigurationOptions.d.ts.map +1 -1
  8. package/dist/commonjs/a365/constants.d.ts +134 -3
  9. package/dist/commonjs/a365/constants.d.ts.map +1 -1
  10. package/dist/commonjs/a365/constants.js +141 -2
  11. package/dist/commonjs/a365/constants.js.map +1 -1
  12. package/dist/commonjs/a365/contracts.d.ts +246 -8
  13. package/dist/commonjs/a365/contracts.d.ts.map +1 -1
  14. package/dist/commonjs/a365/contracts.js +81 -3
  15. package/dist/commonjs/a365/contracts.js.map +1 -1
  16. package/dist/commonjs/a365/exporter/Agent365Exporter.d.ts +33 -1
  17. package/dist/commonjs/a365/exporter/Agent365Exporter.d.ts.map +1 -1
  18. package/dist/commonjs/a365/exporter/Agent365Exporter.js +134 -3
  19. package/dist/commonjs/a365/exporter/Agent365Exporter.js.map +1 -1
  20. package/dist/commonjs/a365/exporter/Agent365ExporterOptions.d.ts +28 -1
  21. package/dist/commonjs/a365/exporter/Agent365ExporterOptions.d.ts.map +1 -1
  22. package/dist/commonjs/a365/exporter/Agent365ExporterOptions.js +2 -0
  23. package/dist/commonjs/a365/exporter/Agent365ExporterOptions.js.map +1 -1
  24. package/dist/commonjs/a365/exporter/AgentIdentity.d.ts +17 -0
  25. package/dist/commonjs/a365/exporter/AgentIdentity.d.ts.map +1 -0
  26. package/dist/commonjs/a365/exporter/AgentIdentity.js +5 -0
  27. package/dist/commonjs/a365/exporter/AgentIdentity.js.map +1 -0
  28. package/dist/commonjs/a365/exporter/ExporterEventNames.d.ts +3 -0
  29. package/dist/commonjs/a365/exporter/ExporterEventNames.d.ts.map +1 -1
  30. package/dist/commonjs/a365/exporter/ExporterEventNames.js +3 -0
  31. package/dist/commonjs/a365/exporter/ExporterEventNames.js.map +1 -1
  32. package/dist/commonjs/a365/exporter/TokenResolverContext.d.ts +18 -0
  33. package/dist/commonjs/a365/exporter/TokenResolverContext.d.ts.map +1 -0
  34. package/dist/commonjs/a365/exporter/TokenResolverContext.js +5 -0
  35. package/dist/commonjs/a365/exporter/TokenResolverContext.js.map +1 -0
  36. package/dist/commonjs/a365/exporter/index.d.ts +3 -1
  37. package/dist/commonjs/a365/exporter/index.d.ts.map +1 -1
  38. package/dist/commonjs/a365/exporter/index.js.map +1 -1
  39. package/dist/commonjs/a365/exporter/utils.d.ts +5 -0
  40. package/dist/commonjs/a365/exporter/utils.d.ts.map +1 -1
  41. package/dist/commonjs/a365/exporter/utils.js +23 -25
  42. package/dist/commonjs/a365/exporter/utils.js.map +1 -1
  43. package/dist/commonjs/a365/hosting/agenticTokenCache.d.ts +24 -0
  44. package/dist/commonjs/a365/hosting/agenticTokenCache.d.ts.map +1 -1
  45. package/dist/commonjs/a365/hosting/agenticTokenCache.js +40 -3
  46. package/dist/commonjs/a365/hosting/agenticTokenCache.js.map +1 -1
  47. package/dist/commonjs/a365/hosting/index.d.ts +1 -1
  48. package/dist/commonjs/a365/hosting/index.d.ts.map +1 -1
  49. package/dist/commonjs/a365/hosting/index.js +2 -1
  50. package/dist/commonjs/a365/hosting/index.js.map +1 -1
  51. package/dist/commonjs/a365/hosting/scopeUtils.js +1 -1
  52. package/dist/commonjs/a365/hosting/scopeUtils.js.map +1 -1
  53. package/dist/commonjs/a365/hosting/turnContextUtils.d.ts +6 -1
  54. package/dist/commonjs/a365/hosting/turnContextUtils.d.ts.map +1 -1
  55. package/dist/commonjs/a365/hosting/turnContextUtils.js +31 -5
  56. package/dist/commonjs/a365/hosting/turnContextUtils.js.map +1 -1
  57. package/dist/commonjs/a365/hosting/types.d.ts +48 -2
  58. package/dist/commonjs/a365/hosting/types.d.ts.map +1 -1
  59. package/dist/commonjs/a365/index.d.ts +5 -5
  60. package/dist/commonjs/a365/index.d.ts.map +1 -1
  61. package/dist/commonjs/a365/index.js +8 -2
  62. package/dist/commonjs/a365/index.js.map +1 -1
  63. package/dist/commonjs/a365/message-utils.d.ts +10 -5
  64. package/dist/commonjs/a365/message-utils.d.ts.map +1 -1
  65. package/dist/commonjs/a365/message-utils.js +27 -24
  66. package/dist/commonjs/a365/message-utils.js.map +1 -1
  67. package/dist/commonjs/a365/processors/A365SpanProcessor.d.ts +3 -0
  68. package/dist/commonjs/a365/processors/A365SpanProcessor.d.ts.map +1 -1
  69. package/dist/commonjs/a365/processors/A365SpanProcessor.js +12 -4
  70. package/dist/commonjs/a365/processors/A365SpanProcessor.js.map +1 -1
  71. package/dist/commonjs/a365/scopes/ApplyGuardrailScope.d.ts +45 -0
  72. package/dist/commonjs/a365/scopes/ApplyGuardrailScope.d.ts.map +1 -0
  73. package/dist/commonjs/a365/scopes/ApplyGuardrailScope.js +132 -0
  74. package/dist/commonjs/a365/scopes/ApplyGuardrailScope.js.map +1 -0
  75. package/dist/commonjs/a365/scopes/OpenTelemetryScope.d.ts +8 -2
  76. package/dist/commonjs/a365/scopes/OpenTelemetryScope.d.ts.map +1 -1
  77. package/dist/commonjs/a365/scopes/OpenTelemetryScope.js +9 -1
  78. package/dist/commonjs/a365/scopes/OpenTelemetryScope.js.map +1 -1
  79. package/dist/commonjs/a365/scopes/OutputScope.d.ts.map +1 -1
  80. package/dist/commonjs/a365/scopes/OutputScope.js +2 -4
  81. package/dist/commonjs/a365/scopes/OutputScope.js.map +1 -1
  82. package/dist/commonjs/a365/scopes/index.d.ts +1 -0
  83. package/dist/commonjs/a365/scopes/index.d.ts.map +1 -1
  84. package/dist/commonjs/a365/scopes/index.js +3 -1
  85. package/dist/commonjs/a365/scopes/index.js.map +1 -1
  86. package/dist/commonjs/azureMonitor/index.d.ts +6 -6
  87. package/dist/commonjs/azureMonitor/index.d.ts.map +1 -1
  88. package/dist/commonjs/azureMonitor/index.js +3 -3
  89. package/dist/commonjs/azureMonitor/index.js.map +1 -1
  90. package/dist/commonjs/azureMonitor/logs/handler.d.ts +3 -3
  91. package/dist/commonjs/azureMonitor/logs/handler.js +3 -3
  92. package/dist/commonjs/azureMonitor/metrics/handler.d.ts +1 -1
  93. package/dist/commonjs/azureMonitor/metrics/handler.js +1 -1
  94. package/dist/commonjs/azureMonitor/metrics/performanceCounters.d.ts +2 -2
  95. package/dist/commonjs/azureMonitor/metrics/performanceCounters.js +2 -2
  96. package/dist/commonjs/azureMonitor/metrics/quickpulse/filtering/validator.js +2 -2
  97. package/dist/commonjs/azureMonitor/metrics/quickpulse/filtering/validator.js.map +1 -1
  98. package/dist/commonjs/azureMonitor/metrics/quickpulse/liveMetrics.d.ts +4 -4
  99. package/dist/commonjs/azureMonitor/metrics/quickpulse/liveMetrics.d.ts.map +1 -1
  100. package/dist/commonjs/azureMonitor/metrics/quickpulse/liveMetrics.js +27 -15
  101. package/dist/commonjs/azureMonitor/metrics/quickpulse/liveMetrics.js.map +1 -1
  102. package/dist/commonjs/azureMonitor/metrics/quickpulse/utils.js +1 -1
  103. package/dist/commonjs/azureMonitor/metrics/quickpulse/utils.js.map +1 -1
  104. package/dist/commonjs/azureMonitor/metrics/standardMetrics.d.ts +1 -1
  105. package/dist/commonjs/azureMonitor/metrics/standardMetrics.js +1 -1
  106. package/dist/commonjs/distro/autoAttach.js +2 -2
  107. package/dist/commonjs/distro/autoAttach.js.map +1 -1
  108. package/dist/commonjs/distro/distro.d.ts +2 -2
  109. package/dist/commonjs/distro/distro.d.ts.map +1 -1
  110. package/dist/commonjs/distro/distro.js +70 -36
  111. package/dist/commonjs/distro/distro.js.map +1 -1
  112. package/dist/commonjs/distro/instrumentations.d.ts +2 -2
  113. package/dist/commonjs/distro/instrumentations.js +2 -2
  114. package/dist/commonjs/distro/loader.d.ts +1 -1
  115. package/dist/commonjs/distro/loader.js +1 -1
  116. package/dist/commonjs/genai/index.d.ts +1 -0
  117. package/dist/commonjs/genai/index.d.ts.map +1 -1
  118. package/dist/commonjs/genai/index.js +9 -0
  119. package/dist/commonjs/genai/index.js.map +1 -1
  120. package/dist/commonjs/genai/instrumentations/langchain/langchainTraceInstrumentor.d.ts +1 -1
  121. package/dist/commonjs/genai/instrumentations/langchain/langchainTraceInstrumentor.d.ts.map +1 -1
  122. package/dist/commonjs/genai/instrumentations/langchain/langchainTraceInstrumentor.js +11 -54
  123. package/dist/commonjs/genai/instrumentations/langchain/langchainTraceInstrumentor.js.map +1 -1
  124. package/dist/commonjs/genai/instrumentations/langchain/tracer.d.ts +3 -3
  125. package/dist/commonjs/genai/instrumentations/langchain/tracer.d.ts.map +1 -1
  126. package/dist/commonjs/genai/instrumentations/langchain/tracer.js +31 -9
  127. package/dist/commonjs/genai/instrumentations/langchain/tracer.js.map +1 -1
  128. package/dist/commonjs/genai/instrumentations/langchain/utils.d.ts +6 -0
  129. package/dist/commonjs/genai/instrumentations/langchain/utils.d.ts.map +1 -1
  130. package/dist/commonjs/genai/instrumentations/langchain/utils.js +159 -21
  131. package/dist/commonjs/genai/instrumentations/langchain/utils.js.map +1 -1
  132. package/dist/commonjs/genai/instrumentations/openai/utils.d.ts.map +1 -1
  133. package/dist/commonjs/genai/instrumentations/openai/utils.js +9 -4
  134. package/dist/commonjs/genai/instrumentations/openai/utils.js.map +1 -1
  135. package/dist/commonjs/genai/mainAgent/constants.d.ts +21 -0
  136. package/dist/commonjs/genai/mainAgent/constants.d.ts.map +1 -0
  137. package/dist/commonjs/genai/mainAgent/constants.js +26 -0
  138. package/dist/commonjs/genai/mainAgent/constants.js.map +1 -0
  139. package/dist/commonjs/genai/mainAgent/index.d.ts +3 -0
  140. package/dist/commonjs/genai/mainAgent/index.d.ts.map +1 -0
  141. package/dist/commonjs/genai/mainAgent/index.js +15 -0
  142. package/dist/commonjs/genai/mainAgent/index.js.map +1 -0
  143. package/dist/commonjs/genai/mainAgent/processor.d.ts +64 -0
  144. package/dist/commonjs/genai/mainAgent/processor.d.ts.map +1 -0
  145. package/dist/commonjs/genai/mainAgent/processor.js +150 -0
  146. package/dist/commonjs/genai/mainAgent/processor.js.map +1 -0
  147. package/dist/commonjs/genai/semconv.d.ts +3 -0
  148. package/dist/commonjs/genai/semconv.d.ts.map +1 -1
  149. package/dist/commonjs/genai/semconv.js +4 -1
  150. package/dist/commonjs/genai/semconv.js.map +1 -1
  151. package/dist/commonjs/index.d.ts +4 -3
  152. package/dist/commonjs/index.d.ts.map +1 -1
  153. package/dist/commonjs/index.js +16 -2
  154. package/dist/commonjs/index.js.map +1 -1
  155. package/dist/commonjs/otlp/handler.d.ts.map +1 -1
  156. package/dist/commonjs/otlp/handler.js +3 -6
  157. package/dist/commonjs/otlp/handler.js.map +1 -1
  158. package/dist/commonjs/sdkstats/constants.d.ts +45 -0
  159. package/dist/commonjs/sdkstats/constants.d.ts.map +1 -0
  160. package/dist/commonjs/sdkstats/constants.js +77 -0
  161. package/dist/commonjs/sdkstats/constants.js.map +1 -0
  162. package/dist/commonjs/sdkstats/index.d.ts +6 -3
  163. package/dist/commonjs/sdkstats/index.d.ts.map +1 -1
  164. package/dist/commonjs/sdkstats/index.js +22 -4
  165. package/dist/commonjs/sdkstats/index.js.map +1 -1
  166. package/dist/commonjs/sdkstats/manager.d.ts +7 -3
  167. package/dist/commonjs/sdkstats/manager.d.ts.map +1 -1
  168. package/dist/commonjs/sdkstats/manager.js +100 -27
  169. package/dist/commonjs/sdkstats/manager.js.map +1 -1
  170. package/dist/commonjs/sdkstats/metrics.d.ts +46 -2
  171. package/dist/commonjs/sdkstats/metrics.d.ts.map +1 -1
  172. package/dist/commonjs/sdkstats/metrics.js +117 -14
  173. package/dist/commonjs/sdkstats/metrics.js.map +1 -1
  174. package/dist/commonjs/sdkstats/networkStats.d.ts +79 -0
  175. package/dist/commonjs/sdkstats/networkStats.d.ts.map +1 -0
  176. package/dist/commonjs/sdkstats/networkStats.js +191 -0
  177. package/dist/commonjs/sdkstats/networkStats.js.map +1 -0
  178. package/dist/commonjs/sdkstats/state.d.ts +10 -10
  179. package/dist/commonjs/sdkstats/state.d.ts.map +1 -1
  180. package/dist/commonjs/sdkstats/state.js +4 -4
  181. package/dist/commonjs/sdkstats/state.js.map +1 -1
  182. package/dist/commonjs/shared/config.d.ts +1 -1
  183. package/dist/commonjs/shared/config.js +1 -1
  184. package/dist/commonjs/types.d.ts +18 -18
  185. package/dist/commonjs/types.d.ts.map +1 -1
  186. package/dist/commonjs/types.js +89 -89
  187. package/dist/commonjs/types.js.map +1 -1
  188. package/dist/commonjs/utils/index.d.ts +1 -1
  189. package/dist/commonjs/utils/index.d.ts.map +1 -1
  190. package/dist/commonjs/utils/index.js +2 -2
  191. package/dist/commonjs/utils/index.js.map +1 -1
  192. package/dist/commonjs/utils/opentelemetryInstrumentationPatcher.d.ts +1 -1
  193. package/dist/commonjs/utils/opentelemetryInstrumentationPatcher.js +11 -11
  194. package/dist/commonjs/utils/opentelemetryInstrumentationPatcher.js.map +1 -1
  195. package/dist/commonjs/utils/sdkStats.d.ts +15 -0
  196. package/dist/commonjs/utils/sdkStats.d.ts.map +1 -0
  197. package/dist/commonjs/utils/sdkStats.js +138 -0
  198. package/dist/commonjs/utils/sdkStats.js.map +1 -0
  199. package/dist/esm/a365/configuration/A365Configuration.d.ts +3 -0
  200. package/dist/esm/a365/configuration/A365Configuration.d.ts.map +1 -1
  201. package/dist/esm/a365/configuration/A365Configuration.js +8 -3
  202. package/dist/esm/a365/configuration/A365Configuration.js.map +1 -1
  203. package/dist/esm/a365/configuration/A365ConfigurationOptions.d.ts +10 -1
  204. package/dist/esm/a365/configuration/A365ConfigurationOptions.d.ts.map +1 -1
  205. package/dist/esm/a365/constants.d.ts +134 -3
  206. package/dist/esm/a365/constants.d.ts.map +1 -1
  207. package/dist/esm/a365/constants.js +141 -2
  208. package/dist/esm/a365/constants.js.map +1 -1
  209. package/dist/esm/a365/contracts.d.ts +246 -8
  210. package/dist/esm/a365/contracts.d.ts.map +1 -1
  211. package/dist/esm/a365/contracts.js +80 -2
  212. package/dist/esm/a365/contracts.js.map +1 -1
  213. package/dist/esm/a365/exporter/Agent365Exporter.d.ts +33 -1
  214. package/dist/esm/a365/exporter/Agent365Exporter.d.ts.map +1 -1
  215. package/dist/esm/a365/exporter/Agent365Exporter.js +135 -4
  216. package/dist/esm/a365/exporter/Agent365Exporter.js.map +1 -1
  217. package/dist/esm/a365/exporter/Agent365ExporterOptions.d.ts +28 -1
  218. package/dist/esm/a365/exporter/Agent365ExporterOptions.d.ts.map +1 -1
  219. package/dist/esm/a365/exporter/Agent365ExporterOptions.js +2 -0
  220. package/dist/esm/a365/exporter/Agent365ExporterOptions.js.map +1 -1
  221. package/dist/esm/a365/exporter/AgentIdentity.d.ts +17 -0
  222. package/dist/esm/a365/exporter/AgentIdentity.d.ts.map +1 -0
  223. package/dist/esm/a365/exporter/AgentIdentity.js +4 -0
  224. package/dist/esm/a365/exporter/AgentIdentity.js.map +1 -0
  225. package/dist/esm/a365/exporter/ExporterEventNames.d.ts +3 -0
  226. package/dist/esm/a365/exporter/ExporterEventNames.d.ts.map +1 -1
  227. package/dist/esm/a365/exporter/ExporterEventNames.js +3 -0
  228. package/dist/esm/a365/exporter/ExporterEventNames.js.map +1 -1
  229. package/dist/esm/a365/exporter/TokenResolverContext.d.ts +18 -0
  230. package/dist/esm/a365/exporter/TokenResolverContext.d.ts.map +1 -0
  231. package/dist/esm/a365/exporter/TokenResolverContext.js +4 -0
  232. package/dist/esm/a365/exporter/TokenResolverContext.js.map +1 -0
  233. package/dist/esm/a365/exporter/index.d.ts +3 -1
  234. package/dist/esm/a365/exporter/index.d.ts.map +1 -1
  235. package/dist/esm/a365/exporter/index.js.map +1 -1
  236. package/dist/esm/a365/exporter/utils.d.ts +5 -0
  237. package/dist/esm/a365/exporter/utils.d.ts.map +1 -1
  238. package/dist/esm/a365/exporter/utils.js +22 -24
  239. package/dist/esm/a365/exporter/utils.js.map +1 -1
  240. package/dist/esm/a365/hosting/agenticTokenCache.d.ts +24 -0
  241. package/dist/esm/a365/hosting/agenticTokenCache.d.ts.map +1 -1
  242. package/dist/esm/a365/hosting/agenticTokenCache.js +40 -3
  243. package/dist/esm/a365/hosting/agenticTokenCache.js.map +1 -1
  244. package/dist/esm/a365/hosting/index.d.ts +1 -1
  245. package/dist/esm/a365/hosting/index.d.ts.map +1 -1
  246. package/dist/esm/a365/hosting/index.js +1 -1
  247. package/dist/esm/a365/hosting/index.js.map +1 -1
  248. package/dist/esm/a365/hosting/scopeUtils.js +2 -2
  249. package/dist/esm/a365/hosting/scopeUtils.js.map +1 -1
  250. package/dist/esm/a365/hosting/turnContextUtils.d.ts +6 -1
  251. package/dist/esm/a365/hosting/turnContextUtils.d.ts.map +1 -1
  252. package/dist/esm/a365/hosting/turnContextUtils.js +30 -5
  253. package/dist/esm/a365/hosting/turnContextUtils.js.map +1 -1
  254. package/dist/esm/a365/hosting/types.d.ts +48 -2
  255. package/dist/esm/a365/hosting/types.d.ts.map +1 -1
  256. package/dist/esm/a365/index.d.ts +5 -5
  257. package/dist/esm/a365/index.d.ts.map +1 -1
  258. package/dist/esm/a365/index.js +3 -3
  259. package/dist/esm/a365/index.js.map +1 -1
  260. package/dist/esm/a365/message-utils.d.ts +10 -5
  261. package/dist/esm/a365/message-utils.d.ts.map +1 -1
  262. package/dist/esm/a365/message-utils.js +28 -25
  263. package/dist/esm/a365/message-utils.js.map +1 -1
  264. package/dist/esm/a365/processors/A365SpanProcessor.d.ts +3 -0
  265. package/dist/esm/a365/processors/A365SpanProcessor.d.ts.map +1 -1
  266. package/dist/esm/a365/processors/A365SpanProcessor.js +12 -4
  267. package/dist/esm/a365/processors/A365SpanProcessor.js.map +1 -1
  268. package/dist/esm/a365/scopes/ApplyGuardrailScope.d.ts +45 -0
  269. package/dist/esm/a365/scopes/ApplyGuardrailScope.d.ts.map +1 -0
  270. package/dist/esm/a365/scopes/ApplyGuardrailScope.js +128 -0
  271. package/dist/esm/a365/scopes/ApplyGuardrailScope.js.map +1 -0
  272. package/dist/esm/a365/scopes/OpenTelemetryScope.d.ts +8 -2
  273. package/dist/esm/a365/scopes/OpenTelemetryScope.d.ts.map +1 -1
  274. package/dist/esm/a365/scopes/OpenTelemetryScope.js +9 -1
  275. package/dist/esm/a365/scopes/OpenTelemetryScope.js.map +1 -1
  276. package/dist/esm/a365/scopes/OutputScope.d.ts.map +1 -1
  277. package/dist/esm/a365/scopes/OutputScope.js +2 -4
  278. package/dist/esm/a365/scopes/OutputScope.js.map +1 -1
  279. package/dist/esm/a365/scopes/index.d.ts +1 -0
  280. package/dist/esm/a365/scopes/index.d.ts.map +1 -1
  281. package/dist/esm/a365/scopes/index.js +1 -0
  282. package/dist/esm/a365/scopes/index.js.map +1 -1
  283. package/dist/esm/azureMonitor/index.d.ts +6 -6
  284. package/dist/esm/azureMonitor/index.d.ts.map +1 -1
  285. package/dist/esm/azureMonitor/index.js +2 -2
  286. package/dist/esm/azureMonitor/index.js.map +1 -1
  287. package/dist/esm/azureMonitor/logs/handler.d.ts +3 -3
  288. package/dist/esm/azureMonitor/logs/handler.js +3 -3
  289. package/dist/esm/azureMonitor/metrics/handler.d.ts +1 -1
  290. package/dist/esm/azureMonitor/metrics/handler.js +1 -1
  291. package/dist/esm/azureMonitor/metrics/performanceCounters.d.ts +2 -2
  292. package/dist/esm/azureMonitor/metrics/performanceCounters.js +2 -2
  293. package/dist/esm/azureMonitor/metrics/quickpulse/filtering/validator.js +2 -2
  294. package/dist/esm/azureMonitor/metrics/quickpulse/filtering/validator.js.map +1 -1
  295. package/dist/esm/azureMonitor/metrics/quickpulse/liveMetrics.d.ts +4 -4
  296. package/dist/esm/azureMonitor/metrics/quickpulse/liveMetrics.d.ts.map +1 -1
  297. package/dist/esm/azureMonitor/metrics/quickpulse/liveMetrics.js +27 -15
  298. package/dist/esm/azureMonitor/metrics/quickpulse/liveMetrics.js.map +1 -1
  299. package/dist/esm/azureMonitor/metrics/quickpulse/utils.js +1 -1
  300. package/dist/esm/azureMonitor/metrics/quickpulse/utils.js.map +1 -1
  301. package/dist/esm/azureMonitor/metrics/standardMetrics.d.ts +1 -1
  302. package/dist/esm/azureMonitor/metrics/standardMetrics.js +1 -1
  303. package/dist/esm/distro/autoAttach.js +2 -2
  304. package/dist/esm/distro/autoAttach.js.map +1 -1
  305. package/dist/esm/distro/distro.d.ts +2 -2
  306. package/dist/esm/distro/distro.d.ts.map +1 -1
  307. package/dist/esm/distro/distro.js +62 -28
  308. package/dist/esm/distro/distro.js.map +1 -1
  309. package/dist/esm/distro/instrumentations.d.ts +2 -2
  310. package/dist/esm/distro/instrumentations.js +2 -2
  311. package/dist/esm/distro/loader.d.ts +1 -1
  312. package/dist/esm/distro/loader.js +1 -1
  313. package/dist/esm/genai/index.d.ts +1 -0
  314. package/dist/esm/genai/index.d.ts.map +1 -1
  315. package/dist/esm/genai/index.js +1 -0
  316. package/dist/esm/genai/index.js.map +1 -1
  317. package/dist/esm/genai/instrumentations/langchain/langchainTraceInstrumentor.d.ts +1 -1
  318. package/dist/esm/genai/instrumentations/langchain/langchainTraceInstrumentor.d.ts.map +1 -1
  319. package/dist/esm/genai/instrumentations/langchain/langchainTraceInstrumentor.js +11 -21
  320. package/dist/esm/genai/instrumentations/langchain/langchainTraceInstrumentor.js.map +1 -1
  321. package/dist/esm/genai/instrumentations/langchain/tracer.d.ts +3 -3
  322. package/dist/esm/genai/instrumentations/langchain/tracer.d.ts.map +1 -1
  323. package/dist/esm/genai/instrumentations/langchain/tracer.js +31 -9
  324. package/dist/esm/genai/instrumentations/langchain/tracer.js.map +1 -1
  325. package/dist/esm/genai/instrumentations/langchain/utils.d.ts +6 -0
  326. package/dist/esm/genai/instrumentations/langchain/utils.d.ts.map +1 -1
  327. package/dist/esm/genai/instrumentations/langchain/utils.js +155 -23
  328. package/dist/esm/genai/instrumentations/langchain/utils.js.map +1 -1
  329. package/dist/esm/genai/instrumentations/openai/utils.d.ts.map +1 -1
  330. package/dist/esm/genai/instrumentations/openai/utils.js +10 -5
  331. package/dist/esm/genai/instrumentations/openai/utils.js.map +1 -1
  332. package/dist/esm/genai/mainAgent/constants.d.ts +21 -0
  333. package/dist/esm/genai/mainAgent/constants.d.ts.map +1 -0
  334. package/dist/esm/genai/mainAgent/constants.js +23 -0
  335. package/dist/esm/genai/mainAgent/constants.js.map +1 -0
  336. package/dist/esm/genai/mainAgent/index.d.ts +3 -0
  337. package/dist/esm/genai/mainAgent/index.d.ts.map +1 -0
  338. package/dist/esm/genai/mainAgent/index.js +5 -0
  339. package/dist/esm/genai/mainAgent/index.js.map +1 -0
  340. package/dist/esm/genai/mainAgent/processor.d.ts +64 -0
  341. package/dist/esm/genai/mainAgent/processor.d.ts.map +1 -0
  342. package/dist/esm/genai/mainAgent/processor.js +145 -0
  343. package/dist/esm/genai/mainAgent/processor.js.map +1 -0
  344. package/dist/esm/genai/semconv.d.ts +3 -0
  345. package/dist/esm/genai/semconv.d.ts.map +1 -1
  346. package/dist/esm/genai/semconv.js +3 -0
  347. package/dist/esm/genai/semconv.js.map +1 -1
  348. package/dist/esm/index.d.ts +4 -3
  349. package/dist/esm/index.d.ts.map +1 -1
  350. package/dist/esm/index.js +3 -1
  351. package/dist/esm/index.js.map +1 -1
  352. package/dist/esm/otlp/handler.d.ts.map +1 -1
  353. package/dist/esm/otlp/handler.js +3 -6
  354. package/dist/esm/otlp/handler.js.map +1 -1
  355. package/dist/esm/sdkstats/constants.d.ts +45 -0
  356. package/dist/esm/sdkstats/constants.d.ts.map +1 -0
  357. package/dist/esm/sdkstats/constants.js +74 -0
  358. package/dist/esm/sdkstats/constants.js.map +1 -0
  359. package/dist/esm/sdkstats/index.d.ts +6 -3
  360. package/dist/esm/sdkstats/index.d.ts.map +1 -1
  361. package/dist/esm/sdkstats/index.js +4 -3
  362. package/dist/esm/sdkstats/index.js.map +1 -1
  363. package/dist/esm/sdkstats/manager.d.ts +7 -3
  364. package/dist/esm/sdkstats/manager.d.ts.map +1 -1
  365. package/dist/esm/sdkstats/manager.js +100 -27
  366. package/dist/esm/sdkstats/manager.js.map +1 -1
  367. package/dist/esm/sdkstats/metrics.d.ts +46 -2
  368. package/dist/esm/sdkstats/metrics.d.ts.map +1 -1
  369. package/dist/esm/sdkstats/metrics.js +117 -14
  370. package/dist/esm/sdkstats/metrics.js.map +1 -1
  371. package/dist/esm/sdkstats/networkStats.d.ts +79 -0
  372. package/dist/esm/sdkstats/networkStats.d.ts.map +1 -0
  373. package/dist/esm/sdkstats/networkStats.js +172 -0
  374. package/dist/esm/sdkstats/networkStats.js.map +1 -0
  375. package/dist/esm/sdkstats/state.d.ts +10 -10
  376. package/dist/esm/sdkstats/state.d.ts.map +1 -1
  377. package/dist/esm/sdkstats/state.js +4 -4
  378. package/dist/esm/sdkstats/state.js.map +1 -1
  379. package/dist/esm/shared/config.d.ts +1 -1
  380. package/dist/esm/shared/config.js +1 -1
  381. package/dist/esm/types.d.ts +18 -18
  382. package/dist/esm/types.d.ts.map +1 -1
  383. package/dist/esm/types.js +88 -88
  384. package/dist/esm/types.js.map +1 -1
  385. package/dist/esm/utils/index.d.ts +1 -1
  386. package/dist/esm/utils/index.d.ts.map +1 -1
  387. package/dist/esm/utils/index.js +1 -1
  388. package/dist/esm/utils/index.js.map +1 -1
  389. package/dist/esm/utils/opentelemetryInstrumentationPatcher.d.ts +1 -1
  390. package/dist/esm/utils/opentelemetryInstrumentationPatcher.js +12 -12
  391. package/dist/esm/utils/opentelemetryInstrumentationPatcher.js.map +1 -1
  392. package/dist/esm/utils/sdkStats.d.ts +15 -0
  393. package/dist/esm/utils/sdkStats.d.ts.map +1 -0
  394. package/dist/esm/utils/sdkStats.js +135 -0
  395. package/dist/esm/utils/sdkStats.js.map +1 -0
  396. package/package.json +38 -29
  397. package/dist/commonjs/utils/statsbeat.d.ts +0 -15
  398. package/dist/commonjs/utils/statsbeat.d.ts.map +0 -1
  399. package/dist/commonjs/utils/statsbeat.js +0 -127
  400. package/dist/commonjs/utils/statsbeat.js.map +0 -1
  401. package/dist/esm/utils/statsbeat.d.ts +0 -15
  402. package/dist/esm/utils/statsbeat.d.ts.map +0 -1
  403. package/dist/esm/utils/statsbeat.js +0 -124
  404. package/dist/esm/utils/statsbeat.js.map +0 -1
package/README.md CHANGED
@@ -2,6 +2,7 @@
2
2
 
3
3
  [![npm version](https://img.shields.io/npm/v/%40microsoft%2Fopentelemetry)](https://www.npmjs.com/package/@microsoft/opentelemetry)
4
4
  [![license](https://img.shields.io/npm/l/%40microsoft%2Fopentelemetry)](https://github.com/microsoft/opentelemetry-distro-javascript/blob/main/LICENSE)
5
+ [![API Docs](https://img.shields.io/badge/API%20Docs-TypeDoc-blue)](https://microsoft.github.io/opentelemetry-distro-javascript/)
5
6
 
6
7
  Microsoft OpenTelemetry distribution for Node.js — one import, one call, full observability across Azure Monitor, OTLP-compatible backends, and A365.
7
8
 
@@ -15,7 +16,7 @@ npm install @microsoft/opentelemetry
15
16
 
16
17
  ### ESM Support
17
18
 
18
- > **Note:** ESM support requires Node.js 20.6.0 or later. This package's ESM loader flow relies on `--import` and `node:module.register()`, which are not available on older Node.js releases. For background on why startup ordering matters, see the [OpenTelemetry ESM Support documentation](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/esm-support.md).
19
+ > **Note:** This package requires Node.js 22.0.0 or later. Its ESM loader flow relies on `--import` and `node:module.register()`. For background on why startup ordering matters, see the [OpenTelemetry ESM Support documentation](https://github.com/open-telemetry/opentelemetry-js/blob/main/doc/esm-support.md).
19
20
 
20
21
  For ESM applications, instrumentation hooks must be registered before any instrumented modules (for example `http`, `express`, `axios`, or loggers) are loaded. This is a fundamental ESM constraint: modules cannot be instrumented after they are already loaded.
21
22
 
@@ -112,26 +113,25 @@ import { useMicrosoftOpenTelemetry } from "@microsoft/opentelemetry";
112
113
  useMicrosoftOpenTelemetry();
113
114
  ```
114
115
 
115
-
116
116
  That's it — traces, metrics, and logs are collected automatically with built-in instrumentations for HTTP, databases, and more.
117
117
 
118
118
  ## Configuration
119
119
 
120
120
  ### `MicrosoftOpenTelemetryOptions`
121
121
 
122
- | Option | Type | Default | Description |
123
- |---|---|---|---|
124
- | `resource` | `Resource` | auto-detected | OpenTelemetry Resource (service name, version, etc.) |
125
- | `samplingRatio` | `number` | `1.0` | Ratio of telemetry items to transmit (0.0–1.0) |
126
- | `tracesPerSecond` | `number` | `5` | Max traces per second. Set to `0` to use `samplingRatio` instead |
127
- | `instrumentationOptions` | `InstrumentationOptions` | all enabled | Toggle built-in instrumentations (see below) |
128
- | `spanProcessors` | `SpanProcessor[]` | — | Additional span processors |
129
- | `logRecordProcessors` | `LogRecordProcessor[]` | — | Additional log record processors |
130
- | `metricReaders` | `MetricReader[]` | — | Additional metric readers |
131
- | `views` | `ViewOptions[]` | — | Metric views |
132
- | `azureMonitor` | `AzureMonitorOpenTelemetryOptions` | — | Azure Monitor backend config. When provided, Azure Monitor export is enabled |
133
- | `a365` | `A365Options` | — | A365 observability config |
134
- | `enableConsoleExporters` | `boolean` | auto | Enable console exporters for traces, metrics, and logs |
122
+ | Option | Type | Default | Description |
123
+ | ------------------------ | ---------------------------------- | ------------- | ---------------------------------------------------------------------------- |
124
+ | `resource` | `Resource` | auto-detected | OpenTelemetry Resource (service name, version, etc.) |
125
+ | `samplingRatio` | `number` | `1.0` | Ratio of telemetry items to transmit (0.0–1.0) |
126
+ | `tracesPerSecond` | `number` | `5` | Max traces per second. Set to `0` to use `samplingRatio` instead |
127
+ | `instrumentationOptions` | `InstrumentationOptions` | all enabled | Toggle built-in instrumentations (see below) |
128
+ | `spanProcessors` | `SpanProcessor[]` | — | Additional span processors |
129
+ | `logRecordProcessors` | `LogRecordProcessor[]` | — | Additional log record processors |
130
+ | `metricReaders` | `MetricReader[]` | — | Additional metric readers |
131
+ | `views` | `ViewOptions[]` | — | Metric views |
132
+ | `azureMonitor` | `AzureMonitorOpenTelemetryOptions` | — | Azure Monitor backend config. When provided, Azure Monitor export is enabled |
133
+ | `a365` | `A365Options` | — | A365 observability config |
134
+ | `enableConsoleExporters` | `boolean` | auto | Enable console exporters for traces, metrics, and logs |
135
135
 
136
136
  ### `InstrumentationOptions`
137
137
 
@@ -144,19 +144,19 @@ Most instrumentations use `InstrumentationConfig` shape (`{ enabled?: boolean, .
144
144
 
145
145
  Set `enabled: true` or `enabled: false` explicitly for predictable behavior.
146
146
 
147
- | Key | Type | Default | Description |
148
- |---|---|---|---|
149
- | `http` | `InstrumentationConfig` | enabled | HTTP client/server instrumentation |
150
- | `azureSdk` | `InstrumentationConfig` | enabled | Azure SDK instrumentation |
151
- | `mongoDb` | `InstrumentationConfig` | enabled | MongoDB instrumentation |
152
- | `mySql` | `InstrumentationConfig` | enabled | MySQL instrumentation |
153
- | `postgreSql` | `InstrumentationConfig` | enabled | PostgreSQL instrumentation |
154
- | `redis` | `InstrumentationConfig` | enabled | Redis instrumentation |
155
- | `redis4` | `InstrumentationConfig` | enabled | Redis 4 instrumentation |
156
- | `bunyan` | `InstrumentationConfig` | disabled | Bunyan log instrumentation |
157
- | `winston` | `InstrumentationConfig` | disabled | Winston log instrumentation |
158
- | `openaiAgents` | `OpenAIAgentsInstrumentationConfig` | enabled | OpenAI Agents SDK instrumentation (requires `@openai/agents`) |
159
- | `langchain` | `LangChainInstrumentationConfig` | enabled | LangChain instrumentation (requires `@langchain/core`) |
147
+ | Key | Type | Default | Description |
148
+ | -------------- | ----------------------------------- | -------- | ------------------------------------------------------------- |
149
+ | `http` | `InstrumentationConfig` | enabled | HTTP client/server instrumentation |
150
+ | `azureSdk` | `InstrumentationConfig` | enabled | Azure SDK instrumentation |
151
+ | `mongoDb` | `InstrumentationConfig` | enabled | MongoDB instrumentation |
152
+ | `mySql` | `InstrumentationConfig` | enabled | MySQL instrumentation |
153
+ | `postgreSql` | `InstrumentationConfig` | enabled | PostgreSQL instrumentation |
154
+ | `redis` | `InstrumentationConfig` | enabled | Redis instrumentation |
155
+ | `redis4` | `InstrumentationConfig` | enabled | Redis 4 instrumentation |
156
+ | `bunyan` | `InstrumentationConfig` | disabled | Bunyan log instrumentation |
157
+ | `winston` | `InstrumentationConfig` | disabled | Winston log instrumentation |
158
+ | `openaiAgents` | `OpenAIAgentsInstrumentationConfig` | enabled | OpenAI Agents SDK instrumentation (requires `@openai/agents`) |
159
+ | `langchain` | `LangChainInstrumentationConfig` | enabled | LangChain instrumentation (requires `@langchain/core`) |
160
160
 
161
161
  #### Turn instrumentations on/off
162
162
 
@@ -219,14 +219,14 @@ Behavior:
219
219
 
220
220
  ### `azureMonitor` options
221
221
 
222
- | Option | Type | Default | Description |
223
- |---|---|---|---|
224
- | `azureMonitorExporterOptions` | `AzureMonitorExporterOptions` | — | Exporter config including `connectionString`, `storageDirectory`, `disableOfflineStorage` |
225
- | `enableLiveMetrics` | `boolean` | `true` | Enable Live Metrics streaming |
226
- | `enableStandardMetrics` | `boolean` | `true` | Enable standard metrics collection |
227
- | `enableTraceBasedSamplingForLogs` | `boolean` | `false` | Enable log sampling based on trace |
228
- | `enablePerformanceCounters` | `boolean` | `true` | Enable performance counter collection |
229
- | `browserSdkLoaderOptions` | `BrowserSdkLoaderOptions` | disabled | Application Insights browser SDK loader config (`enabled`, `connectionString`) |
222
+ | Option | Type | Default | Description |
223
+ | --------------------------------- | ----------------------------- | -------- | ----------------------------------------------------------------------------------------- |
224
+ | `azureMonitorExporterOptions` | `AzureMonitorExporterOptions` | — | Exporter config including `connectionString`, `storageDirectory`, `disableOfflineStorage` |
225
+ | `enableLiveMetrics` | `boolean` | `true` | Enable Live Metrics streaming |
226
+ | `enableStandardMetrics` | `boolean` | `true` | Enable standard metrics collection |
227
+ | `enableTraceBasedSamplingForLogs` | `boolean` | `false` | Enable log sampling based on trace |
228
+ | `enablePerformanceCounters` | `boolean` | `true` | Enable performance counter collection |
229
+ | `browserSdkLoaderOptions` | `BrowserSdkLoaderOptions` | disabled | Application Insights browser SDK loader config (`enabled`, `connectionString`) |
230
230
 
231
231
  ### OTLP via environment variables
232
232
 
@@ -236,19 +236,20 @@ See the [OpenTelemetry OTLP Exporter specification](https://opentelemetry.io/doc
236
236
 
237
237
  ### `a365` options
238
238
 
239
- | Option | Type | Default | Description |
240
- |---|---|---|---|
241
- | `enabled` | `boolean` | `false` | Enable A365 observability. Registers the `A365SpanProcessor` for baggage/attribute enrichment of downstream exporters (Azure Monitor, OTLP, console). Does **not** send data to the A365 service on its own — set `enableObservabilityExporter` for that |
242
- | `enableObservabilityExporter` | `boolean` | `false` | Enable the A365 HTTP exporter (`Agent365Exporter`) to send spans to the A365 observability service. Requires `enabled: true`. Equivalent to `ENABLE_A365_OBSERVABILITY_EXPORTER` env var |
243
- | `tokenResolver` | `(agentId, tenantId, authScopes?) => string \| Promise<string>` | — | Token resolver for A365 service authentication |
244
- | `clusterCategory` | `ClusterCategory` | `"prod"` | Cluster category for endpoint resolution (`local`, `dev`, `test`, `preprod`, `firstrelease`, `prod`, `gov`, `high`, `dod`, `mooncake`, `ex`, `rx`) |
245
- | `domainOverride` | `string` | — | Override the A365 observability service domain |
246
- | `authScopes` | `string[]` | `["api://9b975845-388f-4429-889e-eab1ef63949c/.default"]` | OAuth scopes for A365 service authentication |
247
- | `observabilityScopeOverride` | `string` | — | Single-string scope override (highest precedence). Equivalent to `A365_OBSERVABILITY_SCOPES_OVERRIDE` env var |
248
- | `logLevel` | `string` | `"none"` | A365 internal log level: `none`, `info`, `warn`, `error`, or pipe-separated combination. Overrides `A365_OBSERVABILITY_LOG_LEVEL` env var |
249
- | `useS2SEndpoint` | `boolean` | `false` | Use the S2S (service-to-service) endpoint path for export |
250
-
251
- When A365 export is enabled, the distro defaults to GenAI-focused telemetry. To opt back into non-GenAI auto-instrumentation, set explicit overrides:
239
+ | Option | Type | Default | Description |
240
+ | ----------------------------- | ------------------------------------------------------------------------------ | --------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
241
+ | `enabled` | `boolean` | `false` | Enable A365 observability. Registers the `A365SpanProcessor` for baggage/attribute enrichment of downstream exporters (Azure Monitor, OTLP, console). Does **not** send data to the A365 service on its own — set `enableObservabilityExporter` for that |
242
+ | `enableObservabilityExporter` | `boolean` | `false` | Enable the A365 HTTP exporter (`Agent365Exporter`) to send spans to the A365 observability service. Requires `enabled: true`. Equivalent to `ENABLE_A365_OBSERVABILITY_EXPORTER` env var |
243
+ | `tokenResolver` | `(agentId, tenantId, authScopes?) => string \| Promise<string>` | — | Token resolver for A365 service authentication. When both this and `contextualTokenResolver` are set, `contextualTokenResolver` takes precedence |
244
+ | `contextualTokenResolver` | `(context: TokenResolverContext) => string \| null \| Promise<string \| null>` | — | Contextual token resolver with rich context including the agentic user ID. Takes precedence over `tokenResolver` when set |
245
+ | `clusterCategory` | `ClusterCategory` | `"prod"` | Cluster category for endpoint resolution (`local`, `dev`, `test`, `preprod`, `firstrelease`, `prod`, `gov`, `high`, `dod`, `mooncake`, `ex`, `rx`) |
246
+ | `domainOverride` | `string` | — | Override the A365 observability service domain |
247
+ | `authScopes` | `string[]` | `["api://9b975845-388f-4429-889e-eab1ef63949c/.default"]` | OAuth scopes for A365 service authentication |
248
+ | `observabilityScopeOverride` | `string` | — | Single-string scope override (highest precedence). Equivalent to `A365_OBSERVABILITY_SCOPES_OVERRIDE` env var |
249
+ | `logLevel` | `string` | `"none"` | A365 internal log level: `none`, `info`, `warn`, `error`, or pipe-separated combination. Overrides `A365_OBSERVABILITY_LOG_LEVEL` env var |
250
+ | `useS2SEndpoint` | `boolean` | `false` | Use the S2S (service-to-service) endpoint path for export |
251
+
252
+ When A365 export is enabled, Microsoft OpenTelemetry defaults to GenAI-focused telemetry. To opt back into non-GenAI auto-instrumentation, set explicit overrides:
252
253
 
253
254
  ```typescript
254
255
  useMicrosoftOpenTelemetry({
@@ -316,14 +317,14 @@ new ObservabilityHostingManager().configure(adapter as unknown as { use(...m: un
316
317
 
317
318
  #### A365 exporter tuning
318
319
 
319
- | Option | Type | Default | Description |
320
- |---|---|---|---|
321
- | `maxQueueSize` | `number` | `2048` | Maximum span queue size before drops occur |
322
- | `scheduledDelayMilliseconds` | `number` | `5000` | Delay (ms) between automatic batch flush attempts |
323
- | `exporterTimeoutMilliseconds` | `number` | `90000` | Maximum time (ms) for the entire export call |
320
+ | Option | Type | Default | Description |
321
+ | -------------------------------- | -------- | ------- | ------------------------------------------------------------ |
322
+ | `maxQueueSize` | `number` | `2048` | Maximum span queue size before drops occur |
323
+ | `scheduledDelayMilliseconds` | `number` | `5000` | Delay (ms) between automatic batch flush attempts |
324
+ | `exporterTimeoutMilliseconds` | `number` | `90000` | Maximum time (ms) for the entire export call |
324
325
  | `httpRequestTimeoutMilliseconds` | `number` | `30000` | HTTP request timeout (ms) when sending spans to A365 service |
325
- | `maxExportBatchSize` | `number` | `512` | Maximum number of spans per export batch |
326
- | `maxPayloadBytes` | `number` | — | Maximum estimated payload size (bytes) per HTTP chunk |
326
+ | `maxExportBatchSize` | `number` | `512` | Maximum number of spans per export batch |
327
+ | `maxPayloadBytes` | `number` | — | Maximum estimated payload size (bytes) per HTTP chunk |
327
328
 
328
329
  Example:
329
330
 
@@ -344,24 +345,27 @@ useMicrosoftOpenTelemetry({
344
345
 
345
346
  A365 options can also be set via environment variables (highest precedence):
346
347
 
347
- | Environment Variable | Description |
348
- |---|---|
349
- | `ENABLE_A365_OBSERVABILITY_EXPORTER` | `"true"` / `"false"` — override `enabled` |
350
- | `A365_OBSERVABILITY_SCOPES_OVERRIDE` | Space-separated list of OAuth scopes |
351
- | `A365_OBSERVABILITY_DOMAIN_OVERRIDE` | Override service domain |
352
- | `CLUSTER_CATEGORY` | Override cluster category |
353
- | `A365_OBSERVABILITY_LOG_LEVEL` | A365 internal logger filter level (`none`, `info`, `warn`, `error`, or pipe-delimited combination) — overrides `observabilityLogLevel` |
354
- | `A365_PER_REQUEST_MAX_TRACES` | Max buffered traces (default: `1000`) |
355
- | `A365_PER_REQUEST_MAX_SPANS_PER_TRACE` | Max spans per trace (default: `5000`) |
356
- | `A365_PER_REQUEST_MAX_CONCURRENT_EXPORTS` | Max concurrent exports (default: `20`) |
357
- | `A365_PER_REQUEST_FLUSH_GRACE_MS` | Grace period after root span ends (default: `250`) |
358
- | `A365_PER_REQUEST_MAX_TRACE_AGE_MS` | Max trace age before forced flush (default: `1800000`) |
359
-
348
+ | Environment Variable | Description |
349
+ | ---------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
350
+ | `ENABLE_A365_OBSERVABILITY_EXPORTER` | `"true"` / `"false"` — override `enabled` |
351
+ | `A365_OBSERVABILITY_SCOPES_OVERRIDE` | Space-separated list of OAuth scopes |
352
+ | `A365_OBSERVABILITY_DOMAIN_OVERRIDE` | Override service domain |
353
+ | `CLUSTER_CATEGORY` | Override cluster category |
354
+ | `A365_OBSERVABILITY_LOG_LEVEL` | A365 internal logger filter level (`none`, `info`, `warn`, `error`, or pipe-delimited combination) — overrides `observabilityLogLevel` |
355
+ | `A365_PER_REQUEST_MAX_TRACES` | Max buffered traces (default: `1000`) |
356
+ | `A365_PER_REQUEST_MAX_SPANS_PER_TRACE` | Max spans per trace (default: `5000`) |
357
+ | `A365_PER_REQUEST_MAX_CONCURRENT_EXPORTS` | Max concurrent exports (default: `20`) |
358
+ | `A365_PER_REQUEST_FLUSH_GRACE_MS` | Grace period after root span ends (default: `250`) |
359
+ | `A365_PER_REQUEST_MAX_TRACE_AGE_MS` | Max trace age before forced flush (default: `1800000`) |
360
+ | `A365_OBSERVABILITY_TOKEN_EXCHANGE_TIMEOUT_MS` | Per-attempt timeout (ms) for agentic token exchange; `0` or negative disables (default: `30000`) |
360
361
 
361
362
  ### Example
362
363
 
363
364
  ```typescript
364
- import { useMicrosoftOpenTelemetry, shutdownMicrosoftOpenTelemetry } from "@microsoft/opentelemetry";
365
+ import {
366
+ useMicrosoftOpenTelemetry,
367
+ shutdownMicrosoftOpenTelemetry,
368
+ } from "@microsoft/opentelemetry";
365
369
  import { resourceFromAttributes } from "@opentelemetry/resources";
366
370
 
367
371
  useMicrosoftOpenTelemetry({
@@ -386,7 +390,6 @@ await shutdownMicrosoftOpenTelemetry();
386
390
 
387
391
  See the [samples/](./samples/) directory for working TypeScript examples covering connection setup, custom metrics, custom traces, sampling, OTLP dual-export, and more.
388
392
 
389
-
390
393
  ## Contributing
391
394
 
392
395
  See [CONTRIBUTING.md](./CONTRIBUTING.md).
@@ -1,4 +1,5 @@
1
1
  import type { A365Options, ClusterCategory } from "./A365ConfigurationOptions.js";
2
+ import type { ContextualTokenResolver } from "../exporter/Agent365ExporterOptions.js";
2
3
  /**
3
4
  * Environment variable names for A365 configuration.
4
5
  * These match the upstream Agent365-nodejs conventions.
@@ -23,6 +24,8 @@ export declare class A365Configuration {
23
24
  readonly enabled: boolean;
24
25
  /** Token resolver callback for A365 service authentication. */
25
26
  readonly tokenResolver?: (agentId: string, tenantId: string, authScopes?: string[]) => string | Promise<string>;
27
+ /** Contextual token resolver with rich context including the agentic user ID. */
28
+ readonly contextualTokenResolver?: ContextualTokenResolver;
26
29
  /** Cluster category. */
27
30
  readonly clusterCategory: ClusterCategory;
28
31
  /** Domain override for the A365 observability service. */
@@ -1 +1 @@
1
- {"version":3,"file":"A365Configuration.d.ts","sourceRoot":"","sources":["../../../../src/a365/configuration/A365Configuration.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAuBlF;;;GAGG;AACH,eAAO,MAAM,aAAa;;;;;;CAMhB,CAAC;AAmBX;;;;;;;GAOG;AACH,qBAAa,iBAAiB;IAC5B,6CAA6C;IAC7C,SAAgB,OAAO,EAAE,OAAO,CAAC;IAEjC,+DAA+D;IAC/D,SAAgB,aAAa,CAAC,EAAE,CAC9B,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,EAAE,KAClB,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAE9B,wBAAwB;IACxB,SAAgB,eAAe,EAAE,eAAe,CAAC;IAEjD,0DAA0D;IAC1D,SAAgB,cAAc,CAAC,EAAE,MAAM,CAAC;IAExC,oDAAoD;IACpD,SAAgB,UAAU,EAAE,MAAM,EAAE,CAAC;IAErC;;;;;;;;OAQG;IACH,SAAgB,2BAA2B,EAAE,OAAO,CAAC;IAErD;;;;;;OAMG;IACH,SAAgB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElC,uDAAuD;IACvD,SAAgB,cAAc,EAAE,OAAO,CAAC;IAExC,kDAAkD;IAClD,SAAgB,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtC,yDAAyD;IACzD,SAAgB,0BAA0B,CAAC,EAAE,MAAM,CAAC;IAEpD,sDAAsD;IACtD,SAAgB,2BAA2B,CAAC,EAAE,MAAM,CAAC;IAErD,gDAAgD;IAChD,SAAgB,8BAA8B,CAAC,EAAE,MAAM,CAAC;IAExD,gDAAgD;IAChD,SAAgB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5C,6DAA6D;IAC7D,SAAgB,eAAe,CAAC,EAAE,MAAM,CAAC;gBAE7B,OAAO,CAAC,EAAE,WAAW;IA2FjC,OAAO,CAAC,4BAA4B;CAcrC"}
1
+ {"version":3,"file":"A365Configuration.d.ts","sourceRoot":"","sources":["../../../../src/a365/configuration/A365Configuration.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAClF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AAuBtF;;;GAGG;AACH,eAAO,MAAM,aAAa;;;;;;CAMhB,CAAC;AAmBX;;;;;;;GAOG;AACH,qBAAa,iBAAiB;IAC5B,6CAA6C;IAC7C,SAAgB,OAAO,EAAE,OAAO,CAAC;IAEjC,+DAA+D;IAC/D,SAAgB,aAAa,CAAC,EAAE,CAC9B,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,EAAE,KAClB,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAE9B,iFAAiF;IACjF,SAAgB,uBAAuB,CAAC,EAAE,uBAAuB,CAAC;IAElE,wBAAwB;IACxB,SAAgB,eAAe,EAAE,eAAe,CAAC;IAEjD,0DAA0D;IAC1D,SAAgB,cAAc,CAAC,EAAE,MAAM,CAAC;IAExC,oDAAoD;IACpD,SAAgB,UAAU,EAAE,MAAM,EAAE,CAAC;IAErC;;;;;;;;OAQG;IACH,SAAgB,2BAA2B,EAAE,OAAO,CAAC;IAErD;;;;;;OAMG;IACH,SAAgB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElC,uDAAuD;IACvD,SAAgB,cAAc,EAAE,OAAO,CAAC;IAExC,kDAAkD;IAClD,SAAgB,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtC,yDAAyD;IACzD,SAAgB,0BAA0B,CAAC,EAAE,MAAM,CAAC;IAEpD,sDAAsD;IACtD,SAAgB,2BAA2B,CAAC,EAAE,MAAM,CAAC;IAErD,gDAAgD;IAChD,SAAgB,8BAA8B,CAAC,EAAE,MAAM,CAAC;IAExD,gDAAgD;IAChD,SAAgB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5C,6DAA6D;IAC7D,SAAgB,eAAe,CAAC,EAAE,MAAM,CAAC;gBAE7B,OAAO,CAAC,EAAE,WAAW;IA4FjC,OAAO,CAAC,4BAA4B;CAgBrC"}
@@ -64,6 +64,8 @@ class A365Configuration {
64
64
  enabled;
65
65
  /** Token resolver callback for A365 service authentication. */
66
66
  tokenResolver;
67
+ /** Contextual token resolver with rich context including the agentic user ID. */
68
+ contextualTokenResolver;
67
69
  /** Cluster category. */
68
70
  clusterCategory;
69
71
  /** Domain override for the A365 observability service. */
@@ -120,7 +122,7 @@ class A365Configuration {
120
122
  // ENABLE_A365_OBSERVABILITY_EXPORTER controls just the HTTP exporter, not
121
123
  // the master `enabled` toggle. It is a secondary toggle that only takes
122
124
  // effect when A365 is configured in code (options provided), matching the
123
- // Python distro behavior (see microsoft/opentelemetry-distro-python#87).
125
+ // Python package behavior (see microsoft/opentelemetry-distro-python#87).
124
126
  const envExporter = parseEnvBoolean(process.env[exports.A365_ENV_VARS.EXPORTER_ENABLED]);
125
127
  if (envExporter !== undefined &&
126
128
  options !== undefined &&
@@ -133,7 +135,7 @@ class A365Configuration {
133
135
  }
134
136
  // observabilityScopeOverride wins over authScopes / env var so callers can
135
137
  // narrow the resolved scope set to a single explicit value (mirrors the
136
- // Python distro's a365_observability_scope_override kwarg).
138
+ // Python package's a365_observability_scope_override kwarg).
137
139
  const scopeOverride = options?.observabilityScopeOverride?.trim();
138
140
  if (scopeOverride) {
139
141
  authScopes = [scopeOverride];
@@ -164,6 +166,7 @@ class A365Configuration {
164
166
  this.enabled = enabled;
165
167
  this.enableObservabilityExporter = enableObservabilityExporter;
166
168
  this.tokenResolver = options?.tokenResolver;
169
+ this.contextualTokenResolver = options?.contextualTokenResolver;
167
170
  this.clusterCategory = clusterCategory;
168
171
  this.domainOverride = domainOverride;
169
172
  this.authScopes = authScopes;
@@ -183,7 +186,9 @@ class A365Configuration {
183
186
  _warnIfOptionsSetButDisabled(options) {
184
187
  if (!options)
185
188
  return;
186
- const hasNonTrivialOptions = options.tokenResolver !== undefined || options.domainOverride !== undefined;
189
+ const hasNonTrivialOptions = options.tokenResolver !== undefined ||
190
+ options.contextualTokenResolver !== undefined ||
191
+ options.domainOverride !== undefined;
187
192
  if (hasNonTrivialOptions) {
188
193
  (0, logging_js_1.getA365Logger)().warn("A365 configuration options are set but A365 is not enabled. " +
189
194
  "Set `a365.enabled: true` or set `ENABLE_A365_OBSERVABILITY_EXPORTER=true` " +
@@ -1 +1 @@
1
- {"version":3,"file":"A365Configuration.js","sourceRoot":"","sources":["../../../../src/a365/configuration/A365Configuration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"A365Configuration.js","sourceRoot":"","sources":["../../../../src/a365/configuration/A365Configuration.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import type { ContextualTokenResolver } from "../exporter/Agent365ExporterOptions.js";
1
2
  /**
2
3
  * Cluster categories for A365 service endpoint resolution.
3
4
  * Mirrors the ClusterCategory enum from Agent365-nodejs.
@@ -16,8 +17,16 @@ export interface A365Options {
16
17
  * Token resolver for authenticating with the A365 observability service.
17
18
  * Called with (agentId, tenantId, authScopes) extracted from span attributes/config.
18
19
  * Must return a bearer token string or a promise resolving to one.
20
+ * When both this and {@link contextualTokenResolver} are set,
21
+ * {@link contextualTokenResolver} takes precedence.
19
22
  */
20
23
  tokenResolver?: (agentId: string, tenantId: string, authScopes?: string[]) => string | Promise<string>;
24
+ /**
25
+ * Contextual token resolver for authenticating with the A365 observability service.
26
+ * Receives rich context including the agentic user ID.
27
+ * Takes precedence over {@link tokenResolver} when set.
28
+ */
29
+ contextualTokenResolver?: ContextualTokenResolver;
21
30
  /** Cluster category for the A365 service endpoint. */
22
31
  clusterCategory?: ClusterCategory;
23
32
  /** Override the A365 observability service domain. */
@@ -29,7 +38,7 @@ export interface A365Options {
29
38
  *
30
39
  * Equivalent to the `A365_OBSERVABILITY_SCOPES_OVERRIDE` environment
31
40
  * variable; when supplied, it becomes the sole entry of the resolved
32
- * {@link authScopes} array. Mirrors the Python distro's
41
+ * {@link authScopes} array. Mirrors the Python package's
33
42
  * `a365_observability_scope_override` kwarg
34
43
  * (microsoft/opentelemetry-distro-python#87).
35
44
  *
@@ -1 +1 @@
1
- {"version":3,"file":"A365ConfigurationOptions.d.ts","sourceRoot":"","sources":["../../../../src/a365/configuration/A365ConfigurationOptions.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,MAAM,MAAM,eAAe,GACvB,OAAO,GACP,KAAK,GACL,MAAM,GACN,SAAS,GACT,cAAc,GACd,MAAM,GACN,KAAK,GACL,MAAM,GACN,KAAK,GACL,UAAU,GACV,IAAI,GACJ,IAAI,CAAC;AAET;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC1B,6EAA6E;IAC7E,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;;OAIG;IACH,aAAa,CAAC,EAAE,CACd,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,EAAE,KAClB,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAE9B,sDAAsD;IACtD,eAAe,CAAC,EAAE,eAAe,CAAC;IAElC,sDAAsD;IACtD,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,oDAAoD;IACpD,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IAEtB;;;;;;;;;;OAUG;IACH,0BAA0B,CAAC,EAAE,MAAM,CAAC;IAEpC;;;;;;;;;;;;OAYG;IACH,2BAA2B,CAAC,EAAE,OAAO,CAAC;IAEtC;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,sEAAsE;IACtE,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB,kDAAkD;IAClD,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,yDAAyD;IACzD,0BAA0B,CAAC,EAAE,MAAM,CAAC;IAEpC,sDAAsD;IACtD,2BAA2B,CAAC,EAAE,MAAM,CAAC;IAErC,iFAAiF;IACjF,8BAA8B,CAAC,EAAE,MAAM,CAAC;IAExC,gDAAgD;IAChD,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B,6DAA6D;IAC7D,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B"}
1
+ {"version":3,"file":"A365ConfigurationOptions.d.ts","sourceRoot":"","sources":["../../../../src/a365/configuration/A365ConfigurationOptions.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AAEtF;;;GAGG;AACH,MAAM,MAAM,eAAe,GACvB,OAAO,GACP,KAAK,GACL,MAAM,GACN,SAAS,GACT,cAAc,GACd,MAAM,GACN,KAAK,GACL,MAAM,GACN,KAAK,GACL,UAAU,GACV,IAAI,GACJ,IAAI,CAAC;AAET;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC1B,6EAA6E;IAC7E,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;;;;OAMG;IACH,aAAa,CAAC,EAAE,CACd,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,MAAM,EAAE,KAClB,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAE9B;;;;OAIG;IACH,uBAAuB,CAAC,EAAE,uBAAuB,CAAC;IAElD,sDAAsD;IACtD,eAAe,CAAC,EAAE,eAAe,CAAC;IAElC,sDAAsD;IACtD,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,oDAAoD;IACpD,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IAEtB;;;;;;;;;;OAUG;IACH,0BAA0B,CAAC,EAAE,MAAM,CAAC;IAEpC;;;;;;;;;;;;OAYG;IACH,2BAA2B,CAAC,EAAE,OAAO,CAAC;IAEtC;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,sEAAsE;IACtE,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB,kDAAkD;IAClD,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,yDAAyD;IACzD,0BAA0B,CAAC,EAAE,MAAM,CAAC;IAEpC,sDAAsD;IACtD,2BAA2B,CAAC,EAAE,MAAM,CAAC;IAErC,iFAAiF;IACjF,8BAA8B,CAAC,EAAE,MAAM,CAAC;IAExC,gDAAgD;IAChD,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B,6DAA6D;IAC7D,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B"}
@@ -1,92 +1,223 @@
1
1
  /**
2
2
  * OpenTelemetry constants for A365 observability.
3
3
  *
4
- * Attribute keys follow OTel gen-ai semantic conventions plus
4
+ * Provides the well-known span operation names, attribute keys, metric names,
5
+ * environment-variable names, and feature-flag switches used when emitting A365
6
+ * telemetry. Attribute keys follow OTel gen-ai semantic conventions plus
5
7
  * Microsoft-specific extensions under the `microsoft.*` namespace.
6
8
  *
7
9
  * Adapted from microsoft/Agent365-nodejs agents-a365-observability/src/tracing/constants.ts
8
10
  */
9
11
  export declare class OpenTelemetryConstants {
12
+ /** Operation name (`gen_ai.operation.name`) used for agent invocation spans. */
10
13
  static readonly INVOKE_AGENT_OPERATION_NAME = "invoke_agent";
14
+ /** Operation name used for tool-execution spans. */
11
15
  static readonly EXECUTE_TOOL_OPERATION_NAME = "execute_tool";
16
+ /** Operation name used for output-message spans. */
12
17
  static readonly OUTPUT_MESSAGES_OPERATION_NAME = "output_messages";
18
+ /** Operation name used for model chat/inference spans. */
13
19
  static readonly CHAT_OPERATION_NAME = "chat";
20
+ /** Attribute key for the error type recorded on a span (`error.type`). */
14
21
  static readonly ERROR_TYPE_KEY = "error.type";
22
+ /** Error-type value used when an operation was cancelled. */
15
23
  static readonly ERROR_TYPE_CANCELLED = "TaskCanceledException";
24
+ /** Attribute key for a human-readable error message (`error.message`). */
16
25
  static readonly ERROR_MESSAGE_KEY = "error.message";
26
+ /** Attribute key for the Azure resource provider namespace (`az.namespace`). */
17
27
  static readonly AZ_NAMESPACE_KEY = "az.namespace";
28
+ /** Attribute key for the destination server host name (`server.address`). */
18
29
  static readonly SERVER_ADDRESS_KEY = "server.address";
30
+ /** Attribute key for the destination server port (`server.port`). */
19
31
  static readonly SERVER_PORT_KEY = "server.port";
32
+ /** Azure resource provider namespace value for Cognitive Services. */
20
33
  static readonly AZURE_RP_NAMESPACE_VALUE = "Microsoft.CognitiveServices";
34
+ /** Tracer/instrumentation-scope name used for all A365 spans. */
21
35
  static readonly SOURCE_NAME = "Agent365Sdk";
36
+ /** Feature-switch name that enables the experimental activity source. */
22
37
  static readonly ENABLE_OPENTELEMETRY_SWITCH = "Azure.Experimental.EnableActivitySource";
38
+ /** Feature-switch name that enables tracing of gen-ai message content. */
23
39
  static readonly TRACE_CONTENTS_SWITCH = "Azure.Experimental.TraceGenAIMessageContent";
40
+ /** Environment-variable name that enables recording of gen-ai message content. */
24
41
  static readonly TRACE_CONTENTS_ENVIRONMENT_VARIABLE = "AZURE_TRACING_GEN_AI_CONTENT_RECORDING_ENABLED";
42
+ /** Environment-variable name that enables observability. */
25
43
  static readonly ENABLE_OBSERVABILITY = "ENABLE_OBSERVABILITY";
44
+ /** Environment-variable name that enables the A365 observability exporter. */
26
45
  static readonly ENABLE_A365_OBSERVABILITY_EXPORTER = "ENABLE_A365_OBSERVABILITY_EXPORTER";
46
+ /** Environment-variable name that enables A365 observability. */
27
47
  static readonly ENABLE_A365_OBSERVABILITY = "ENABLE_A365_OBSERVABILITY";
48
+ /** Attribute key for the gen-ai operation name (`gen_ai.operation.name`). */
28
49
  static readonly GEN_AI_OPERATION_NAME_KEY = "gen_ai.operation.name";
50
+ /** Attribute key for the requested model name (`gen_ai.request.model`). */
29
51
  static readonly GEN_AI_REQUEST_MODEL_KEY = "gen_ai.request.model";
52
+ /** Attribute key for the model that produced the response (`gen_ai.response.model`). */
30
53
  static readonly GEN_AI_RESPONSE_MODEL_KEY = "gen_ai.response.model";
54
+ /** Attribute key for the finish reasons returned by the model (`gen_ai.response.finish_reasons`). */
31
55
  static readonly GEN_AI_RESPONSE_FINISH_REASONS_KEY = "gen_ai.response.finish_reasons";
56
+ /** Attribute key for the gen-ai provider name (`gen_ai.provider.name`). */
32
57
  static readonly GEN_AI_PROVIDER_NAME_KEY = "gen_ai.provider.name";
58
+ /** Attribute key for the requested maximum number of tokens (`gen_ai.request.max_tokens`). */
33
59
  static readonly GEN_AI_REQUEST_MAX_TOKENS_KEY = "gen_ai.request.max_tokens";
60
+ /** Attribute key for the sampling temperature (`gen_ai.request.temperature`). */
34
61
  static readonly GEN_AI_REQUEST_TEMPERATURE_KEY = "gen_ai.request.temperature";
62
+ /** Attribute key for the nucleus-sampling top-p value (`gen_ai.request.top_p`). */
35
63
  static readonly GEN_AI_REQUEST_TOP_P_KEY = "gen_ai.request.top_p";
64
+ /** Attribute key for a gen-ai choice (`gen_ai.choice`). */
36
65
  static readonly GEN_AI_CHOICE = "gen_ai.choice";
66
+ /** Metric name for the gen-ai client operation duration. */
37
67
  static readonly GEN_AI_CLIENT_OPERATION_DURATION_METRIC_NAME = "gen_ai.client.operation.duration";
68
+ /** Metric name for gen-ai client token usage. */
38
69
  static readonly GEN_AI_CLIENT_TOKEN_USAGE_METRIC_NAME = "gen_ai.client.token.usage";
70
+ /** Attribute key for the number of input (prompt) tokens (`gen_ai.usage.input_tokens`). */
39
71
  static readonly GEN_AI_USAGE_INPUT_TOKENS_KEY = "gen_ai.usage.input_tokens";
72
+ /** Attribute key for the number of output (completion) tokens (`gen_ai.usage.output_tokens`). */
40
73
  static readonly GEN_AI_USAGE_OUTPUT_TOKENS_KEY = "gen_ai.usage.output_tokens";
74
+ /** Attribute key for the system instructions (`gen_ai.system_instructions`). */
41
75
  static readonly GEN_AI_SYSTEM_INSTRUCTIONS_KEY = "gen_ai.system_instructions";
76
+ /** Attribute key for the serialized input messages (`gen_ai.input.messages`). */
42
77
  static readonly GEN_AI_INPUT_MESSAGES_KEY = "gen_ai.input.messages";
78
+ /** Attribute key for the serialized output messages (`gen_ai.output.messages`). */
43
79
  static readonly GEN_AI_OUTPUT_MESSAGES_KEY = "gen_ai.output.messages";
80
+ /** Attribute key for the A365 messages schema version. */
44
81
  static readonly A365_MESSAGES_SCHEMA_VERSION_KEY = "microsoft.a365.messages.schema_version";
82
+ /** Attribute key for the agent identifier (`gen_ai.agent.id`). */
45
83
  static readonly GEN_AI_AGENT_ID_KEY = "gen_ai.agent.id";
84
+ /** Attribute key for the agent display name (`gen_ai.agent.name`). */
46
85
  static readonly GEN_AI_AGENT_NAME_KEY = "gen_ai.agent.name";
86
+ /** Attribute key for the agent description (`gen_ai.agent.description`). */
47
87
  static readonly GEN_AI_AGENT_DESCRIPTION_KEY = "gen_ai.agent.description";
88
+ /** Attribute key for the agent version (`gen_ai.agent.version`). */
48
89
  static readonly GEN_AI_AGENT_VERSION_KEY = "gen_ai.agent.version";
90
+ /** Attribute key for the agent platform identifier (`microsoft.a365.agent.platform.id`). */
49
91
  static readonly GEN_AI_AGENT_PLATFORM_ID_KEY = "microsoft.a365.agent.platform.id";
92
+ /** Attribute key for the agent thought process (`microsoft.a365.agent.thought.process`). */
50
93
  static readonly GEN_AI_AGENT_THOUGHT_PROCESS_KEY = "microsoft.a365.agent.thought.process";
94
+ /** Attribute key for the agent icon URI (`gen_ai.agent365.icon_uri`). */
51
95
  static readonly GEN_AI_ICON_URI_KEY = "gen_ai.agent365.icon_uri";
96
+ /** Attribute key for the agent identifier (alias of {@link GEN_AI_AGENT_ID_KEY}). */
52
97
  static readonly AGENT_ID_KEY = "gen_ai.agent.id";
98
+ /** Attribute key for the conversation identifier (`gen_ai.conversation.id`). */
53
99
  static readonly GEN_AI_CONVERSATION_ID_KEY = "gen_ai.conversation.id";
100
+ /** Attribute key for the conversation item deep link (`microsoft.conversation.item.link`). */
54
101
  static readonly GEN_AI_CONVERSATION_ITEM_LINK_KEY = "microsoft.conversation.item.link";
102
+ /** Attribute key for the session identifier (`microsoft.session.id`). */
55
103
  static readonly SESSION_ID_KEY = "microsoft.session.id";
104
+ /** Attribute key for the session description (`microsoft.session.description`). */
56
105
  static readonly SESSION_DESCRIPTION_KEY = "microsoft.session.description";
106
+ /** Attribute key for the tool-call identifier (`gen_ai.tool.call.id`). */
57
107
  static readonly GEN_AI_TOOL_CALL_ID_KEY = "gen_ai.tool.call.id";
108
+ /** Attribute key for the tool name (`gen_ai.tool.name`). */
58
109
  static readonly GEN_AI_TOOL_NAME_KEY = "gen_ai.tool.name";
110
+ /** Attribute key for the tool description (`gen_ai.tool.description`). */
59
111
  static readonly GEN_AI_TOOL_DESCRIPTION_KEY = "gen_ai.tool.description";
112
+ /** Attribute key for the serialized tool-call arguments (`gen_ai.tool.call.arguments`). */
60
113
  static readonly GEN_AI_TOOL_ARGS_KEY = "gen_ai.tool.call.arguments";
114
+ /** Attribute key for the tool-call result (`gen_ai.tool.call.result`). */
61
115
  static readonly GEN_AI_TOOL_CALL_RESULT_KEY = "gen_ai.tool.call.result";
116
+ /** Attribute key for the tool type (`gen_ai.tool.type`). */
62
117
  static readonly GEN_AI_TOOL_TYPE_KEY = "gen_ai.tool.type";
118
+ /** Attribute key for the tenant identifier (`microsoft.tenant.id`). */
63
119
  static readonly TENANT_ID_KEY = "microsoft.tenant.id";
120
+ /** Attribute key for the user identifier (`user.id`). */
64
121
  static readonly USER_ID_KEY = "user.id";
122
+ /** Attribute key for the user display name (`user.name`). */
65
123
  static readonly USER_NAME_KEY = "user.name";
124
+ /** Attribute key for the user email address (`user.email`). */
66
125
  static readonly USER_EMAIL_KEY = "user.email";
126
+ /** Attribute key for the caller client IP address (`client.address`). */
67
127
  static readonly GEN_AI_CALLER_CLIENT_IP_KEY = "client.address";
128
+ /** Attribute key for the calling agent's agentic user identifier. */
68
129
  static readonly GEN_AI_CALLER_AGENT_USER_ID_KEY = "microsoft.a365.caller.agent.user.id";
130
+ /** Attribute key for the calling agent's agentic user email. */
69
131
  static readonly GEN_AI_CALLER_AGENT_EMAIL_KEY = "microsoft.a365.caller.agent.user.email";
132
+ /** Attribute key for the calling agent's name. */
70
133
  static readonly GEN_AI_CALLER_AGENT_NAME_KEY = "microsoft.a365.caller.agent.name";
134
+ /** Attribute key for the calling agent's identifier. */
71
135
  static readonly GEN_AI_CALLER_AGENT_ID_KEY = "microsoft.a365.caller.agent.id";
136
+ /** Attribute key for the calling agent's blueprint (application) identifier. */
72
137
  static readonly GEN_AI_CALLER_AGENT_APPLICATION_ID_KEY = "microsoft.a365.caller.agent.blueprint.id";
138
+ /** Attribute key for the calling agent's platform identifier. */
73
139
  static readonly GEN_AI_CALLER_AGENT_PLATFORM_ID_KEY = "microsoft.a365.caller.agent.platform.id";
140
+ /** Attribute key for the calling agent's version. */
74
141
  static readonly GEN_AI_CALLER_AGENT_VERSION_KEY = "microsoft.a365.caller.agent.version";
142
+ /** Attribute/baggage key for the agentic user identifier (`microsoft.agent.user.id`). */
75
143
  static readonly GEN_AI_AGENT_AUID_KEY = "microsoft.agent.user.id";
144
+ /** Attribute/baggage key for the agentic user email (`microsoft.agent.user.email`). */
76
145
  static readonly GEN_AI_AGENT_EMAIL_KEY = "microsoft.agent.user.email";
146
+ /** Attribute/baggage key for the agent blueprint identifier (`microsoft.a365.agent.blueprint.id`). */
77
147
  static readonly GEN_AI_AGENT_BLUEPRINT_ID_KEY = "microsoft.a365.agent.blueprint.id";
148
+ /** Attribute key for the task identifier (`gen_ai.task.id`). */
78
149
  static readonly GEN_AI_TASK_ID_KEY = "gen_ai.task.id";
150
+ /** Attribute key for the execution payload (`gen_ai.execution.payload`). */
79
151
  static readonly GEN_AI_EXECUTION_PAYLOAD_KEY = "gen_ai.execution.payload";
152
+ /** Attribute key for the channel name (`microsoft.channel.name`). */
80
153
  static readonly CHANNEL_NAME_KEY = "microsoft.channel.name";
154
+ /** Attribute key for the channel link/description (`microsoft.channel.link`). */
81
155
  static readonly CHANNEL_LINK_KEY = "microsoft.channel.link";
156
+ /** Attribute key for a custom parent span identifier (`custom.parent.span.id`). */
82
157
  static readonly CUSTOM_PARENT_SPAN_ID_KEY = "custom.parent.span.id";
158
+ /** Attribute key for a custom span name (`custom.span.name`). */
83
159
  static readonly CUSTOM_SPAN_NAME_KEY = "custom.span.name";
160
+ /** Attribute key for the service name (`service.name`). */
84
161
  static readonly SERVICE_NAME_KEY = "service.name";
162
+ /** Attribute key for the telemetry SDK name (`telemetry.sdk.name`). */
85
163
  static readonly TELEMETRY_SDK_NAME_KEY = "telemetry.sdk.name";
164
+ /** Attribute key for the telemetry SDK language (`telemetry.sdk.language`). */
86
165
  static readonly TELEMETRY_SDK_LANGUAGE_KEY = "telemetry.sdk.language";
166
+ /** Attribute key for the telemetry SDK version (`telemetry.sdk.version`). */
87
167
  static readonly TELEMETRY_SDK_VERSION_KEY = "telemetry.sdk.version";
88
- static readonly TELEMETRY_SDK_NAME_VALUE = "A365ObservabilitySDK";
168
+ /** Telemetry SDK name value reported by this distro. */
169
+ static readonly TELEMETRY_SDK_NAME_VALUE = "microsoft-opentelemetry";
170
+ /** Telemetry SDK language value reported by this distro. */
89
171
  static readonly TELEMETRY_SDK_LANGUAGE_VALUE = "nodejs";
90
- static readonly TELEMETRY_SDK_VERSION_VALUE = "1.0.2";
172
+ /** Telemetry SDK version value reported by this distro. */
173
+ static readonly TELEMETRY_SDK_VERSION_VALUE = "1.2.0";
174
+ /** Operation name used for guardrail-evaluation spans. */
175
+ static readonly APPLY_GUARDRAIL_OPERATION_NAME = "apply_guardrail";
176
+ /** Attribute key for the guardian identifier (`microsoft.guardian.id`). */
177
+ static readonly GUARDIAN_ID_KEY = "microsoft.guardian.id";
178
+ /** Attribute key for the guardian name (`microsoft.guardian.name`). */
179
+ static readonly GUARDIAN_NAME_KEY = "microsoft.guardian.name";
180
+ /** Attribute key for the guardian provider name (`microsoft.guardian.provider.name`). */
181
+ static readonly GUARDIAN_PROVIDER_NAME_KEY = "microsoft.guardian.provider.name";
182
+ /** Attribute key for the guardian version (`microsoft.guardian.version`). */
183
+ static readonly GUARDIAN_VERSION_KEY = "microsoft.guardian.version";
184
+ /** Attribute key for the guardrail decision type (`microsoft.security.decision.type`). */
185
+ static readonly SECURITY_DECISION_TYPE_KEY = "microsoft.security.decision.type";
186
+ /** Attribute key for the guardrail decision reason (`microsoft.security.decision.reason`). */
187
+ static readonly SECURITY_DECISION_REASON_KEY = "microsoft.security.decision.reason";
188
+ /** Attribute key for the guardrail decision code (`microsoft.security.decision.code`). */
189
+ static readonly SECURITY_DECISION_CODE_KEY = "microsoft.security.decision.code";
190
+ /** Attribute key for the guardrail target type (`microsoft.security.target.type`). */
191
+ static readonly SECURITY_TARGET_TYPE_KEY = "microsoft.security.target.type";
192
+ /** Attribute key for the guardrail target identifier (`microsoft.security.target.id`). */
193
+ static readonly SECURITY_TARGET_ID_KEY = "microsoft.security.target.id";
194
+ /** Attribute key for the security policy identifier (`microsoft.security.policy.id`). */
195
+ static readonly SECURITY_POLICY_ID_KEY = "microsoft.security.policy.id";
196
+ /** Attribute key for the security policy name (`microsoft.security.policy.name`). */
197
+ static readonly SECURITY_POLICY_NAME_KEY = "microsoft.security.policy.name";
198
+ /** Attribute key for the security policy version (`microsoft.security.policy.version`). */
199
+ static readonly SECURITY_POLICY_VERSION_KEY = "microsoft.security.policy.version";
200
+ /** Attribute key for the security policy decision type (`microsoft.security.policy.decision.type`). */
201
+ static readonly SECURITY_POLICY_DECISION_TYPE_KEY = "microsoft.security.policy.decision.type";
202
+ /** Attribute key for the hash of guarded input content (`microsoft.security.content.input.hash`). */
203
+ static readonly SECURITY_CONTENT_INPUT_HASH_KEY = "microsoft.security.content.input.hash";
204
+ /** Attribute key indicating whether guarded content was modified (`microsoft.security.content.modified`). */
205
+ static readonly SECURITY_CONTENT_MODIFIED_KEY = "microsoft.security.content.modified";
206
+ /** Attribute key for the guarded input content value (`microsoft.security.content.input.value`). */
207
+ static readonly SECURITY_CONTENT_INPUT_VALUE_KEY = "microsoft.security.content.input.value";
208
+ /** Attribute key for the guarded output content value (`microsoft.security.content.output.value`). */
209
+ static readonly SECURITY_CONTENT_OUTPUT_VALUE_KEY = "microsoft.security.content.output.value";
210
+ /** Attribute key for an external correlation identifier for SIEM systems (`microsoft.security.external_event_id`). */
211
+ static readonly SECURITY_EXTERNAL_EVENT_ID_KEY = "microsoft.security.external_event_id";
212
+ /** Event name emitted for a security finding (`microsoft.security.finding`). */
213
+ static readonly SECURITY_FINDING_EVENT_NAME = "microsoft.security.finding";
214
+ /** Attribute key for the detected risk category (`microsoft.security.risk.category`). */
215
+ static readonly SECURITY_RISK_CATEGORY_KEY = "microsoft.security.risk.category";
216
+ /** Attribute key for the detected risk severity (`microsoft.security.risk.severity`). */
217
+ static readonly SECURITY_RISK_SEVERITY_KEY = "microsoft.security.risk.severity";
218
+ /** Attribute key for the numeric risk score (`microsoft.security.risk.score`). */
219
+ static readonly SECURITY_RISK_SCORE_KEY = "microsoft.security.risk.score";
220
+ /** Attribute key for non-content risk metadata (`microsoft.security.risk.metadata`). */
221
+ static readonly SECURITY_RISK_METADATA_KEY = "microsoft.security.risk.metadata";
91
222
  }
92
223
  //# sourceMappingURL=constants.d.ts.map