@microsoft/opentelemetry 1.0.1 → 1.1.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 (344) hide show
  1. package/README.md +70 -68
  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 +6 -1
  5. package/dist/commonjs/a365/configuration/A365Configuration.js.map +1 -1
  6. package/dist/commonjs/a365/configuration/A365ConfigurationOptions.d.ts +9 -0
  7. package/dist/commonjs/a365/configuration/A365ConfigurationOptions.d.ts.map +1 -1
  8. package/dist/commonjs/a365/constants.d.ts +26 -2
  9. package/dist/commonjs/a365/constants.d.ts.map +1 -1
  10. package/dist/commonjs/a365/constants.js +33 -1
  11. package/dist/commonjs/a365/constants.js.map +1 -1
  12. package/dist/commonjs/a365/contracts.d.ts +108 -8
  13. package/dist/commonjs/a365/contracts.d.ts.map +1 -1
  14. package/dist/commonjs/a365/contracts.js +48 -3
  15. package/dist/commonjs/a365/contracts.js.map +1 -1
  16. package/dist/commonjs/a365/exporter/Agent365Exporter.d.ts.map +1 -1
  17. package/dist/commonjs/a365/exporter/Agent365Exporter.js +55 -3
  18. package/dist/commonjs/a365/exporter/Agent365Exporter.js.map +1 -1
  19. package/dist/commonjs/a365/exporter/Agent365ExporterOptions.d.ts +20 -1
  20. package/dist/commonjs/a365/exporter/Agent365ExporterOptions.d.ts.map +1 -1
  21. package/dist/commonjs/a365/exporter/Agent365ExporterOptions.js +2 -0
  22. package/dist/commonjs/a365/exporter/Agent365ExporterOptions.js.map +1 -1
  23. package/dist/commonjs/a365/exporter/AgentIdentity.d.ts +17 -0
  24. package/dist/commonjs/a365/exporter/AgentIdentity.d.ts.map +1 -0
  25. package/dist/commonjs/a365/exporter/AgentIdentity.js +5 -0
  26. package/dist/commonjs/a365/exporter/AgentIdentity.js.map +1 -0
  27. package/dist/commonjs/a365/exporter/TokenResolverContext.d.ts +18 -0
  28. package/dist/commonjs/a365/exporter/TokenResolverContext.d.ts.map +1 -0
  29. package/dist/commonjs/a365/exporter/TokenResolverContext.js +5 -0
  30. package/dist/commonjs/a365/exporter/TokenResolverContext.js.map +1 -0
  31. package/dist/commonjs/a365/exporter/index.d.ts +3 -1
  32. package/dist/commonjs/a365/exporter/index.d.ts.map +1 -1
  33. package/dist/commonjs/a365/exporter/index.js.map +1 -1
  34. package/dist/commonjs/a365/exporter/utils.d.ts +5 -0
  35. package/dist/commonjs/a365/exporter/utils.d.ts.map +1 -1
  36. package/dist/commonjs/a365/exporter/utils.js +23 -25
  37. package/dist/commonjs/a365/exporter/utils.js.map +1 -1
  38. package/dist/commonjs/a365/hosting/index.d.ts +1 -1
  39. package/dist/commonjs/a365/hosting/index.d.ts.map +1 -1
  40. package/dist/commonjs/a365/hosting/index.js +2 -1
  41. package/dist/commonjs/a365/hosting/index.js.map +1 -1
  42. package/dist/commonjs/a365/hosting/scopeUtils.js +1 -1
  43. package/dist/commonjs/a365/hosting/scopeUtils.js.map +1 -1
  44. package/dist/commonjs/a365/hosting/turnContextUtils.d.ts +6 -1
  45. package/dist/commonjs/a365/hosting/turnContextUtils.d.ts.map +1 -1
  46. package/dist/commonjs/a365/hosting/turnContextUtils.js +30 -4
  47. package/dist/commonjs/a365/hosting/turnContextUtils.js.map +1 -1
  48. package/dist/commonjs/a365/hosting/types.d.ts +1 -0
  49. package/dist/commonjs/a365/hosting/types.d.ts.map +1 -1
  50. package/dist/commonjs/a365/index.d.ts +5 -5
  51. package/dist/commonjs/a365/index.d.ts.map +1 -1
  52. package/dist/commonjs/a365/index.js +8 -2
  53. package/dist/commonjs/a365/index.js.map +1 -1
  54. package/dist/commonjs/a365/message-utils.d.ts +10 -5
  55. package/dist/commonjs/a365/message-utils.d.ts.map +1 -1
  56. package/dist/commonjs/a365/message-utils.js +27 -24
  57. package/dist/commonjs/a365/message-utils.js.map +1 -1
  58. package/dist/commonjs/a365/processors/A365SpanProcessor.d.ts +3 -0
  59. package/dist/commonjs/a365/processors/A365SpanProcessor.d.ts.map +1 -1
  60. package/dist/commonjs/a365/processors/A365SpanProcessor.js +12 -4
  61. package/dist/commonjs/a365/processors/A365SpanProcessor.js.map +1 -1
  62. package/dist/commonjs/a365/scopes/ApplyGuardrailScope.d.ts +45 -0
  63. package/dist/commonjs/a365/scopes/ApplyGuardrailScope.d.ts.map +1 -0
  64. package/dist/commonjs/a365/scopes/ApplyGuardrailScope.js +132 -0
  65. package/dist/commonjs/a365/scopes/ApplyGuardrailScope.js.map +1 -0
  66. package/dist/commonjs/a365/scopes/OpenTelemetryScope.d.ts +7 -1
  67. package/dist/commonjs/a365/scopes/OpenTelemetryScope.d.ts.map +1 -1
  68. package/dist/commonjs/a365/scopes/OpenTelemetryScope.js +8 -0
  69. package/dist/commonjs/a365/scopes/OpenTelemetryScope.js.map +1 -1
  70. package/dist/commonjs/a365/scopes/OutputScope.d.ts.map +1 -1
  71. package/dist/commonjs/a365/scopes/OutputScope.js +2 -4
  72. package/dist/commonjs/a365/scopes/OutputScope.js.map +1 -1
  73. package/dist/commonjs/a365/scopes/index.d.ts +1 -0
  74. package/dist/commonjs/a365/scopes/index.d.ts.map +1 -1
  75. package/dist/commonjs/a365/scopes/index.js +3 -1
  76. package/dist/commonjs/a365/scopes/index.js.map +1 -1
  77. package/dist/commonjs/azureMonitor/index.d.ts +4 -4
  78. package/dist/commonjs/azureMonitor/index.d.ts.map +1 -1
  79. package/dist/commonjs/azureMonitor/index.js +3 -3
  80. package/dist/commonjs/azureMonitor/index.js.map +1 -1
  81. package/dist/commonjs/azureMonitor/metrics/quickpulse/liveMetrics.d.ts +1 -1
  82. package/dist/commonjs/azureMonitor/metrics/quickpulse/liveMetrics.d.ts.map +1 -1
  83. package/dist/commonjs/azureMonitor/metrics/quickpulse/liveMetrics.js +6 -6
  84. package/dist/commonjs/azureMonitor/metrics/quickpulse/liveMetrics.js.map +1 -1
  85. package/dist/commonjs/distro/distro.d.ts.map +1 -1
  86. package/dist/commonjs/distro/distro.js +66 -32
  87. package/dist/commonjs/distro/distro.js.map +1 -1
  88. package/dist/commonjs/genai/index.d.ts +1 -0
  89. package/dist/commonjs/genai/index.d.ts.map +1 -1
  90. package/dist/commonjs/genai/index.js +9 -0
  91. package/dist/commonjs/genai/index.js.map +1 -1
  92. package/dist/commonjs/genai/instrumentations/langchain/tracer.d.ts +3 -3
  93. package/dist/commonjs/genai/instrumentations/langchain/tracer.d.ts.map +1 -1
  94. package/dist/commonjs/genai/instrumentations/langchain/tracer.js +31 -9
  95. package/dist/commonjs/genai/instrumentations/langchain/tracer.js.map +1 -1
  96. package/dist/commonjs/genai/instrumentations/langchain/utils.d.ts +6 -0
  97. package/dist/commonjs/genai/instrumentations/langchain/utils.d.ts.map +1 -1
  98. package/dist/commonjs/genai/instrumentations/langchain/utils.js +159 -21
  99. package/dist/commonjs/genai/instrumentations/langchain/utils.js.map +1 -1
  100. package/dist/commonjs/genai/instrumentations/openai/openAIAgentsTraceProcessor.d.ts +2 -2
  101. package/dist/commonjs/genai/instrumentations/openai/openAIAgentsTraceProcessor.d.ts.map +1 -1
  102. package/dist/commonjs/genai/instrumentations/openai/openAIAgentsTraceProcessor.js +1 -1
  103. package/dist/commonjs/genai/instrumentations/openai/utils.d.ts +1 -1
  104. package/dist/commonjs/genai/instrumentations/openai/utils.d.ts.map +1 -1
  105. package/dist/commonjs/genai/instrumentations/openai/utils.js +9 -4
  106. package/dist/commonjs/genai/instrumentations/openai/utils.js.map +1 -1
  107. package/dist/commonjs/genai/mainAgent/constants.d.ts +16 -0
  108. package/dist/commonjs/genai/mainAgent/constants.d.ts.map +1 -0
  109. package/dist/commonjs/genai/mainAgent/constants.js +21 -0
  110. package/dist/commonjs/genai/mainAgent/constants.js.map +1 -0
  111. package/dist/commonjs/genai/mainAgent/index.d.ts +3 -0
  112. package/dist/commonjs/genai/mainAgent/index.d.ts.map +1 -0
  113. package/dist/commonjs/genai/mainAgent/index.js +15 -0
  114. package/dist/commonjs/genai/mainAgent/index.js.map +1 -0
  115. package/dist/commonjs/genai/mainAgent/processor.d.ts +39 -0
  116. package/dist/commonjs/genai/mainAgent/processor.d.ts.map +1 -0
  117. package/dist/commonjs/genai/mainAgent/processor.js +125 -0
  118. package/dist/commonjs/genai/mainAgent/processor.js.map +1 -0
  119. package/dist/commonjs/genai/semconv.d.ts +3 -0
  120. package/dist/commonjs/genai/semconv.d.ts.map +1 -1
  121. package/dist/commonjs/genai/semconv.js +4 -1
  122. package/dist/commonjs/genai/semconv.js.map +1 -1
  123. package/dist/commonjs/index.d.ts +4 -3
  124. package/dist/commonjs/index.d.ts.map +1 -1
  125. package/dist/commonjs/index.js +16 -2
  126. package/dist/commonjs/index.js.map +1 -1
  127. package/dist/commonjs/otlp/handler.d.ts.map +1 -1
  128. package/dist/commonjs/otlp/handler.js +17 -3
  129. package/dist/commonjs/otlp/handler.js.map +1 -1
  130. package/dist/commonjs/sdkstats/index.d.ts +4 -0
  131. package/dist/commonjs/sdkstats/index.d.ts.map +1 -1
  132. package/dist/commonjs/sdkstats/index.js +12 -1
  133. package/dist/commonjs/sdkstats/index.js.map +1 -1
  134. package/dist/commonjs/sdkstats/manager.d.ts +7 -3
  135. package/dist/commonjs/sdkstats/manager.d.ts.map +1 -1
  136. package/dist/commonjs/sdkstats/manager.js +98 -25
  137. package/dist/commonjs/sdkstats/manager.js.map +1 -1
  138. package/dist/commonjs/sdkstats/metrics.d.ts +46 -2
  139. package/dist/commonjs/sdkstats/metrics.d.ts.map +1 -1
  140. package/dist/commonjs/sdkstats/metrics.js +82 -13
  141. package/dist/commonjs/sdkstats/metrics.js.map +1 -1
  142. package/dist/commonjs/sdkstats/networkStats.d.ts +57 -0
  143. package/dist/commonjs/sdkstats/networkStats.d.ts.map +1 -0
  144. package/dist/commonjs/sdkstats/networkStats.js +126 -0
  145. package/dist/commonjs/sdkstats/networkStats.js.map +1 -0
  146. package/dist/commonjs/sdkstats/otlpWrapper.d.ts +56 -0
  147. package/dist/commonjs/sdkstats/otlpWrapper.d.ts.map +1 -0
  148. package/dist/commonjs/sdkstats/otlpWrapper.js +121 -0
  149. package/dist/commonjs/sdkstats/otlpWrapper.js.map +1 -0
  150. package/dist/commonjs/sdkstats/state.d.ts +6 -6
  151. package/dist/commonjs/sdkstats/state.d.ts.map +1 -1
  152. package/dist/commonjs/sdkstats/state.js +2 -2
  153. package/dist/commonjs/sdkstats/state.js.map +1 -1
  154. package/dist/commonjs/types.d.ts +16 -16
  155. package/dist/commonjs/types.d.ts.map +1 -1
  156. package/dist/commonjs/types.js +88 -88
  157. package/dist/commonjs/types.js.map +1 -1
  158. package/dist/commonjs/utils/index.d.ts +1 -1
  159. package/dist/commonjs/utils/index.d.ts.map +1 -1
  160. package/dist/commonjs/utils/index.js +2 -2
  161. package/dist/commonjs/utils/index.js.map +1 -1
  162. package/dist/commonjs/utils/opentelemetryInstrumentationPatcher.d.ts +1 -1
  163. package/dist/commonjs/utils/opentelemetryInstrumentationPatcher.js +11 -11
  164. package/dist/commonjs/utils/opentelemetryInstrumentationPatcher.js.map +1 -1
  165. package/dist/commonjs/utils/sdkStats.d.ts +15 -0
  166. package/dist/commonjs/utils/sdkStats.d.ts.map +1 -0
  167. package/dist/commonjs/utils/sdkStats.js +127 -0
  168. package/dist/commonjs/utils/sdkStats.js.map +1 -0
  169. package/dist/esm/a365/configuration/A365Configuration.d.ts +3 -0
  170. package/dist/esm/a365/configuration/A365Configuration.d.ts.map +1 -1
  171. package/dist/esm/a365/configuration/A365Configuration.js +6 -1
  172. package/dist/esm/a365/configuration/A365Configuration.js.map +1 -1
  173. package/dist/esm/a365/configuration/A365ConfigurationOptions.d.ts +9 -0
  174. package/dist/esm/a365/configuration/A365ConfigurationOptions.d.ts.map +1 -1
  175. package/dist/esm/a365/constants.d.ts +26 -2
  176. package/dist/esm/a365/constants.d.ts.map +1 -1
  177. package/dist/esm/a365/constants.js +33 -1
  178. package/dist/esm/a365/constants.js.map +1 -1
  179. package/dist/esm/a365/contracts.d.ts +108 -8
  180. package/dist/esm/a365/contracts.d.ts.map +1 -1
  181. package/dist/esm/a365/contracts.js +47 -2
  182. package/dist/esm/a365/contracts.js.map +1 -1
  183. package/dist/esm/a365/exporter/Agent365Exporter.d.ts.map +1 -1
  184. package/dist/esm/a365/exporter/Agent365Exporter.js +56 -4
  185. package/dist/esm/a365/exporter/Agent365Exporter.js.map +1 -1
  186. package/dist/esm/a365/exporter/Agent365ExporterOptions.d.ts +20 -1
  187. package/dist/esm/a365/exporter/Agent365ExporterOptions.d.ts.map +1 -1
  188. package/dist/esm/a365/exporter/Agent365ExporterOptions.js +2 -0
  189. package/dist/esm/a365/exporter/Agent365ExporterOptions.js.map +1 -1
  190. package/dist/esm/a365/exporter/AgentIdentity.d.ts +17 -0
  191. package/dist/esm/a365/exporter/AgentIdentity.d.ts.map +1 -0
  192. package/dist/esm/a365/exporter/AgentIdentity.js +4 -0
  193. package/dist/esm/a365/exporter/AgentIdentity.js.map +1 -0
  194. package/dist/esm/a365/exporter/TokenResolverContext.d.ts +18 -0
  195. package/dist/esm/a365/exporter/TokenResolverContext.d.ts.map +1 -0
  196. package/dist/esm/a365/exporter/TokenResolverContext.js +4 -0
  197. package/dist/esm/a365/exporter/TokenResolverContext.js.map +1 -0
  198. package/dist/esm/a365/exporter/index.d.ts +3 -1
  199. package/dist/esm/a365/exporter/index.d.ts.map +1 -1
  200. package/dist/esm/a365/exporter/index.js.map +1 -1
  201. package/dist/esm/a365/exporter/utils.d.ts +5 -0
  202. package/dist/esm/a365/exporter/utils.d.ts.map +1 -1
  203. package/dist/esm/a365/exporter/utils.js +22 -24
  204. package/dist/esm/a365/exporter/utils.js.map +1 -1
  205. package/dist/esm/a365/hosting/index.d.ts +1 -1
  206. package/dist/esm/a365/hosting/index.d.ts.map +1 -1
  207. package/dist/esm/a365/hosting/index.js +1 -1
  208. package/dist/esm/a365/hosting/index.js.map +1 -1
  209. package/dist/esm/a365/hosting/scopeUtils.js +2 -2
  210. package/dist/esm/a365/hosting/scopeUtils.js.map +1 -1
  211. package/dist/esm/a365/hosting/turnContextUtils.d.ts +6 -1
  212. package/dist/esm/a365/hosting/turnContextUtils.d.ts.map +1 -1
  213. package/dist/esm/a365/hosting/turnContextUtils.js +29 -4
  214. package/dist/esm/a365/hosting/turnContextUtils.js.map +1 -1
  215. package/dist/esm/a365/hosting/types.d.ts +1 -0
  216. package/dist/esm/a365/hosting/types.d.ts.map +1 -1
  217. package/dist/esm/a365/index.d.ts +5 -5
  218. package/dist/esm/a365/index.d.ts.map +1 -1
  219. package/dist/esm/a365/index.js +3 -3
  220. package/dist/esm/a365/index.js.map +1 -1
  221. package/dist/esm/a365/message-utils.d.ts +10 -5
  222. package/dist/esm/a365/message-utils.d.ts.map +1 -1
  223. package/dist/esm/a365/message-utils.js +28 -25
  224. package/dist/esm/a365/message-utils.js.map +1 -1
  225. package/dist/esm/a365/processors/A365SpanProcessor.d.ts +3 -0
  226. package/dist/esm/a365/processors/A365SpanProcessor.d.ts.map +1 -1
  227. package/dist/esm/a365/processors/A365SpanProcessor.js +12 -4
  228. package/dist/esm/a365/processors/A365SpanProcessor.js.map +1 -1
  229. package/dist/esm/a365/scopes/ApplyGuardrailScope.d.ts +45 -0
  230. package/dist/esm/a365/scopes/ApplyGuardrailScope.d.ts.map +1 -0
  231. package/dist/esm/a365/scopes/ApplyGuardrailScope.js +128 -0
  232. package/dist/esm/a365/scopes/ApplyGuardrailScope.js.map +1 -0
  233. package/dist/esm/a365/scopes/OpenTelemetryScope.d.ts +7 -1
  234. package/dist/esm/a365/scopes/OpenTelemetryScope.d.ts.map +1 -1
  235. package/dist/esm/a365/scopes/OpenTelemetryScope.js +8 -0
  236. package/dist/esm/a365/scopes/OpenTelemetryScope.js.map +1 -1
  237. package/dist/esm/a365/scopes/OutputScope.d.ts.map +1 -1
  238. package/dist/esm/a365/scopes/OutputScope.js +2 -4
  239. package/dist/esm/a365/scopes/OutputScope.js.map +1 -1
  240. package/dist/esm/a365/scopes/index.d.ts +1 -0
  241. package/dist/esm/a365/scopes/index.d.ts.map +1 -1
  242. package/dist/esm/a365/scopes/index.js +1 -0
  243. package/dist/esm/a365/scopes/index.js.map +1 -1
  244. package/dist/esm/azureMonitor/index.d.ts +4 -4
  245. package/dist/esm/azureMonitor/index.d.ts.map +1 -1
  246. package/dist/esm/azureMonitor/index.js +2 -2
  247. package/dist/esm/azureMonitor/index.js.map +1 -1
  248. package/dist/esm/azureMonitor/metrics/quickpulse/liveMetrics.d.ts +1 -1
  249. package/dist/esm/azureMonitor/metrics/quickpulse/liveMetrics.d.ts.map +1 -1
  250. package/dist/esm/azureMonitor/metrics/quickpulse/liveMetrics.js +6 -6
  251. package/dist/esm/azureMonitor/metrics/quickpulse/liveMetrics.js.map +1 -1
  252. package/dist/esm/distro/distro.d.ts.map +1 -1
  253. package/dist/esm/distro/distro.js +58 -24
  254. package/dist/esm/distro/distro.js.map +1 -1
  255. package/dist/esm/genai/index.d.ts +1 -0
  256. package/dist/esm/genai/index.d.ts.map +1 -1
  257. package/dist/esm/genai/index.js +1 -0
  258. package/dist/esm/genai/index.js.map +1 -1
  259. package/dist/esm/genai/instrumentations/langchain/tracer.d.ts +3 -3
  260. package/dist/esm/genai/instrumentations/langchain/tracer.d.ts.map +1 -1
  261. package/dist/esm/genai/instrumentations/langchain/tracer.js +31 -9
  262. package/dist/esm/genai/instrumentations/langchain/tracer.js.map +1 -1
  263. package/dist/esm/genai/instrumentations/langchain/utils.d.ts +6 -0
  264. package/dist/esm/genai/instrumentations/langchain/utils.d.ts.map +1 -1
  265. package/dist/esm/genai/instrumentations/langchain/utils.js +155 -23
  266. package/dist/esm/genai/instrumentations/langchain/utils.js.map +1 -1
  267. package/dist/esm/genai/instrumentations/openai/openAIAgentsTraceProcessor.d.ts +2 -2
  268. package/dist/esm/genai/instrumentations/openai/openAIAgentsTraceProcessor.d.ts.map +1 -1
  269. package/dist/esm/genai/instrumentations/openai/openAIAgentsTraceProcessor.js +1 -1
  270. package/dist/esm/genai/instrumentations/openai/utils.d.ts +1 -1
  271. package/dist/esm/genai/instrumentations/openai/utils.d.ts.map +1 -1
  272. package/dist/esm/genai/instrumentations/openai/utils.js +10 -5
  273. package/dist/esm/genai/instrumentations/openai/utils.js.map +1 -1
  274. package/dist/esm/genai/mainAgent/constants.d.ts +16 -0
  275. package/dist/esm/genai/mainAgent/constants.d.ts.map +1 -0
  276. package/dist/esm/genai/mainAgent/constants.js +18 -0
  277. package/dist/esm/genai/mainAgent/constants.js.map +1 -0
  278. package/dist/esm/genai/mainAgent/index.d.ts +3 -0
  279. package/dist/esm/genai/mainAgent/index.d.ts.map +1 -0
  280. package/dist/esm/genai/mainAgent/index.js +5 -0
  281. package/dist/esm/genai/mainAgent/index.js.map +1 -0
  282. package/dist/esm/genai/mainAgent/processor.d.ts +39 -0
  283. package/dist/esm/genai/mainAgent/processor.d.ts.map +1 -0
  284. package/dist/esm/genai/mainAgent/processor.js +120 -0
  285. package/dist/esm/genai/mainAgent/processor.js.map +1 -0
  286. package/dist/esm/genai/semconv.d.ts +3 -0
  287. package/dist/esm/genai/semconv.d.ts.map +1 -1
  288. package/dist/esm/genai/semconv.js +3 -0
  289. package/dist/esm/genai/semconv.js.map +1 -1
  290. package/dist/esm/index.d.ts +4 -3
  291. package/dist/esm/index.d.ts.map +1 -1
  292. package/dist/esm/index.js +3 -1
  293. package/dist/esm/index.js.map +1 -1
  294. package/dist/esm/otlp/handler.d.ts.map +1 -1
  295. package/dist/esm/otlp/handler.js +17 -3
  296. package/dist/esm/otlp/handler.js.map +1 -1
  297. package/dist/esm/sdkstats/index.d.ts +4 -0
  298. package/dist/esm/sdkstats/index.d.ts.map +1 -1
  299. package/dist/esm/sdkstats/index.js +2 -0
  300. package/dist/esm/sdkstats/index.js.map +1 -1
  301. package/dist/esm/sdkstats/manager.d.ts +7 -3
  302. package/dist/esm/sdkstats/manager.d.ts.map +1 -1
  303. package/dist/esm/sdkstats/manager.js +98 -25
  304. package/dist/esm/sdkstats/manager.js.map +1 -1
  305. package/dist/esm/sdkstats/metrics.d.ts +46 -2
  306. package/dist/esm/sdkstats/metrics.d.ts.map +1 -1
  307. package/dist/esm/sdkstats/metrics.js +82 -13
  308. package/dist/esm/sdkstats/metrics.js.map +1 -1
  309. package/dist/esm/sdkstats/networkStats.d.ts +57 -0
  310. package/dist/esm/sdkstats/networkStats.d.ts.map +1 -0
  311. package/dist/esm/sdkstats/networkStats.js +119 -0
  312. package/dist/esm/sdkstats/networkStats.js.map +1 -0
  313. package/dist/esm/sdkstats/otlpWrapper.d.ts +56 -0
  314. package/dist/esm/sdkstats/otlpWrapper.d.ts.map +1 -0
  315. package/dist/esm/sdkstats/otlpWrapper.js +115 -0
  316. package/dist/esm/sdkstats/otlpWrapper.js.map +1 -0
  317. package/dist/esm/sdkstats/state.d.ts +6 -6
  318. package/dist/esm/sdkstats/state.d.ts.map +1 -1
  319. package/dist/esm/sdkstats/state.js +2 -2
  320. package/dist/esm/sdkstats/state.js.map +1 -1
  321. package/dist/esm/types.d.ts +16 -16
  322. package/dist/esm/types.d.ts.map +1 -1
  323. package/dist/esm/types.js +87 -87
  324. package/dist/esm/types.js.map +1 -1
  325. package/dist/esm/utils/index.d.ts +1 -1
  326. package/dist/esm/utils/index.d.ts.map +1 -1
  327. package/dist/esm/utils/index.js +1 -1
  328. package/dist/esm/utils/index.js.map +1 -1
  329. package/dist/esm/utils/opentelemetryInstrumentationPatcher.d.ts +1 -1
  330. package/dist/esm/utils/opentelemetryInstrumentationPatcher.js +12 -12
  331. package/dist/esm/utils/opentelemetryInstrumentationPatcher.js.map +1 -1
  332. package/dist/esm/utils/sdkStats.d.ts +15 -0
  333. package/dist/esm/utils/sdkStats.d.ts.map +1 -0
  334. package/dist/esm/utils/sdkStats.js +124 -0
  335. package/dist/esm/utils/sdkStats.js.map +1 -0
  336. package/package.json +25 -25
  337. package/dist/commonjs/utils/statsbeat.d.ts +0 -15
  338. package/dist/commonjs/utils/statsbeat.d.ts.map +0 -1
  339. package/dist/commonjs/utils/statsbeat.js +0 -127
  340. package/dist/commonjs/utils/statsbeat.js.map +0 -1
  341. package/dist/esm/utils/statsbeat.d.ts +0 -15
  342. package/dist/esm/utils/statsbeat.d.ts.map +0 -1
  343. package/dist/esm/utils/statsbeat.js +0 -124
  344. package/dist/esm/utils/statsbeat.js.map +0 -1
@@ -10,16 +10,18 @@ import { InternalConfig } from "../shared/config.js";
10
10
  import { MetricHandler } from "../azureMonitor/metrics/index.js";
11
11
  import { TraceHandler } from "../azureMonitor/traces/handler.js";
12
12
  import { LogHandler } from "../azureMonitor/logs/index.js";
13
+ import { ConnectionStringParser } from "../azureMonitor/utils/connectionStringParser.js";
13
14
  import { AZURE_MONITOR_OPENTELEMETRY_VERSION } from "../types.js";
14
15
  import { patchOpenTelemetryInstrumentationEnable } from "../utils/opentelemetryInstrumentationPatcher.js";
15
16
  import { parseResourceDetectorsFromEnvVar } from "../utils/common.js";
16
- import { getInstance as getStatsbeatInstance } from "../utils/statsbeat.js";
17
- import { setupAzureMonitorComponents, hasAzureMonitorConnectionString, validateAzureMonitorConfig, getAzureMonitorStatsbeatFeatures, } from "../azureMonitor/index.js";
17
+ import { getInstance as getSdkStatsInstance } from "../utils/sdkStats.js";
18
+ import { setupAzureMonitorComponents, hasAzureMonitorConnectionString, validateAzureMonitorConfig, getAzureMonitorSdkStatsFeatures, } from "../azureMonitor/index.js";
18
19
  import { isOtlpEnabled, createOtlpComponents } from "../otlp/index.js";
19
20
  import { A365Configuration, Agent365Exporter, A365SpanProcessor } from "../a365/index.js";
20
21
  import { configureA365Logger } from "../a365/logging.js";
22
+ import { GenAIMainAgentLogRecordProcessor, GenAIMainAgentSpanProcessor, } from "../genai/mainAgent/index.js";
21
23
  import { SdkStatsDistroFeature, SdkStatsManager, setSdkStatsFeature } from "../sdkstats/index.js";
22
- import { MICROSOFT_OPENTELEMETRY_VERSION, APPLICATIONINSIGHTS_SDKSTATS_DISABLED, StatsbeatFeature, } from "../types.js";
24
+ import { MICROSOFT_OPENTELEMETRY_VERSION, APPLICATIONINSIGHTS_SDKSTATS_DISABLED, SdkStatsFeature, } from "../types.js";
23
25
  import { createInstrumentations, createSampler, createViews } from "./instrumentations.js";
24
26
  import { Logger } from "../shared/logging/index.js";
25
27
  process.env["AZURE_MONITOR_DISTRO_VERSION"] = AZURE_MONITOR_OPENTELEMETRY_VERSION;
@@ -113,14 +115,13 @@ export function useMicrosoftOpenTelemetry(options) {
113
115
  (!!options?.azureMonitor || hasAzureMonitorConnectionString(config));
114
116
  const azureMonitorEnabled = azureMonitorRequested && validateAzureMonitorConfig(config);
115
117
  // ── SDKStats: record distro feature bits for ALL paths ──────────────────
116
- // ── SDKStats: record distro feature bits for ALL paths ──────────────────
117
118
  // These bits are emitted via SDKStats regardless of which exporter is
118
119
  // active. When Azure Monitor is enabled the exporter package's own
119
- // Statsbeat picks them up via `AZURE_MONITOR_STATSBEAT_FEATURES`; when
120
- // it is not, the standalone `SdkStatsManager` initialised below carries
121
- // them to the well-known Statsbeat ingestion endpoint.
120
+ // SDKStats pipeline picks them up via `AZURE_MONITOR_STATSBEAT_FEATURES`;
121
+ // when it is not, the standalone `SdkStatsManager` initialised below
122
+ // carries them to the well-known SDKStats ingestion endpoint.
122
123
  const otlpActive = isOtlpEnabled();
123
- setSdkStatsFeature(StatsbeatFeature.DISTRO);
124
+ setSdkStatsFeature(SdkStatsFeature.DISTRO);
124
125
  if (a365Config.enabled) {
125
126
  setSdkStatsFeature(SdkStatsDistroFeature.A365_EXPORT);
126
127
  }
@@ -129,12 +130,12 @@ export function useMicrosoftOpenTelemetry(options) {
129
130
  }
130
131
  // Reset dispose callback to avoid stale references from a previous initialization
131
132
  disposeAzureMonitor = undefined;
132
- // ── Azure Monitor components (statsbeat, browser SDK loader, etc.) ─
133
+ // ── Azure Monitor components (SDK Stats, browser SDK loader, etc.) ─
133
134
  if (azureMonitorEnabled) {
134
135
  disposeAzureMonitor = setupAzureMonitorComponents(config);
135
136
  }
136
- // ── Statsbeat (feature & instrumentation tracking for all paths) ──
137
- const statsbeatInstrumentations = {
137
+ // ── SDK Stats (feature & instrumentation tracking for all paths) ──
138
+ const sdkStatsInstrumentations = {
138
139
  azureSdk: config.instrumentationOptions?.azureSdk?.enabled,
139
140
  mongoDb: config.instrumentationOptions?.mongoDb?.enabled,
140
141
  mySql: config.instrumentationOptions?.mySql?.enabled,
@@ -143,9 +144,9 @@ export function useMicrosoftOpenTelemetry(options) {
143
144
  bunyan: config.instrumentationOptions?.bunyan?.enabled,
144
145
  winston: config.instrumentationOptions?.winston?.enabled,
145
146
  };
146
- const statsbeatFeatures = {
147
+ const sdkStatsFeatures = {
147
148
  ...(azureMonitorEnabled
148
- ? getAzureMonitorStatsbeatFeatures(config)
149
+ ? getAzureMonitorSdkStatsFeatures(config)
149
150
  : {
150
151
  browserSdkLoader: false,
151
152
  aadHandling: false,
@@ -156,7 +157,7 @@ export function useMicrosoftOpenTelemetry(options) {
156
157
  otlp: otlpActive,
157
158
  customerSdkStats: process.env[APPLICATIONINSIGHTS_SDKSTATS_DISABLED]?.toLowerCase() === "true",
158
159
  };
159
- getStatsbeatInstance().setStatsbeatFeatures(statsbeatInstrumentations, statsbeatFeatures);
160
+ getSdkStatsInstance().setSdkStatsFeatures(sdkStatsInstrumentations, sdkStatsFeatures);
160
161
  // ── Register global providers ─────────────────────────────────────
161
162
  // Remove global providers in OpenTelemetry, these would be overridden if present
162
163
  metrics.disable();
@@ -198,6 +199,17 @@ export function useMicrosoftOpenTelemetry(options) {
198
199
  const spanProcessors = [...(options?.spanProcessors || [])];
199
200
  const logRecordProcessors = [...(options?.logRecordProcessors || [])];
200
201
  const customViews = [...(options?.views || [])];
202
+ // ── GenAI main-agent propagation ─────────────────────────────────
203
+ // Prepend the main-agent processors so their on_start / on_emit run
204
+ // BEFORE any Batch* export processor appended later in the pipeline.
205
+ // This enriches each span/log once and the enriched attributes are
206
+ // then visible to Azure Monitor (and any other downstream exporter).
207
+ // Mirrors microsoft/opentelemetry-distro-python which gates these
208
+ // processors on `enable_azure_monitor`.
209
+ if (azureMonitorEnabled) {
210
+ spanProcessors.unshift(new GenAIMainAgentSpanProcessor());
211
+ logRecordProcessors.unshift(new GenAIMainAgentLogRecordProcessor());
212
+ }
201
213
  const metricReaders = [
202
214
  ...(metricHandler ? [metricHandler.getMetricReader()] : []),
203
215
  ...(options?.metricReaders || []),
@@ -230,6 +242,7 @@ export function useMicrosoftOpenTelemetry(options) {
230
242
  domainOverride: a365Config.domainOverride,
231
243
  authScopes: a365Config.authScopes,
232
244
  tokenResolver: a365Config.tokenResolver,
245
+ contextualTokenResolver: a365Config.contextualTokenResolver,
233
246
  useS2SEndpoint: a365Config.useS2SEndpoint,
234
247
  ...(a365Config.maxQueueSize !== undefined && {
235
248
  maxQueueSize: a365Config.maxQueueSize,
@@ -301,16 +314,37 @@ export function useMicrosoftOpenTelemetry(options) {
301
314
  // TODO: Enable auto-attach warning — see autoAttach.ts
302
315
  isShutdown = false;
303
316
  sdk.start();
304
- // ── SDKStats: standalone pipeline for non-Azure-Monitor paths ─────
305
- // When Azure Monitor is enabled the exporter package emits SDKStats
306
- // itself (reading bits set above via `AZURE_MONITOR_STATSBEAT_FEATURES`).
307
- // For A365-only / OTLP-only / Console-only customers we spin up our
308
- // own MeterProvider + AzureMonitorStatsbeatExporter pipeline so the
309
- // distro feature/instrumentation bits still reach the well-known
310
- // statsbeat endpoint.
311
- if (!azureMonitorEnabled) {
312
- void SdkStatsManager.getInstance().initialize();
313
- }
317
+ // ── SDKStats: standalone pipeline ─────────────────────────────────
318
+ // The standalone pipeline ALWAYS runs so per-export network SDKStats
319
+ // (`Request_Success_Count` gauge) for A365 / OTLP transmits is captured.
320
+ //
321
+ // - When Azure Monitor is enabled (`networkOnly: true`): only the
322
+ // network gauges are registered. The Feature / Feature.instrumentations
323
+ // long-interval metrics are owned by the AzMon exporter, with our
324
+ // distro bits bridged in via `setSdkStatsFeatures` →
325
+ // `AZURE_MONITOR_STATSBEAT_FEATURES`. The network pipeline is safe to
326
+ // coexist because the (endpoint, host) attributes partition the
327
+ // time series (AzMon ingestion hosts vs A365 / OTLP hosts).
328
+ // - When Azure Monitor is disabled: the standalone pipeline owns the
329
+ // full set (feature + instrumentation + network) and ships them to
330
+ // the well-known SDKStats endpoint.
331
+ //
332
+ // `cikey` is reported as a customDimension on every SDKStats
333
+ // observation per the spec, but ONLY when the customer is exporting
334
+ // to an Application Insights resource. For OTLP-only / Console-only
335
+ // customers we leave it undefined so the dimension is omitted
336
+ // entirely rather than tagged with an empty / meaningless value.
337
+ const sdkStatsCikey = (() => {
338
+ const cs = config.azureMonitorExporterOptions?.connectionString ??
339
+ process.env["APPLICATIONINSIGHTS_CONNECTION_STRING"];
340
+ if (!cs)
341
+ return undefined;
342
+ return ConnectionStringParser.parse(cs).instrumentationkey || undefined;
343
+ })();
344
+ void SdkStatsManager.getInstance().initialize({
345
+ networkOnly: azureMonitorEnabled,
346
+ cikey: sdkStatsCikey,
347
+ });
314
348
  // Initialize GenAI instrumentations after providers are registered so any
315
349
  // tracer they capture is backed by the active SDK provider.
316
350
  // When A365 defaults were applied, use the resolved config so GenAI
@@ -1 +1 @@
1
- {"version":3,"file":"distro.js","sourceRoot":"","sources":["../../../src/distro/distro.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAE/C,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAElD,OAAO,EAEL,kBAAkB,EAClB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,+BAA+B,CAAC;AAEvC,OAAO,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAC7F,OAAO,EAAE,qBAAqB,EAAE,6BAA6B,EAAE,MAAM,4BAA4B,CAAC;AAElG,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAC;AACjE,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,mCAAmC,EAAE,MAAM,aAAa,CAAC;AAClE,OAAO,EAAE,uCAAuC,EAAE,MAAM,iDAAiD,CAAC;AAC1G,OAAO,EAAE,gCAAgC,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,WAAW,IAAI,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,EACL,2BAA2B,EAC3B,+BAA+B,EAC/B,0BAA0B,EAC1B,gCAAgC,GACjC,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC1F,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AASlG,OAAO,EACL,+BAA+B,EAC/B,qCAAqC,EACrC,gBAAgB,GACjB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,sBAAsB,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAC3F,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAEpD,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,GAAG,mCAAmC,CAAC;AAClF,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,GAAG,+BAA+B,CAAC;AAEjF,IAAI,GAAY,CAAC;AACjB,IAAI,mBAA6C,CAAC;AAClD,IAAI,UAAU,GAAG,KAAK,CAAC;AAEvB,MAAM,yCAAyC,GAAgD;IAC7F,MAAM;IACN,UAAU;IACV,SAAS;IACT,OAAO;IACP,YAAY;IACZ,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,SAAS;CACV,CAAC;AAEF;;;;GAIG;AACH,MAAM,iBAAiB,GAAgD,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;AAE3F;;;;;GAKG;AACH,MAAM,UAAU,iCAAiC,CAC/C,sBAA8C,EAC9C,0BAAmC,EACnC,WAAoB;IAEpB,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO;IACT,CAAC;IAED,MAAM,iBAAiB,GACrB,0BAA0B,IAAI,OAAO,0BAA0B,KAAK,QAAQ;QAC1E,CAAC,CAAE,0BAAsD;QACzD,CAAC,CAAC,SAAS,CAAC;IAEhB,wEAAwE;IACxE,yEAAyE;IACzE,6EAA6E;IAC7E,MAAM,mBAAmB,GACvB,CAAC,CAAC,iBAAiB;QACnB,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,CAAC;IAE5F,KAAK,MAAM,kBAAkB,IAAI,yCAAyC,EAAE,CAAC;QAC3E,MAAM,sBAAsB,GAC1B,CAAC,CAAC,iBAAiB;YACnB,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,iBAAiB,EAAE,kBAAkB,CAAC,CAAC;QAE9E,wEAAwE;QACxE,4BAA4B;QAC5B,IACE,sBAAsB;YACtB,CAAC,mBAAmB;gBAClB,iBAAiB,CAAC,QAAQ,CAAC,kBAAwD,CAAC,CAAC,EACvF,CAAC;YACD,SAAS;QACX,CAAC;QAED,MAAM,YAAY,GAAG,sBAAsB,CAAC,kBAAkB,CAAC,CAAC;QAChE,IAAI,YAAY,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;YACpD,YAAwC,CAAC,OAAO,GAAG,KAAK,CAAC;QAC5D,CAAC;aAAM,CAAC;YACN,sBAAsB,CAAC,kBAAkB,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;QAClE,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,yBAAyB,CAAC,OAAuC;IAC/E,MAAM,MAAM,GAAG,IAAI,cAAc,CAAC,OAAO,CAAC,CAAC;IAC3C,uCAAuC,EAAE,CAAC;IAC1C,MAAM,UAAU,GAAG,IAAI,iBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAExD,2EAA2E;IAC3E,2EAA2E;IAC3E,0DAA0D;IAC1D,IAAI,UAAU,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACtC,mBAAmB,CAAC,EAAE,QAAQ,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;IACzD,CAAC;IAED,gFAAgF;IAChF,oFAAoF;IACpF,yEAAyE;IACzE,MAAM,qBAAqB,GACzB,OAAO,EAAE,YAAY,EAAE,OAAO,KAAK,KAAK;QACxC,CAAC,CAAC,CAAC,OAAO,EAAE,YAAY,IAAI,+BAA+B,CAAC,MAAM,CAAC,CAAC,CAAC;IACvE,MAAM,mBAAmB,GAAG,qBAAqB,IAAI,0BAA0B,CAAC,MAAM,CAAC,CAAC;IAExF,2EAA2E;IAC3E,2EAA2E;IAC3E,sEAAsE;IACtE,mEAAmE;IACnE,uEAAuE;IACvE,wEAAwE;IACxE,uDAAuD;IACvD,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,kBAAkB,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC5C,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;QACvB,kBAAkB,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,UAAU,EAAE,CAAC;QACf,kBAAkB,CAAC,qBAAqB,CAAC,WAAW,CAAC,CAAC;IACxD,CAAC;IAED,kFAAkF;IAClF,mBAAmB,GAAG,SAAS,CAAC;IAEhC,sEAAsE;IACtE,IAAI,mBAAmB,EAAE,CAAC;QACxB,mBAAmB,GAAG,2BAA2B,CAAC,MAAM,CAAC,CAAC;IAC5D,CAAC;IAED,qEAAqE;IACrE,MAAM,yBAAyB,GAA8B;QAC3D,QAAQ,EAAE,MAAM,CAAC,sBAAsB,EAAE,QAAQ,EAAE,OAAO;QAC1D,OAAO,EAAE,MAAM,CAAC,sBAAsB,EAAE,OAAO,EAAE,OAAO;QACxD,KAAK,EAAE,MAAM,CAAC,sBAAsB,EAAE,KAAK,EAAE,OAAO;QACpD,UAAU,EAAE,MAAM,CAAC,sBAAsB,EAAE,UAAU,EAAE,OAAO;QAC9D,KAAK,EAAE,MAAM,CAAC,sBAAsB,EAAE,KAAK,EAAE,OAAO;QACpD,MAAM,EAAE,MAAM,CAAC,sBAAsB,EAAE,MAAM,EAAE,OAAO;QACtD,OAAO,EAAE,MAAM,CAAC,sBAAsB,EAAE,OAAO,EAAE,OAAO;KACzD,CAAC;IACF,MAAM,iBAAiB,GAAsB;QAC3C,GAAG,CAAC,mBAAmB;YACrB,CAAC,CAAC,gCAAgC,CAAC,MAAM,CAAC;YAC1C,CAAC,CAAC;gBACE,gBAAgB,EAAE,KAAK;gBACvB,WAAW,EAAE,KAAK;gBAClB,SAAS,EAAE,KAAK;gBAChB,6BAA6B,EAAE,KAAK;aACrC,CAAC;QACN,IAAI,EAAE,UAAU,CAAC,OAAO;QACxB,IAAI,EAAE,UAAU;QAChB,gBAAgB,EAAE,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,EAAE,WAAW,EAAE,KAAK,MAAM;KAC/F,CAAC;IACF,oBAAoB,EAAE,CAAC,oBAAoB,CAAC,yBAAyB,EAAE,iBAAiB,CAAC,CAAC;IAE1F,qEAAqE;IACrE,iFAAiF;IACjF,OAAO,CAAC,OAAO,EAAE,CAAC;IAClB,KAAK,CAAC,OAAO,EAAE,CAAC;IAChB,IAAI,CAAC,OAAO,EAAE,CAAC;IAEf,8EAA8E;IAC9E,sFAAsF;IACtF,uFAAuF;IACvF,mFAAmF;IACnF,qFAAqF;IACrF,8EAA8E;IAC9E,mEAAmE;IACnE,MAAM,yBAAyB,GAAG,MAAM,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;IACvE,OAAQ,UAAsC,CAAC,yBAAyB,CAAC,CAAC;IAE1E,2EAA2E;IAC3E,0EAA0E;IAC1E,0EAA0E;IAC1E,6CAA6C;IAC7C,MAAM,iBAAiB,GAAG,UAAU,CAAC,OAAO,IAAI,CAAC,mBAAmB,CAAC;IACrE,iCAAiC,CAC/B,MAAM,CAAC,sBAAsB,EAC7B,OAAO,EAAE,sBAAsB,EAC/B,iBAAiB,CAClB,CAAC;IAEF,qEAAqE;IACrE,MAAM,gBAAgB,GAAG,sBAAsB,CAAC,MAAM,EAAE;QACtD,0BAA0B,EAAE,mBAAmB;KAChD,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IACtC,MAAM,KAAK,GAAkB,WAAW,CAAC,MAAM,CAAC,CAAC;IAEjD,qEAAqE;IACrE,IAAI,aAAwC,CAAC;IAC7C,IAAI,YAAsC,CAAC;IAC3C,IAAI,UAAkC,CAAC;IAEvC,IAAI,mBAAmB,EAAE,CAAC;QACxB,aAAa,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,CAAC;QAC1C,YAAY,GAAG,IAAI,YAAY,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;QACvD,UAAU,GAAG,IAAI,UAAU,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACrD,CAAC;IAED,MAAM,qBAAqB,GAAG,gCAAgC,EAAE,CAAC;IAEjE,qEAAqE;IACrE,yFAAyF;IACzF,MAAM,cAAc,GAAoB,CAAC,GAAG,CAAC,OAAO,EAAE,cAAc,IAAI,EAAE,CAAC,CAAC,CAAC;IAC7E,MAAM,mBAAmB,GAAyB,CAAC,GAAG,CAAC,OAAO,EAAE,mBAAmB,IAAI,EAAE,CAAC,CAAC,CAAC;IAC5F,MAAM,WAAW,GAAkB,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC;IAE/D,MAAM,aAAa,GAAmB;QACpC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3D,GAAG,CAAC,OAAO,EAAE,aAAa,IAAI,EAAE,CAAC;KAClC,CAAC;IAEF,qEAAqE;IACrE,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,IAAI,GAAG,oBAAoB,EAAE,CAAC;QACpC,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC1C,CAAC;QACD,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACxC,CAAC;QACD,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC5B,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IAED,4EAA4E;IAC5E,6EAA6E;IAC7E,8EAA8E;IAC9E,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;QACvB,sEAAsE;QACtE,wEAAwE;QACxE,0EAA0E;QAC1E,uEAAuE;QACvE,cAAc,CAAC,IAAI,CAAC,IAAI,iBAAiB,EAAE,CAAC,CAAC;QAC7C,IAAI,UAAU,CAAC,2BAA2B,EAAE,CAAC;YAC3C,MAAM,YAAY,GAAG,IAAI,gBAAgB,CAAC;gBACxC,eAAe,EAAE,UAAU,CAAC,eAAe;gBAC3C,cAAc,EAAE,UAAU,CAAC,cAAc;gBACzC,UAAU,EAAE,UAAU,CAAC,UAAU;gBACjC,aAAa,EAAE,UAAU,CAAC,aAAa;gBACvC,cAAc,EAAE,UAAU,CAAC,cAAc;gBACzC,GAAG,CAAC,UAAU,CAAC,YAAY,KAAK,SAAS,IAAI;oBAC3C,YAAY,EAAE,UAAU,CAAC,YAAY;iBACtC,CAAC;gBACF,GAAG,CAAC,UAAU,CAAC,0BAA0B,KAAK,SAAS,IAAI;oBACzD,0BAA0B,EAAE,UAAU,CAAC,0BAA0B;iBAClE,CAAC;gBACF,GAAG,CAAC,UAAU,CAAC,2BAA2B,KAAK,SAAS,IAAI;oBAC1D,2BAA2B,EAAE,UAAU,CAAC,2BAA2B;iBACpE,CAAC;gBACF,GAAG,CAAC,UAAU,CAAC,8BAA8B,KAAK,SAAS,IAAI;oBAC7D,8BAA8B,EAAE,UAAU,CAAC,8BAA8B;iBAC1E,CAAC;gBACF,GAAG,CAAC,UAAU,CAAC,kBAAkB,KAAK,SAAS,IAAI;oBACjD,kBAAkB,EAAE,UAAU,CAAC,kBAAkB;iBAClD,CAAC;gBACF,GAAG,CAAC,UAAU,CAAC,eAAe,KAAK,SAAS,IAAI;oBAC9C,eAAe,EAAE,UAAU,CAAC,eAAe;iBAC5C,CAAC;aACH,CAAC,CAAC;YACH,cAAc,CAAC,IAAI,CAAC,IAAI,kBAAkB,CAAC,YAAY,CAAC,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IAED,2EAA2E;IAC3E,iFAAiF;IACjF,MAAM,QAAQ,GAAkB;QAC9B,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;QACrD,GAAG,WAAW;KACf,CAAC;IACF,wFAAwF;IACxF,MAAM,mBAAmB,GACvB,CAAC,OAAO,EAAE,cAAc,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC;QAC1C,CAAC,OAAO,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC;QACzC,CAAC,OAAO,EAAE,mBAAmB,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IAClD,MAAM,cAAc,GAClB,OAAO,EAAE,sBAAsB;QAC/B,CAAC,CAAC,mBAAmB;YACnB,CAAC,UAAU;YACX,CAAC,CAAC,UAAU,CAAC,OAAO,IAAI,UAAU,CAAC,2BAA2B,CAAC;YAC/D,CAAC,mBAAmB,CAAC,CAAC;IAC1B,IAAI,cAAc,EAAE,CAAC;QACnB,cAAc,CAAC,IAAI,CAAC,IAAI,mBAAmB,CAAC,IAAI,mBAAmB,EAAE,CAAC,CAAC,CAAC;QACxE,aAAa,CAAC,IAAI,CAChB,IAAI,6BAA6B,CAAC;YAChC,QAAQ,EAAE,IAAI,qBAAqB,EAAE;YACrC,oBAAoB,EAAE,MAAM,CAAC,0BAA0B;SACxD,CAAC,CACH,CAAC;QACF,mBAAmB,CAAC,IAAI,CAAC,IAAI,wBAAwB,CAAC,IAAI,wBAAwB,EAAE,CAAC,CAAC,CAAC;QACvF,kBAAkB,CAAC,qBAAqB,CAAC,cAAc,CAAC,CAAC;IAC3D,CAAC;IAED,qEAAqE;IACrE,MAAM,SAAS,GAAkC;QAC/C,mBAAmB,EAAE,IAAI;QACzB,aAAa,EAAE,aAAa;QAC5B,KAAK,EAAE,QAAQ;QACf,gBAAgB,EAAE,gBAAgB;QAClC,mBAAmB,EAAE;YACnB,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,0BAA0B,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAChE,GAAG,mBAAmB;YACtB,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,0BAA0B,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SACjE;QACD,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,OAAO;QACP,cAAc,EAAE;YACd,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,4BAA4B,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACtE,GAAG,cAAc;YACjB,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,qBAAqB,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;SAChE;QACD,iBAAiB,EAAE,qBAAqB;KACzC,CAAC;IACF,GAAG,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC;IAC7B,uDAAuD;IACvD,UAAU,GAAG,KAAK,CAAC;IACnB,GAAG,CAAC,KAAK,EAAE,CAAC;IAEZ,qEAAqE;IACrE,oEAAoE;IACpE,0EAA0E;IAC1E,oEAAoE;IACpE,oEAAoE;IACpE,iEAAiE;IACjE,sBAAsB;IACtB,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACzB,KAAK,eAAe,CAAC,WAAW,EAAE,CAAC,UAAU,EAAE,CAAC;IAClD,CAAC;IAED,0EAA0E;IAC1E,4DAA4D;IAC5D,oEAAoE;IACpE,0EAA0E;IAC1E,2EAA2E;IAC3E,+BAA+B;IAC/B,+BAA+B,CAC7B,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC,CAAC,OAAO,EAAE,sBAAsB,CACpF,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,8BAA8B;IAC5C,UAAU,GAAG,IAAI,CAAC;IAClB,mBAAmB,EAAE,EAAE,CAAC;IACxB,MAAM,WAAW,GAAG,GAAG,EAAE,QAAQ,EAAE,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IACzD,OAAO,WAAW;SACf,OAAO,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,WAAW,EAAE,CAAC,QAAQ,EAAE,CAAC;SACvD,OAAO,CAAC,GAAG,EAAE,CAAC,0BAA0B,EAAE,CAAC,CAAC;AACjD,CAAC;AAED;;;GAGG;AAEH,MAAM,UAAU,eAAe;IAC7B,OAAO,GAAG,CAAC;AACb,CAAC;AAED,gFAAgF;AAChF,2EAA2E;AAC3E,gFAAgF;AAChF,+EAA+E;AAC/E,6EAA6E;AAC7E,0EAA0E;AAC1E,oFAAoF;AACpF,SAAS,+BAA+B,CAAC,OAAgC;IACvE,MAAM,aAAa,GAAG,OAAO,EAAE,YAAY,CAAC;IAC5C,IAAI,aAAa,EAAE,OAAO,KAAK,KAAK,EAAE,CAAC;QACrC,KAAK,qCAAqC,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;IAClE,CAAC;IAED,MAAM,gBAAgB,GAAG,OAAO,EAAE,SAAS,CAAC;IAC5C,IAAI,gBAAgB,EAAE,OAAO,KAAK,KAAK,EAAE,CAAC;QACxC,KAAK,kCAAkC,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC;IAClE,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW;IACzB,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,KAAK,UAAU,qCAAqC,CAClD,OAA0C;IAE1C,IAAI,CAAC;QACH,MAAM,EAAE,6BAA6B,EAAE,GACrC,MAAM,MAAM,CAAC,mEAAmE,CAAC,CAAC;QACpF,IAAI,UAAU;YAAE,OAAO;QACvB,6BAA6B,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IACpD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,WAAW,EAAE,CAAC,KAAK,CACxB,kFAAkF,EAClF,KAAK,CACN,CAAC;IACJ,CAAC;AACH,CAAC;AAED,KAAK,UAAU,kCAAkC,CAC/C,QAAwC;IAExC,IAAI,CAAC;QACH,MAAM,CAAC,EAAE,0BAA0B,EAAE,EAAE,qBAAqB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAChF,MAAM,CAAC,mEAAmE,CAAC;YAC3E,MAAM,CAAC,mCAAmC,CAAC;SAC5C,CAAC,CAAC;QACH,IAAI,UAAU;YAAE,OAAO;QACvB,0BAA0B,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;IAC/D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,WAAW,EAAE,CAAC,KAAK,CACxB,+EAA+E,EAC/E,KAAK,CACN,CAAC;IACJ,CAAC;AACH,CAAC;AAED,KAAK,UAAU,0BAA0B;IACvC,IAAI,CAAC;QACH,MAAM,EAAE,6BAA6B,EAAE,GACrC,MAAM,MAAM,CAAC,mEAAmE,CAAC,CAAC;QACpF,6BAA6B,CAAC,aAAa,EAAE,CAAC;IAChD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,WAAW,EAAE,CAAC,KAAK,CACxB,wEAAwE,EACxE,KAAK,CACN,CAAC;IACJ,CAAC;IAED,IAAI,CAAC;QACH,MAAM,EAAE,0BAA0B,EAAE,GAClC,MAAM,MAAM,CAAC,mEAAmE,CAAC,CAAC;QACpF,0BAA0B,CAAC,aAAa,EAAE,CAAC;IAC7C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,WAAW,EAAE,CAAC,KAAK,CACxB,qEAAqE,EACrE,KAAK,CACN,CAAC;IACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"distro.js","sourceRoot":"","sources":["../../../src/distro/distro.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,3 @@
1
1
  export * from "./semconv.js";
2
+ export { GEN_AI_MAIN_AGENT_ATTRIBUTE_PREFIX, GEN_AI_MAIN_AGENT_CONVERSATION_ID_KEY, GEN_AI_MAIN_AGENT_ID_KEY, GEN_AI_MAIN_AGENT_NAME_KEY, GEN_AI_MAIN_AGENT_VERSION_KEY, GenAIMainAgentLogRecordProcessor, GenAIMainAgentSpanProcessor, } from "./mainAgent/index.js";
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/genai/index.ts"],"names":[],"mappings":"AAGA,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/genai/index.ts"],"names":[],"mappings":"AAGA,cAAc,cAAc,CAAC;AAC7B,OAAO,EACL,kCAAkC,EAClC,qCAAqC,EACrC,wBAAwB,EACxB,0BAA0B,EAC1B,6BAA6B,EAC7B,gCAAgC,EAChC,2BAA2B,GAC5B,MAAM,sBAAsB,CAAC"}
@@ -1,4 +1,5 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
2
  // Licensed under the MIT License.
3
3
  export * from "./semconv.js";
4
+ export { GEN_AI_MAIN_AGENT_ATTRIBUTE_PREFIX, GEN_AI_MAIN_AGENT_CONVERSATION_ID_KEY, GEN_AI_MAIN_AGENT_ID_KEY, GEN_AI_MAIN_AGENT_NAME_KEY, GEN_AI_MAIN_AGENT_VERSION_KEY, GenAIMainAgentLogRecordProcessor, GenAIMainAgentSpanProcessor, } from "./mainAgent/index.js";
4
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/genai/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/genai/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,cAAc,cAAc,CAAC;AAC7B,OAAO,EACL,kCAAkC,EAClC,qCAAqC,EACrC,wBAAwB,EACxB,0BAA0B,EAC1B,6BAA6B,EAC7B,gCAAgC,EAChC,2BAA2B,GAC5B,MAAM,sBAAsB,CAAC"}
@@ -47,10 +47,10 @@ export declare class LangChainTracer extends BaseTracer {
47
47
  protected _endTrace(run: Run): Promise<void>;
48
48
  /**
49
49
  * Walks up the parent run chain to find the nearest ancestor that has an
50
- * active span, returning its `SpanContext` so the new span can be linked
51
- * as a child.
50
+ * active span, returning that Span so the new span can be linked as a
51
+ * child and processors can read parent attributes.
52
52
  */
53
- private getNearestParentSpanContext;
53
+ private getNearestParentSpan;
54
54
  /**
55
55
  * Walk up the parent run chain to find the nearest ancestor that is an
56
56
  * invoke_agent run, returning its name as the caller agent name.
@@ -1 +1 @@
1
- {"version":3,"file":"tracer.d.ts","sourceRoot":"","sources":["../../../../../src/genai/instrumentations/langchain/tracer.ts"],"names":[],"mappings":"AAIA,OAAO,EAAkD,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5F,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,8BAA8B,CAAC;AAa/D;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,eAAgB,SAAQ,UAAU;IAC7C,mEAAmE;IACnE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAU;IAC1C,OAAO,CAAC,MAAM,CAAS;IACvB,6CAA6C;IAC7C,OAAO,CAAC,IAAI,CAAkC;IAC9C,2EAA2E;IAC3E,OAAO,CAAC,aAAa,CAAyC;gBAElD,MAAM,EAAE,MAAM;IAK1B,IAAI,SAAkC;IAEtC,SAAS,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAI9C;;;OAGG;IACG,WAAW,CAAC,GAAG,EAAE,GAAG;IAM1B;;;;OAIG;IACH,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE,GAAG;IA2D/B;;;OAGG;cACa,SAAS,CAAC,GAAG,EAAE,GAAG;IA8ElC;;;;OAIG;IACH,OAAO,CAAC,2BAA2B;IAWnC;;;OAGG;IACH,OAAO,CAAC,mBAAmB;CAW5B"}
1
+ {"version":3,"file":"tracer.d.ts","sourceRoot":"","sources":["../../../../../src/genai/instrumentations/langchain/tracer.ts"],"names":[],"mappings":"AAIA,OAAO,EAAkD,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5F,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,8BAA8B,CAAC;AAa/D;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,eAAgB,SAAQ,UAAU;IAC7C,mEAAmE;IACnE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAU;IAC1C,OAAO,CAAC,MAAM,CAAS;IACvB,6CAA6C;IAC7C,OAAO,CAAC,IAAI,CAAkC;IAC9C,2EAA2E;IAC3E,OAAO,CAAC,aAAa,CAAyC;gBAElD,MAAM,EAAE,MAAM;IAK1B,IAAI,SAAkC;IAEtC,SAAS,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAI9C;;;OAGG;IACG,WAAW,CAAC,GAAG,EAAE,GAAG;IAM1B;;;;OAIG;IACH,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE,GAAG;IA6E/B;;;OAGG;cACa,SAAS,CAAC,GAAG,EAAE,GAAG;IAoFlC;;;;OAIG;IACH,OAAO,CAAC,oBAAoB;IAW5B;;;OAGG;IACH,OAAO,CAAC,mBAAmB;CAW5B"}
@@ -68,10 +68,13 @@ export class LangChainTracer extends BaseTracer {
68
68
  diag.debug(`[LangChainTracer] Skipping internal run: ${run.name} (parent: ${run.parent_run_id})`);
69
69
  return;
70
70
  }
71
- // Attach to parent span if one exists in the run hierarchy
72
- const parentCtx = this.getNearestParentSpanContext(run);
73
- const activeContext = parentCtx
74
- ? trace.setSpanContext(context.active(), parentCtx)
71
+ // Attach to parent span if one exists in the run hierarchy. We put the
72
+ // actual parent Span (not just its SpanContext) into the context so that
73
+ // span processors observing on_start of this span (e.g.
74
+ // GenAIMainAgentSpanProcessor) can read attributes off the parent.
75
+ const parentSpan = this.getNearestParentSpan(run);
76
+ const activeContext = parentSpan
77
+ ? trace.setSpan(context.active(), parentSpan)
75
78
  : context.active();
76
79
  // Build span name: "<operation> <name|model>"
77
80
  let spanName = run.name;
@@ -99,6 +102,19 @@ export class LangChainTracer extends BaseTracer {
99
102
  startTime,
100
103
  attributes: { [ATTR_GEN_AI_PROVIDER_NAME]: "langchain" },
101
104
  }, activeContext);
105
+ // Set identity attributes (operation, agent, session/conversation) BEFORE
106
+ // any child run starts, so that span processors observing on_start of
107
+ // child spans (e.g. GenAIMainAgentSpanProcessor) can read them from this
108
+ // parent span. Output/usage/model attributes are still set at end time
109
+ // because their values are not known yet.
110
+ try {
111
+ Utils.setOperationTypeAttribute(operation, span);
112
+ Utils.setAgentAttributes(run, span);
113
+ Utils.setSessionIdAttribute(run, span);
114
+ }
115
+ catch (error) {
116
+ diag.debug(`[LangChainTracer] Failed to set start-time attributes for run ${run.name}: ${error instanceof Error ? error.message : String(error)}`);
117
+ }
102
118
  this.runs.set(run.id, { run, span, startTime, lastAccessTime: startTime });
103
119
  }
104
120
  /**
@@ -142,7 +158,11 @@ export class LangChainTracer extends BaseTracer {
142
158
  else {
143
159
  span.setStatus({ code: SpanStatusCode.OK });
144
160
  }
145
- // Always-on attributes: operation type, agent info, model, provider, session, tokens
161
+ // Always-on attributes: operation type, agent info, model, provider, session, tokens.
162
+ // Operation/agent/session are also set at span start so that
163
+ // GenAIMainAgentSpanProcessor.onStart sees them on child spans; setting
164
+ // them again here is idempotent and guarantees end-time corrections
165
+ // (e.g. metadata that only becomes available mid-run) still land.
146
166
  Utils.setOperationTypeAttribute(operation, span);
147
167
  Utils.setAgentAttributes(run, span);
148
168
  if (operation === "invoke_agent") {
@@ -152,6 +172,8 @@ export class LangChainTracer extends BaseTracer {
152
172
  }
153
173
  }
154
174
  Utils.setModelAttribute(run, span);
175
+ Utils.setChoiceCountAttribute(run, span);
176
+ Utils.setResponseIdAttribute(run, span);
155
177
  Utils.setProviderNameAttribute(run, span);
156
178
  Utils.setSessionIdAttribute(run, span);
157
179
  Utils.setTokenAttributes(run, span);
@@ -174,15 +196,15 @@ export class LangChainTracer extends BaseTracer {
174
196
  }
175
197
  /**
176
198
  * Walks up the parent run chain to find the nearest ancestor that has an
177
- * active span, returning its `SpanContext` so the new span can be linked
178
- * as a child.
199
+ * active span, returning that Span so the new span can be linked as a
200
+ * child and processors can read parent attributes.
179
201
  */
180
- getNearestParentSpanContext(run) {
202
+ getNearestParentSpan(run) {
181
203
  let pid = run.parent_run_id;
182
204
  while (pid) {
183
205
  const entry = this.runs.get(pid);
184
206
  if (entry)
185
- return entry.span.spanContext();
207
+ return entry.span;
186
208
  pid = this.parentByRunId.get(pid);
187
209
  }
188
210
  return undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"tracer.js","sourceRoot":"","sources":["../../../../../src/genai/instrumentations/langchain/tracer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tracer.js","sourceRoot":"","sources":["../../../../../src/genai/instrumentations/langchain/tracer.ts"],"names":[],"mappings":"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"}
@@ -7,8 +7,14 @@ export declare function setAgentAttributes(run: Run, span: Span): void;
7
7
  export declare function setToolAttributes(run: Run, span: Span): void;
8
8
  export declare function setInputMessagesAttribute(run: Run, span: Span): void;
9
9
  export declare function setOutputMessagesAttribute(run: Run, span: Span): void;
10
+ export declare function getRequestModel(run: Run): string | undefined;
11
+ export declare function getResponseModel(run: Run): string | undefined;
10
12
  export declare function getModel(run: Run): string | undefined;
11
13
  export declare function setModelAttribute(run: Run, span: Span): void;
14
+ export declare function getChoiceCount(run: Run): number | undefined;
15
+ export declare function setChoiceCountAttribute(run: Run, span: Span): void;
16
+ export declare function getResponseId(run: Run): string | undefined;
17
+ export declare function setResponseIdAttribute(run: Run, span: Span): void;
12
18
  export declare function setProviderNameAttribute(run: Run, span: Span): void;
13
19
  export declare function setSessionIdAttribute(run: Run, span: Span): void;
14
20
  export declare function setSystemInstructionsAttribute(run: Run, span: Span): Span | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../src/genai/instrumentations/langchain/utils.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,GAAG,EAAE,MAAM,8BAA8B,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAiC1C,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAExD;AAGD,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CAWjD;AAGD,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,QAEtE;AAGD,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,QAOtD;AAGD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,QA4CrD;AAED,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,QAgC7D;AAmOD,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,QA6D9D;AAGD,wBAAgB,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,GAAG,SAAS,CAarD;AAGD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,QAGrD;AAGD,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,QAG5D;AAED,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,GAAG,IAAI,CAahE;AAGD,wBAAgB,8BAA8B,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,oBA+BlE;AAGD,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,QAoCtD"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../src/genai/instrumentations/langchain/utils.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,GAAG,EAAE,MAAM,8BAA8B,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAoC1C,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAExD;AAGD,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CAWjD;AAGD,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,QAEtE;AAGD,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,QAOtD;AAGD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,QA4CrD;AAED,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,QA6B7D;AAmOD,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,QA0D9D;AAMD,wBAAgB,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,GAAG,SAAS,CAW5D;AAID,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,GAAG,SAAS,CAyB7D;AAKD,wBAAgB,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,GAAG,SAAS,CAErD;AAgCD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,QAerD;AAOD,wBAAgB,cAAc,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,GAAG,SAAS,CAW3D;AAED,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,QAK3D;AAcD,wBAAgB,aAAa,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,GAAG,SAAS,CA4B1D;AAID,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,GAAG,IAAI,CAKjE;AAGD,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,QAG5D;AAED,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,GAAG,IAAI,CAahE;AAGD,wBAAgB,8BAA8B,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,oBA+BlE;AAGD,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,QAoCtD"}
@@ -1,9 +1,9 @@
1
1
  // Copyright (c) Microsoft Corporation.
2
2
  // Licensed under the MIT License.
3
3
  // Vendored from microsoft/Agent365-nodejs packages/agents-a365-observability-extensions-langchain
4
- import { ATTR_GEN_AI_AGENT_NAME, ATTR_GEN_AI_CONVERSATION_ID, ATTR_GEN_AI_INPUT_MESSAGES, ATTR_GEN_AI_OPERATION_NAME, ATTR_GEN_AI_OUTPUT_MESSAGES, ATTR_GEN_AI_PROVIDER_NAME, ATTR_GEN_AI_REQUEST_MODEL, ATTR_GEN_AI_SYSTEM_INSTRUCTIONS, ATTR_GEN_AI_TOOL_CALL_ARGUMENTS, ATTR_GEN_AI_TOOL_CALL_ID, ATTR_GEN_AI_TOOL_CALL_RESULT, ATTR_GEN_AI_TOOL_NAME, ATTR_GEN_AI_TOOL_TYPE, ATTR_GEN_AI_USAGE_INPUT_TOKENS, ATTR_GEN_AI_USAGE_OUTPUT_TOKENS, ATTR_MICROSOFT_SESSION_ID, GEN_AI_OPERATION_CHAT, GEN_AI_OPERATION_EXECUTE_TOOL, GEN_AI_OPERATION_INVOKE_AGENT, } from "../../index.js";
4
+ import { ATTR_GEN_AI_AGENT_NAME, ATTR_GEN_AI_CONVERSATION_ID, ATTR_GEN_AI_INPUT_MESSAGES, ATTR_GEN_AI_OPERATION_NAME, ATTR_GEN_AI_OUTPUT_MESSAGES, ATTR_GEN_AI_PROVIDER_NAME, ATTR_GEN_AI_REQUEST_CHOICE_COUNT, ATTR_GEN_AI_REQUEST_MODEL, ATTR_GEN_AI_RESPONSE_ID, ATTR_GEN_AI_RESPONSE_MODEL, ATTR_GEN_AI_SYSTEM_INSTRUCTIONS, ATTR_GEN_AI_TOOL_CALL_ARGUMENTS, ATTR_GEN_AI_TOOL_CALL_ID, ATTR_GEN_AI_TOOL_CALL_RESULT, ATTR_GEN_AI_TOOL_NAME, ATTR_GEN_AI_TOOL_TYPE, ATTR_GEN_AI_USAGE_INPUT_TOKENS, ATTR_GEN_AI_USAGE_OUTPUT_TOKENS, ATTR_MICROSOFT_SESSION_ID, GEN_AI_OPERATION_CHAT, GEN_AI_OPERATION_EXECUTE_TOOL, GEN_AI_OPERATION_INVOKE_AGENT, } from "../../index.js";
5
5
  import { serializeMessages, safeSerializeToJson } from "../../../a365/message-utils.js";
6
- import { MessageRole, A365_MESSAGE_SCHEMA_VERSION } from "../../../a365/contracts.js";
6
+ import { MessageRole } from "../../../a365/contracts.js";
7
7
  // Type guards
8
8
  export function isString(value) {
9
9
  return typeof value === "string";
@@ -88,10 +88,7 @@ export function setInputMessagesAttribute(run, span) {
88
88
  chatMessages.push({ role, parts });
89
89
  }
90
90
  if (chatMessages.length > 0) {
91
- const wrapper = {
92
- version: A365_MESSAGE_SCHEMA_VERSION,
93
- messages: chatMessages,
94
- };
91
+ const wrapper = { messages: chatMessages };
95
92
  span.setAttribute(ATTR_GEN_AI_INPUT_MESSAGES, serializeMessages(wrapper));
96
93
  }
97
94
  }
@@ -362,33 +359,168 @@ export function setOutputMessagesAttribute(run, span) {
362
359
  processMessage(outputs.message);
363
360
  }
364
361
  if (outputMessages.length > 0) {
365
- const wrapper = {
366
- version: A365_MESSAGE_SCHEMA_VERSION,
367
- messages: outputMessages,
368
- };
362
+ const wrapper = { messages: outputMessages };
369
363
  span.setAttribute(ATTR_GEN_AI_OUTPUT_MESSAGES, serializeMessages(wrapper));
370
364
  }
371
365
  }
372
- // Model - Helper to extract model name from run
373
- export function getModel(run) {
366
+ // Model - Helper to extract the request-side model identifier from a LangChain
367
+ // run. Reads only the LangChain-generic fields:
368
+ // - `extra.metadata.ls_model_name` (LangChain-set request model identifier)
369
+ // - `extra.invocation_params.model` / `extra.invocation_params.model_name`
370
+ export function getRequestModel(run) {
371
+ const invocationParams = run.extra?.invocation_params;
374
372
  return [
375
- // v1: response_metadata directly on message
376
- run.outputs?.generations?.[0]?.[0]?.message?.response_metadata?.model_name,
377
- // v0: response_metadata nested under kwargs
378
- run.outputs?.generations?.[0]?.[0]?.message?.kwargs?.response_metadata?.model_name,
379
- // Metadata paths (both v0 and v1)
373
+ // LangChain-set request-side identifier (both v0 and v1)
380
374
  run.extra?.metadata?.ls_model_name,
381
- run.extra?.invocation_params?.model,
382
- run.extra?.invocation_params?.model_name,
375
+ // Generic request model from invocation params
376
+ invocationParams?.model,
377
+ invocationParams?.model_name,
378
+ ]
379
+ .map((v) => (v != null ? String(v).trim() : ""))
380
+ .find((v) => v.length > 0);
381
+ }
382
+ // Model - Helper to extract the response-side model (the model that actually
383
+ // served the request).
384
+ export function getResponseModel(run) {
385
+ const llmOutput = run.outputs?.llmOutput;
386
+ const v1Metadata = run.outputs?.generations?.[0]?.[0]?.message?.response_metadata;
387
+ const v0Metadata = run.outputs?.generations?.[0]?.[0]?.message?.kwargs?.response_metadata;
388
+ return [
389
+ // v1: response_metadata directly on message. Prefer the canonical OpenAI
390
+ // Responses-API field (`model`) and fall back to the `model_name` alias
391
+ // LangChain keeps "for backwards compat with chat completion calls" (see
392
+ // langchain-ai/langchainjs libs/providers/langchain-openai/src/converters/responses.ts).
393
+ v1Metadata?.model,
394
+ v1Metadata?.model_name,
395
+ // v0: response_metadata nested under kwargs.
396
+ v0Metadata?.model,
397
+ v0Metadata?.model_name,
398
+ // LLMResult.llmOutput.* (common for Chat Completions API).
399
+ llmOutput?.model_name,
400
+ llmOutput?.model,
383
401
  ]
384
402
  .map((v) => (v != null ? String(v).trim() : ""))
385
403
  .find((v) => v.length > 0);
386
404
  }
387
- // Model - Set model attribute on span
405
+ // Model - Helper kept for backwards compatibility (e.g. span naming). Prefers
406
+ // the request model so the resolved request-side identifier is used, falling
407
+ // back to the response model only when the request side is not available.
408
+ export function getModel(run) {
409
+ return getRequestModel(run) ?? getResponseModel(run);
410
+ }
411
+ // Detects whether a LangChain run originated from `AzureChatOpenAI`. We look at
412
+ // the serialized constructor id array (e.g. ["langchain", "chat_models",
413
+ // "azure_openai", "AzureChatOpenAI"]) which LangChain JS surfaces alongside
414
+ // every callback run. Used to scope the AzureChatOpenAI-specific request model
415
+ // workaround in `setModelAttribute`.
416
+ function isAzureChatOpenAIRun(run) {
417
+ if (!run.serialized || typeof run.serialized !== "object" || Array.isArray(run.serialized)) {
418
+ return false;
419
+ }
420
+ const id = run.serialized.id;
421
+ return Array.isArray(id) && id.some((segment) => segment === "AzureChatOpenAI");
422
+ }
423
+ // Model - Set request and response model attributes on the span using only
424
+ // LangChain-generic identifiers.
425
+ //
426
+ // Note on request-model priority: for `AzureChatOpenAI` runs we deliberately
427
+ // prefer the response-side model for `gen_ai.request.model`. LangChain JS does
428
+ // not surface the configured deployment for `AzureChatOpenAI` through
429
+ // `getLsParams()` or `invocationParams()` — `extra.metadata.ls_model_name`
430
+ // falls back to the `BaseChatOpenAI` default of `"gpt-3.5-turbo"`, which would
431
+ // otherwise be emitted as the request model regardless of what the caller
432
+ // actually configured. The server-reported model (e.g.
433
+ // `gpt-4o-mini-2024-07-18`) is a much closer approximation of the requested
434
+ // model than that hardcoded default. See
435
+ // https://github.com/langchain-ai/langchainjs/issues/10874.
436
+ //
437
+ // For all other clients (notably plain `ChatOpenAI` / Foundry deployments) the
438
+ // request-side identifier is correct and is preferred so the deployment alias
439
+ // or `model` kwarg is reported as `gen_ai.request.model`.
388
440
  export function setModelAttribute(run, span) {
389
- const model = getModel(run);
390
- if (model)
391
- span.setAttribute(ATTR_GEN_AI_REQUEST_MODEL, model);
441
+ const requestModel = getRequestModel(run);
442
+ const responseModel = getResponseModel(run);
443
+ const effectiveRequestModel = isAzureChatOpenAIRun(run)
444
+ ? (responseModel ?? requestModel)
445
+ : (requestModel ?? responseModel);
446
+ if (effectiveRequestModel) {
447
+ span.setAttribute(ATTR_GEN_AI_REQUEST_MODEL, effectiveRequestModel);
448
+ }
449
+ if (responseModel) {
450
+ span.setAttribute(ATTR_GEN_AI_RESPONSE_MODEL, responseModel);
451
+ }
452
+ }
453
+ // Choice count - Helper to extract the requested number of candidate completions
454
+ // (`n` in OpenAI / LangChain `invocation_params`). Per OTel GenAI semconv, this
455
+ // attribute is conditionally required when available in the request and not
456
+ // equal to 1, so we omit it for the common single-completion case to avoid
457
+ // emitting redundant data.
458
+ export function getChoiceCount(run) {
459
+ const invocationParams = run.extra?.invocation_params;
460
+ const raw = invocationParams?.n;
461
+ if (typeof raw === "number" && Number.isFinite(raw) && Number.isInteger(raw) && raw >= 1) {
462
+ return raw;
463
+ }
464
+ if (typeof raw === "string") {
465
+ const parsed = Number.parseInt(raw, 10);
466
+ if (Number.isFinite(parsed) && parsed >= 1)
467
+ return parsed;
468
+ }
469
+ return undefined;
470
+ }
471
+ export function setChoiceCountAttribute(run, span) {
472
+ const n = getChoiceCount(run);
473
+ if (n !== undefined && n !== 1) {
474
+ span.setAttribute(ATTR_GEN_AI_REQUEST_CHOICE_COUNT, n);
475
+ }
476
+ }
477
+ // Response identifier - Helper to extract the unique response id returned by
478
+ // the underlying provider (e.g. OpenAI chat completion id). LangChain.js
479
+ // typically surfaces this as the AIMessage id (top-level for v1, nested
480
+ // under kwargs for v0) and some providers also include it under
481
+ // response_metadata.id or on LLMResult.llmOutput.id.
482
+ //
483
+ // Only primitive string / number values are accepted: in some LangChain
484
+ // serialization paths an `id` field can be an array of class hierarchy names
485
+ // (e.g. `["langchain", "schema", "messages", "AIMessage"]`) which must not be
486
+ // emitted as a response id. Provider-supplied sources (`response_metadata.id`
487
+ // and `llmOutput.id`) are checked first because they are unambiguously the
488
+ // transport-level response identifier.
489
+ export function getResponseId(run) {
490
+ const message = run.outputs?.generations?.[0]?.[0]?.message;
491
+ const messageKwargs = message?.kwargs;
492
+ const responseMetadata = message?.response_metadata ??
493
+ messageKwargs?.response_metadata;
494
+ const llmOutput = run.outputs?.llmOutput;
495
+ const candidates = [
496
+ // Provider-supplied response id surfaced via response_metadata
497
+ responseMetadata?.id,
498
+ // LLMResult.llmOutput.id (some providers)
499
+ llmOutput?.id,
500
+ // v1: AIMessage.id directly on the message
501
+ message?.id,
502
+ // v0: AIMessage.id nested under kwargs
503
+ messageKwargs?.id,
504
+ ];
505
+ for (const candidate of candidates) {
506
+ if (typeof candidate === "string") {
507
+ const trimmed = candidate.trim();
508
+ if (trimmed.length > 0)
509
+ return trimmed;
510
+ }
511
+ else if (typeof candidate === "number" && Number.isFinite(candidate)) {
512
+ return String(candidate);
513
+ }
514
+ }
515
+ return undefined;
516
+ }
517
+ // Response identifier - Set the gen_ai.response.id attribute on the span when
518
+ // a provider-supplied response id is available on the run.
519
+ export function setResponseIdAttribute(run, span) {
520
+ const responseId = getResponseId(run);
521
+ if (responseId) {
522
+ span.setAttribute(ATTR_GEN_AI_RESPONSE_ID, responseId);
523
+ }
392
524
  }
393
525
  // Provider
394
526
  export function setProviderNameAttribute(run, span) {