@openclaw/diagnostics-otel 2026.6.8 → 2026.6.9

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 (821) hide show
  1. package/README.md +1 -1
  2. package/dist/index.js +198 -44
  3. package/node_modules/@opentelemetry/api-logs/build/esm/NoopLogger.d.ts +4 -0
  4. package/node_modules/@opentelemetry/api-logs/build/esm/NoopLogger.js +6 -0
  5. package/node_modules/@opentelemetry/api-logs/build/esm/NoopLogger.js.map +1 -1
  6. package/node_modules/@opentelemetry/api-logs/build/esm/api/logs.d.ts +10 -2
  7. package/node_modules/@opentelemetry/api-logs/build/esm/api/logs.js +10 -2
  8. package/node_modules/@opentelemetry/api-logs/build/esm/api/logs.js.map +1 -1
  9. package/node_modules/@opentelemetry/api-logs/build/esm/index.d.ts +1 -1
  10. package/node_modules/@opentelemetry/api-logs/build/esm/index.js +1 -1
  11. package/node_modules/@opentelemetry/api-logs/build/esm/index.js.map +1 -1
  12. package/node_modules/@opentelemetry/api-logs/build/esm/types/LoggerOptions.d.ts +3 -2
  13. package/node_modules/@opentelemetry/api-logs/build/esm/types/LoggerOptions.js.map +1 -1
  14. package/node_modules/@opentelemetry/api-logs/build/esm/types/LoggerProvider.d.ts +7 -3
  15. package/node_modules/@opentelemetry/api-logs/build/esm/types/LoggerProvider.js.map +1 -1
  16. package/node_modules/@opentelemetry/api-logs/build/esm/version.d.ts +1 -1
  17. package/node_modules/@opentelemetry/api-logs/build/esm/version.js +1 -1
  18. package/node_modules/@opentelemetry/api-logs/build/esm/version.js.map +1 -1
  19. package/node_modules/@opentelemetry/api-logs/build/esnext/NoopLogger.d.ts +4 -0
  20. package/node_modules/@opentelemetry/api-logs/build/esnext/NoopLogger.js +6 -0
  21. package/node_modules/@opentelemetry/api-logs/build/esnext/NoopLogger.js.map +1 -1
  22. package/node_modules/@opentelemetry/api-logs/build/esnext/api/logs.d.ts +10 -2
  23. package/node_modules/@opentelemetry/api-logs/build/esnext/api/logs.js +10 -2
  24. package/node_modules/@opentelemetry/api-logs/build/esnext/api/logs.js.map +1 -1
  25. package/node_modules/@opentelemetry/api-logs/build/esnext/index.d.ts +1 -1
  26. package/node_modules/@opentelemetry/api-logs/build/esnext/index.js +1 -1
  27. package/node_modules/@opentelemetry/api-logs/build/esnext/index.js.map +1 -1
  28. package/node_modules/@opentelemetry/api-logs/build/esnext/types/LoggerOptions.d.ts +3 -2
  29. package/node_modules/@opentelemetry/api-logs/build/esnext/types/LoggerOptions.js.map +1 -1
  30. package/node_modules/@opentelemetry/api-logs/build/esnext/types/LoggerProvider.d.ts +7 -3
  31. package/node_modules/@opentelemetry/api-logs/build/esnext/types/LoggerProvider.js.map +1 -1
  32. package/node_modules/@opentelemetry/api-logs/build/esnext/version.d.ts +1 -1
  33. package/node_modules/@opentelemetry/api-logs/build/esnext/version.js +1 -1
  34. package/node_modules/@opentelemetry/api-logs/build/esnext/version.js.map +1 -1
  35. package/node_modules/@opentelemetry/api-logs/build/src/NoopLogger.d.ts +4 -0
  36. package/node_modules/@opentelemetry/api-logs/build/src/NoopLogger.js +8 -1
  37. package/node_modules/@opentelemetry/api-logs/build/src/NoopLogger.js.map +1 -1
  38. package/node_modules/@opentelemetry/api-logs/build/src/api/logs.d.ts +10 -2
  39. package/node_modules/@opentelemetry/api-logs/build/src/api/logs.js +10 -2
  40. package/node_modules/@opentelemetry/api-logs/build/src/api/logs.js.map +1 -1
  41. package/node_modules/@opentelemetry/api-logs/build/src/index.d.ts +1 -1
  42. package/node_modules/@opentelemetry/api-logs/build/src/index.js +2 -3
  43. package/node_modules/@opentelemetry/api-logs/build/src/index.js.map +1 -1
  44. package/node_modules/@opentelemetry/api-logs/build/src/types/LoggerOptions.d.ts +3 -2
  45. package/node_modules/@opentelemetry/api-logs/build/src/types/LoggerOptions.js.map +1 -1
  46. package/node_modules/@opentelemetry/api-logs/build/src/types/LoggerProvider.d.ts +7 -3
  47. package/node_modules/@opentelemetry/api-logs/build/src/types/LoggerProvider.js.map +1 -1
  48. package/node_modules/@opentelemetry/api-logs/build/src/version.d.ts +1 -1
  49. package/node_modules/@opentelemetry/api-logs/build/src/version.js +1 -1
  50. package/node_modules/@opentelemetry/api-logs/build/src/version.js.map +1 -1
  51. package/node_modules/@opentelemetry/api-logs/package.json +5 -5
  52. package/node_modules/@opentelemetry/configuration/build/src/EnvironmentConfigFactory.js +23 -26
  53. package/node_modules/@opentelemetry/configuration/build/src/EnvironmentConfigFactory.js.map +1 -1
  54. package/node_modules/@opentelemetry/configuration/build/src/FileConfigFactory.js +3 -155
  55. package/node_modules/@opentelemetry/configuration/build/src/FileConfigFactory.js.map +1 -1
  56. package/node_modules/@opentelemetry/configuration/build/src/generated/types.d.ts +596 -614
  57. package/node_modules/@opentelemetry/configuration/build/src/generated/types.js.map +1 -1
  58. package/node_modules/@opentelemetry/configuration/build/src/index.d.ts +1 -1
  59. package/node_modules/@opentelemetry/configuration/build/src/index.js.map +1 -1
  60. package/node_modules/@opentelemetry/configuration/build/src/utils.d.ts +12 -1
  61. package/node_modules/@opentelemetry/configuration/build/src/utils.js +93 -19
  62. package/node_modules/@opentelemetry/configuration/build/src/utils.js.map +1 -1
  63. package/node_modules/@opentelemetry/configuration/build/src/version.d.ts +1 -1
  64. package/node_modules/@opentelemetry/configuration/build/src/version.js +1 -1
  65. package/node_modules/@opentelemetry/configuration/build/src/version.js.map +1 -1
  66. package/node_modules/@opentelemetry/configuration/package.json +6 -6
  67. package/node_modules/@opentelemetry/context-async-hooks/build/src/version.d.ts +1 -1
  68. package/node_modules/@opentelemetry/context-async-hooks/build/src/version.js +1 -1
  69. package/node_modules/@opentelemetry/context-async-hooks/build/src/version.js.map +1 -1
  70. package/node_modules/@opentelemetry/context-async-hooks/package.json +4 -4
  71. package/node_modules/@opentelemetry/core/build/esm/baggage/propagation/W3CBaggagePropagator.js +14 -20
  72. package/node_modules/@opentelemetry/core/build/esm/baggage/propagation/W3CBaggagePropagator.js.map +1 -1
  73. package/node_modules/@opentelemetry/core/build/esm/baggage/utils.d.ts +7 -1
  74. package/node_modules/@opentelemetry/core/build/esm/baggage/utils.js +32 -1
  75. package/node_modules/@opentelemetry/core/build/esm/baggage/utils.js.map +1 -1
  76. package/node_modules/@opentelemetry/core/build/esm/common/time.d.ts +7 -2
  77. package/node_modules/@opentelemetry/core/build/esm/common/time.js +10 -3
  78. package/node_modules/@opentelemetry/core/build/esm/common/time.js.map +1 -1
  79. package/node_modules/@opentelemetry/core/build/esm/index.d.ts +1 -1
  80. package/node_modules/@opentelemetry/core/build/esm/index.js +1 -1
  81. package/node_modules/@opentelemetry/core/build/esm/index.js.map +1 -1
  82. package/node_modules/@opentelemetry/core/build/esm/version.d.ts +1 -1
  83. package/node_modules/@opentelemetry/core/build/esm/version.js +1 -1
  84. package/node_modules/@opentelemetry/core/build/esm/version.js.map +1 -1
  85. package/node_modules/@opentelemetry/core/build/esnext/baggage/propagation/W3CBaggagePropagator.js +14 -20
  86. package/node_modules/@opentelemetry/core/build/esnext/baggage/propagation/W3CBaggagePropagator.js.map +1 -1
  87. package/node_modules/@opentelemetry/core/build/esnext/baggage/utils.d.ts +7 -1
  88. package/node_modules/@opentelemetry/core/build/esnext/baggage/utils.js +32 -1
  89. package/node_modules/@opentelemetry/core/build/esnext/baggage/utils.js.map +1 -1
  90. package/node_modules/@opentelemetry/core/build/esnext/common/time.d.ts +7 -2
  91. package/node_modules/@opentelemetry/core/build/esnext/common/time.js +10 -3
  92. package/node_modules/@opentelemetry/core/build/esnext/common/time.js.map +1 -1
  93. package/node_modules/@opentelemetry/core/build/esnext/index.d.ts +1 -1
  94. package/node_modules/@opentelemetry/core/build/esnext/index.js +1 -1
  95. package/node_modules/@opentelemetry/core/build/esnext/index.js.map +1 -1
  96. package/node_modules/@opentelemetry/core/build/esnext/version.d.ts +1 -1
  97. package/node_modules/@opentelemetry/core/build/esnext/version.js +1 -1
  98. package/node_modules/@opentelemetry/core/build/esnext/version.js.map +1 -1
  99. package/node_modules/@opentelemetry/core/build/src/baggage/propagation/W3CBaggagePropagator.js +12 -18
  100. package/node_modules/@opentelemetry/core/build/src/baggage/propagation/W3CBaggagePropagator.js.map +1 -1
  101. package/node_modules/@opentelemetry/core/build/src/baggage/utils.d.ts +7 -1
  102. package/node_modules/@opentelemetry/core/build/src/baggage/utils.js +33 -1
  103. package/node_modules/@opentelemetry/core/build/src/baggage/utils.js.map +1 -1
  104. package/node_modules/@opentelemetry/core/build/src/common/time.d.ts +7 -2
  105. package/node_modules/@opentelemetry/core/build/src/common/time.js +13 -5
  106. package/node_modules/@opentelemetry/core/build/src/common/time.js.map +1 -1
  107. package/node_modules/@opentelemetry/core/build/src/index.d.ts +1 -1
  108. package/node_modules/@opentelemetry/core/build/src/index.js +3 -1
  109. package/node_modules/@opentelemetry/core/build/src/index.js.map +1 -1
  110. package/node_modules/@opentelemetry/core/build/src/version.d.ts +1 -1
  111. package/node_modules/@opentelemetry/core/build/src/version.js +1 -1
  112. package/node_modules/@opentelemetry/core/build/src/version.js.map +1 -1
  113. package/node_modules/@opentelemetry/core/package.json +6 -6
  114. package/node_modules/@opentelemetry/exporter-logs-otlp-grpc/build/src/version.d.ts +1 -1
  115. package/node_modules/@opentelemetry/exporter-logs-otlp-grpc/build/src/version.js +1 -1
  116. package/node_modules/@opentelemetry/exporter-logs-otlp-grpc/build/src/version.js.map +1 -1
  117. package/node_modules/@opentelemetry/exporter-logs-otlp-grpc/package.json +13 -13
  118. package/node_modules/@opentelemetry/exporter-logs-otlp-http/build/esm/version.d.ts +1 -1
  119. package/node_modules/@opentelemetry/exporter-logs-otlp-http/build/esm/version.js +1 -1
  120. package/node_modules/@opentelemetry/exporter-logs-otlp-http/build/esm/version.js.map +1 -1
  121. package/node_modules/@opentelemetry/exporter-logs-otlp-http/build/esnext/version.d.ts +1 -1
  122. package/node_modules/@opentelemetry/exporter-logs-otlp-http/build/esnext/version.js +1 -1
  123. package/node_modules/@opentelemetry/exporter-logs-otlp-http/build/esnext/version.js.map +1 -1
  124. package/node_modules/@opentelemetry/exporter-logs-otlp-http/build/src/version.d.ts +1 -1
  125. package/node_modules/@opentelemetry/exporter-logs-otlp-http/build/src/version.js +1 -1
  126. package/node_modules/@opentelemetry/exporter-logs-otlp-http/build/src/version.js.map +1 -1
  127. package/node_modules/@opentelemetry/exporter-logs-otlp-http/package.json +13 -13
  128. package/node_modules/@opentelemetry/exporter-logs-otlp-proto/build/esm/version.d.ts +1 -1
  129. package/node_modules/@opentelemetry/exporter-logs-otlp-proto/build/esm/version.js +1 -1
  130. package/node_modules/@opentelemetry/exporter-logs-otlp-proto/build/esm/version.js.map +1 -1
  131. package/node_modules/@opentelemetry/exporter-logs-otlp-proto/build/esnext/version.d.ts +1 -1
  132. package/node_modules/@opentelemetry/exporter-logs-otlp-proto/build/esnext/version.js +1 -1
  133. package/node_modules/@opentelemetry/exporter-logs-otlp-proto/build/esnext/version.js.map +1 -1
  134. package/node_modules/@opentelemetry/exporter-logs-otlp-proto/build/src/version.d.ts +1 -1
  135. package/node_modules/@opentelemetry/exporter-logs-otlp-proto/build/src/version.js +1 -1
  136. package/node_modules/@opentelemetry/exporter-logs-otlp-proto/build/src/version.js.map +1 -1
  137. package/node_modules/@opentelemetry/exporter-logs-otlp-proto/package.json +14 -14
  138. package/node_modules/@opentelemetry/exporter-metrics-otlp-grpc/build/src/version.d.ts +1 -1
  139. package/node_modules/@opentelemetry/exporter-metrics-otlp-grpc/build/src/version.js +1 -1
  140. package/node_modules/@opentelemetry/exporter-metrics-otlp-grpc/build/src/version.js.map +1 -1
  141. package/node_modules/@opentelemetry/exporter-metrics-otlp-grpc/package.json +13 -13
  142. package/node_modules/@opentelemetry/exporter-metrics-otlp-http/build/esm/version.d.ts +1 -1
  143. package/node_modules/@opentelemetry/exporter-metrics-otlp-http/build/esm/version.js +1 -1
  144. package/node_modules/@opentelemetry/exporter-metrics-otlp-http/build/esm/version.js.map +1 -1
  145. package/node_modules/@opentelemetry/exporter-metrics-otlp-http/build/esnext/version.d.ts +1 -1
  146. package/node_modules/@opentelemetry/exporter-metrics-otlp-http/build/esnext/version.js +1 -1
  147. package/node_modules/@opentelemetry/exporter-metrics-otlp-http/build/esnext/version.js.map +1 -1
  148. package/node_modules/@opentelemetry/exporter-metrics-otlp-http/build/src/version.d.ts +1 -1
  149. package/node_modules/@opentelemetry/exporter-metrics-otlp-http/build/src/version.js +1 -1
  150. package/node_modules/@opentelemetry/exporter-metrics-otlp-http/build/src/version.js.map +1 -1
  151. package/node_modules/@opentelemetry/exporter-metrics-otlp-http/package.json +12 -12
  152. package/node_modules/@opentelemetry/exporter-metrics-otlp-proto/build/esm/version.d.ts +1 -1
  153. package/node_modules/@opentelemetry/exporter-metrics-otlp-proto/build/esm/version.js +1 -1
  154. package/node_modules/@opentelemetry/exporter-metrics-otlp-proto/build/esm/version.js.map +1 -1
  155. package/node_modules/@opentelemetry/exporter-metrics-otlp-proto/build/esnext/version.d.ts +1 -1
  156. package/node_modules/@opentelemetry/exporter-metrics-otlp-proto/build/esnext/version.js +1 -1
  157. package/node_modules/@opentelemetry/exporter-metrics-otlp-proto/build/esnext/version.js.map +1 -1
  158. package/node_modules/@opentelemetry/exporter-metrics-otlp-proto/build/src/version.d.ts +1 -1
  159. package/node_modules/@opentelemetry/exporter-metrics-otlp-proto/build/src/version.js +1 -1
  160. package/node_modules/@opentelemetry/exporter-metrics-otlp-proto/build/src/version.js.map +1 -1
  161. package/node_modules/@opentelemetry/exporter-metrics-otlp-proto/package.json +13 -13
  162. package/node_modules/@opentelemetry/exporter-prometheus/build/src/PrometheusExporter.js +2 -0
  163. package/node_modules/@opentelemetry/exporter-prometheus/build/src/PrometheusExporter.js.map +1 -1
  164. package/node_modules/@opentelemetry/exporter-prometheus/build/src/PrometheusSerializer.js +15 -1
  165. package/node_modules/@opentelemetry/exporter-prometheus/build/src/PrometheusSerializer.js.map +1 -1
  166. package/node_modules/@opentelemetry/exporter-prometheus/build/src/semconv.d.ts +9 -0
  167. package/node_modules/@opentelemetry/exporter-prometheus/build/src/semconv.js +21 -0
  168. package/node_modules/@opentelemetry/exporter-prometheus/build/src/semconv.js.map +1 -0
  169. package/node_modules/@opentelemetry/exporter-prometheus/build/src/version.d.ts +1 -1
  170. package/node_modules/@opentelemetry/exporter-prometheus/build/src/version.js +1 -1
  171. package/node_modules/@opentelemetry/exporter-prometheus/build/src/version.js.map +1 -1
  172. package/node_modules/@opentelemetry/exporter-prometheus/package.json +7 -7
  173. package/node_modules/@opentelemetry/exporter-trace-otlp-grpc/README.md +1 -1
  174. package/node_modules/@opentelemetry/exporter-trace-otlp-grpc/build/src/version.d.ts +1 -1
  175. package/node_modules/@opentelemetry/exporter-trace-otlp-grpc/build/src/version.js +1 -1
  176. package/node_modules/@opentelemetry/exporter-trace-otlp-grpc/build/src/version.js.map +1 -1
  177. package/node_modules/@opentelemetry/exporter-trace-otlp-grpc/package.json +12 -12
  178. package/node_modules/@opentelemetry/exporter-trace-otlp-http/build/esm/version.d.ts +1 -1
  179. package/node_modules/@opentelemetry/exporter-trace-otlp-http/build/esm/version.js +1 -1
  180. package/node_modules/@opentelemetry/exporter-trace-otlp-http/build/esm/version.js.map +1 -1
  181. package/node_modules/@opentelemetry/exporter-trace-otlp-http/build/esnext/version.d.ts +1 -1
  182. package/node_modules/@opentelemetry/exporter-trace-otlp-http/build/esnext/version.js +1 -1
  183. package/node_modules/@opentelemetry/exporter-trace-otlp-http/build/esnext/version.js.map +1 -1
  184. package/node_modules/@opentelemetry/exporter-trace-otlp-http/build/src/version.d.ts +1 -1
  185. package/node_modules/@opentelemetry/exporter-trace-otlp-http/build/src/version.js +1 -1
  186. package/node_modules/@opentelemetry/exporter-trace-otlp-http/build/src/version.js.map +1 -1
  187. package/node_modules/@opentelemetry/exporter-trace-otlp-http/package.json +12 -12
  188. package/node_modules/@opentelemetry/exporter-trace-otlp-proto/build/esm/version.d.ts +1 -1
  189. package/node_modules/@opentelemetry/exporter-trace-otlp-proto/build/esm/version.js +1 -1
  190. package/node_modules/@opentelemetry/exporter-trace-otlp-proto/build/esm/version.js.map +1 -1
  191. package/node_modules/@opentelemetry/exporter-trace-otlp-proto/build/esnext/version.d.ts +1 -1
  192. package/node_modules/@opentelemetry/exporter-trace-otlp-proto/build/esnext/version.js +1 -1
  193. package/node_modules/@opentelemetry/exporter-trace-otlp-proto/build/esnext/version.js.map +1 -1
  194. package/node_modules/@opentelemetry/exporter-trace-otlp-proto/build/src/version.d.ts +1 -1
  195. package/node_modules/@opentelemetry/exporter-trace-otlp-proto/build/src/version.js +1 -1
  196. package/node_modules/@opentelemetry/exporter-trace-otlp-proto/build/src/version.js.map +1 -1
  197. package/node_modules/@opentelemetry/exporter-trace-otlp-proto/package.json +12 -12
  198. package/node_modules/@opentelemetry/exporter-zipkin/build/esm/version.d.ts +1 -1
  199. package/node_modules/@opentelemetry/exporter-zipkin/build/esm/version.js +1 -1
  200. package/node_modules/@opentelemetry/exporter-zipkin/build/esm/version.js.map +1 -1
  201. package/node_modules/@opentelemetry/exporter-zipkin/build/esnext/version.d.ts +1 -1
  202. package/node_modules/@opentelemetry/exporter-zipkin/build/esnext/version.js +1 -1
  203. package/node_modules/@opentelemetry/exporter-zipkin/build/esnext/version.js.map +1 -1
  204. package/node_modules/@opentelemetry/exporter-zipkin/build/src/version.d.ts +1 -1
  205. package/node_modules/@opentelemetry/exporter-zipkin/build/src/version.js +1 -1
  206. package/node_modules/@opentelemetry/exporter-zipkin/build/src/version.js.map +1 -1
  207. package/node_modules/@opentelemetry/exporter-zipkin/package.json +11 -11
  208. package/node_modules/@opentelemetry/instrumentation/build/esm/instrumentation.js +1 -1
  209. package/node_modules/@opentelemetry/instrumentation/build/esm/instrumentation.js.map +1 -1
  210. package/node_modules/@opentelemetry/instrumentation/build/esm/semver.js +2 -2
  211. package/node_modules/@opentelemetry/instrumentation/build/esm/semver.js.map +1 -1
  212. package/node_modules/@opentelemetry/instrumentation/build/esm/version.d.ts +1 -1
  213. package/node_modules/@opentelemetry/instrumentation/build/esm/version.js +1 -1
  214. package/node_modules/@opentelemetry/instrumentation/build/esm/version.js.map +1 -1
  215. package/node_modules/@opentelemetry/instrumentation/build/esnext/instrumentation.js +1 -1
  216. package/node_modules/@opentelemetry/instrumentation/build/esnext/instrumentation.js.map +1 -1
  217. package/node_modules/@opentelemetry/instrumentation/build/esnext/semver.js +2 -2
  218. package/node_modules/@opentelemetry/instrumentation/build/esnext/semver.js.map +1 -1
  219. package/node_modules/@opentelemetry/instrumentation/build/esnext/version.d.ts +1 -1
  220. package/node_modules/@opentelemetry/instrumentation/build/esnext/version.js +1 -1
  221. package/node_modules/@opentelemetry/instrumentation/build/esnext/version.js.map +1 -1
  222. package/node_modules/@opentelemetry/instrumentation/build/src/instrumentation.js +1 -1
  223. package/node_modules/@opentelemetry/instrumentation/build/src/instrumentation.js.map +1 -1
  224. package/node_modules/@opentelemetry/instrumentation/build/src/semver.js +2 -2
  225. package/node_modules/@opentelemetry/instrumentation/build/src/semver.js.map +1 -1
  226. package/node_modules/@opentelemetry/instrumentation/build/src/version.d.ts +1 -1
  227. package/node_modules/@opentelemetry/instrumentation/build/src/version.js +1 -1
  228. package/node_modules/@opentelemetry/instrumentation/build/src/version.js.map +1 -1
  229. package/node_modules/@opentelemetry/instrumentation/hook.mjs +3 -14
  230. package/node_modules/@opentelemetry/instrumentation/package.json +9 -9
  231. package/node_modules/@opentelemetry/otlp-exporter-base/build/esm/version.d.ts +1 -1
  232. package/node_modules/@opentelemetry/otlp-exporter-base/build/esm/version.js +1 -1
  233. package/node_modules/@opentelemetry/otlp-exporter-base/build/esm/version.js.map +1 -1
  234. package/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/version.d.ts +1 -1
  235. package/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/version.js +1 -1
  236. package/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/version.js.map +1 -1
  237. package/node_modules/@opentelemetry/otlp-exporter-base/build/src/version.d.ts +1 -1
  238. package/node_modules/@opentelemetry/otlp-exporter-base/build/src/version.js +1 -1
  239. package/node_modules/@opentelemetry/otlp-exporter-base/build/src/version.js.map +1 -1
  240. package/node_modules/@opentelemetry/otlp-exporter-base/package.json +9 -9
  241. package/node_modules/@opentelemetry/otlp-grpc-exporter-base/build/src/configuration/otlp-grpc-env-configuration.js +2 -2
  242. package/node_modules/@opentelemetry/otlp-grpc-exporter-base/build/src/configuration/otlp-grpc-env-configuration.js.map +1 -1
  243. package/node_modules/@opentelemetry/otlp-grpc-exporter-base/build/src/grpc-exporter-transport.d.ts +1 -0
  244. package/node_modules/@opentelemetry/otlp-grpc-exporter-base/build/src/grpc-exporter-transport.js +17 -0
  245. package/node_modules/@opentelemetry/otlp-grpc-exporter-base/build/src/grpc-exporter-transport.js.map +1 -1
  246. package/node_modules/@opentelemetry/otlp-grpc-exporter-base/build/src/index.d.ts +1 -0
  247. package/node_modules/@opentelemetry/otlp-grpc-exporter-base/build/src/index.js +5 -1
  248. package/node_modules/@opentelemetry/otlp-grpc-exporter-base/build/src/index.js.map +1 -1
  249. package/node_modules/@opentelemetry/otlp-grpc-exporter-base/build/src/version.d.ts +1 -1
  250. package/node_modules/@opentelemetry/otlp-grpc-exporter-base/build/src/version.js +1 -1
  251. package/node_modules/@opentelemetry/otlp-grpc-exporter-base/build/src/version.js.map +1 -1
  252. package/node_modules/@opentelemetry/otlp-grpc-exporter-base/package.json +10 -10
  253. package/node_modules/@opentelemetry/otlp-transformer/build/esm/common/internal.d.ts +6 -3
  254. package/node_modules/@opentelemetry/otlp-transformer/build/esm/common/internal.js +7 -2
  255. package/node_modules/@opentelemetry/otlp-transformer/build/esm/common/internal.js.map +1 -1
  256. package/node_modules/@opentelemetry/otlp-transformer/build/esm/common/protobuf/common-serializer.d.ts +10 -1
  257. package/node_modules/@opentelemetry/otlp-transformer/build/esm/common/protobuf/common-serializer.js +9 -0
  258. package/node_modules/@opentelemetry/otlp-transformer/build/esm/common/protobuf/common-serializer.js.map +1 -1
  259. package/node_modules/@opentelemetry/otlp-transformer/build/esm/common/protobuf/protobuf-reader.d.ts +5 -1
  260. package/node_modules/@opentelemetry/otlp-transformer/build/esm/common/protobuf/protobuf-reader.js +5 -21
  261. package/node_modules/@opentelemetry/otlp-transformer/build/esm/common/protobuf/protobuf-reader.js.map +1 -1
  262. package/node_modules/@opentelemetry/otlp-transformer/build/esm/logs/internal.d.ts +0 -3
  263. package/node_modules/@opentelemetry/otlp-transformer/build/esm/logs/internal.js +6 -10
  264. package/node_modules/@opentelemetry/otlp-transformer/build/esm/logs/internal.js.map +1 -1
  265. package/node_modules/@opentelemetry/otlp-transformer/build/esm/metrics/internal.js +1 -1
  266. package/node_modules/@opentelemetry/otlp-transformer/build/esm/metrics/internal.js.map +1 -1
  267. package/node_modules/@opentelemetry/otlp-transformer/build/esm/trace/internal.js +1 -1
  268. package/node_modules/@opentelemetry/otlp-transformer/build/esm/trace/internal.js.map +1 -1
  269. package/node_modules/@opentelemetry/otlp-transformer/build/esnext/common/internal.d.ts +6 -3
  270. package/node_modules/@opentelemetry/otlp-transformer/build/esnext/common/internal.js +7 -2
  271. package/node_modules/@opentelemetry/otlp-transformer/build/esnext/common/internal.js.map +1 -1
  272. package/node_modules/@opentelemetry/otlp-transformer/build/esnext/common/protobuf/common-serializer.d.ts +10 -1
  273. package/node_modules/@opentelemetry/otlp-transformer/build/esnext/common/protobuf/common-serializer.js +9 -0
  274. package/node_modules/@opentelemetry/otlp-transformer/build/esnext/common/protobuf/common-serializer.js.map +1 -1
  275. package/node_modules/@opentelemetry/otlp-transformer/build/esnext/common/protobuf/protobuf-reader.d.ts +5 -1
  276. package/node_modules/@opentelemetry/otlp-transformer/build/esnext/common/protobuf/protobuf-reader.js +5 -21
  277. package/node_modules/@opentelemetry/otlp-transformer/build/esnext/common/protobuf/protobuf-reader.js.map +1 -1
  278. package/node_modules/@opentelemetry/otlp-transformer/build/esnext/logs/internal.d.ts +0 -3
  279. package/node_modules/@opentelemetry/otlp-transformer/build/esnext/logs/internal.js +6 -10
  280. package/node_modules/@opentelemetry/otlp-transformer/build/esnext/logs/internal.js.map +1 -1
  281. package/node_modules/@opentelemetry/otlp-transformer/build/esnext/metrics/internal.js +1 -1
  282. package/node_modules/@opentelemetry/otlp-transformer/build/esnext/metrics/internal.js.map +1 -1
  283. package/node_modules/@opentelemetry/otlp-transformer/build/esnext/trace/internal.js +1 -1
  284. package/node_modules/@opentelemetry/otlp-transformer/build/esnext/trace/internal.js.map +1 -1
  285. package/node_modules/@opentelemetry/otlp-transformer/build/src/common/internal.d.ts +6 -3
  286. package/node_modules/@opentelemetry/otlp-transformer/build/src/common/internal.js +7 -2
  287. package/node_modules/@opentelemetry/otlp-transformer/build/src/common/internal.js.map +1 -1
  288. package/node_modules/@opentelemetry/otlp-transformer/build/src/common/protobuf/common-serializer.d.ts +10 -1
  289. package/node_modules/@opentelemetry/otlp-transformer/build/src/common/protobuf/common-serializer.js +9 -0
  290. package/node_modules/@opentelemetry/otlp-transformer/build/src/common/protobuf/common-serializer.js.map +1 -1
  291. package/node_modules/@opentelemetry/otlp-transformer/build/src/common/protobuf/protobuf-reader.d.ts +5 -1
  292. package/node_modules/@opentelemetry/otlp-transformer/build/src/common/protobuf/protobuf-reader.js +5 -21
  293. package/node_modules/@opentelemetry/otlp-transformer/build/src/common/protobuf/protobuf-reader.js.map +1 -1
  294. package/node_modules/@opentelemetry/otlp-transformer/build/src/logs/internal.d.ts +0 -3
  295. package/node_modules/@opentelemetry/otlp-transformer/build/src/logs/internal.js +6 -11
  296. package/node_modules/@opentelemetry/otlp-transformer/build/src/logs/internal.js.map +1 -1
  297. package/node_modules/@opentelemetry/otlp-transformer/build/src/metrics/internal.js +1 -1
  298. package/node_modules/@opentelemetry/otlp-transformer/build/src/metrics/internal.js.map +1 -1
  299. package/node_modules/@opentelemetry/otlp-transformer/build/src/trace/internal.js +1 -1
  300. package/node_modules/@opentelemetry/otlp-transformer/build/src/trace/internal.js.map +1 -1
  301. package/node_modules/@opentelemetry/otlp-transformer/package.json +13 -13
  302. package/node_modules/@opentelemetry/propagator-b3/build/esm/version.d.ts +1 -1
  303. package/node_modules/@opentelemetry/propagator-b3/build/esm/version.js +1 -1
  304. package/node_modules/@opentelemetry/propagator-b3/build/esm/version.js.map +1 -1
  305. package/node_modules/@opentelemetry/propagator-b3/build/esnext/version.d.ts +1 -1
  306. package/node_modules/@opentelemetry/propagator-b3/build/esnext/version.js +1 -1
  307. package/node_modules/@opentelemetry/propagator-b3/build/esnext/version.js.map +1 -1
  308. package/node_modules/@opentelemetry/propagator-b3/build/src/version.d.ts +1 -1
  309. package/node_modules/@opentelemetry/propagator-b3/build/src/version.js +1 -1
  310. package/node_modules/@opentelemetry/propagator-b3/build/src/version.js.map +1 -1
  311. package/node_modules/@opentelemetry/propagator-b3/package.json +6 -6
  312. package/node_modules/@opentelemetry/propagator-jaeger/build/esm/version.d.ts +1 -1
  313. package/node_modules/@opentelemetry/propagator-jaeger/build/esm/version.js +1 -1
  314. package/node_modules/@opentelemetry/propagator-jaeger/build/esm/version.js.map +1 -1
  315. package/node_modules/@opentelemetry/propagator-jaeger/build/esnext/version.d.ts +1 -1
  316. package/node_modules/@opentelemetry/propagator-jaeger/build/esnext/version.js +1 -1
  317. package/node_modules/@opentelemetry/propagator-jaeger/build/esnext/version.js.map +1 -1
  318. package/node_modules/@opentelemetry/propagator-jaeger/build/src/version.d.ts +1 -1
  319. package/node_modules/@opentelemetry/propagator-jaeger/build/src/version.js +1 -1
  320. package/node_modules/@opentelemetry/propagator-jaeger/build/src/version.js.map +1 -1
  321. package/node_modules/@opentelemetry/propagator-jaeger/package.json +7 -7
  322. package/node_modules/@opentelemetry/resources/build/esm/detectors/EnvDetector.js +2 -2
  323. package/node_modules/@opentelemetry/resources/build/esm/detectors/EnvDetector.js.map +1 -1
  324. package/node_modules/@opentelemetry/resources/build/esm/version.d.ts +1 -1
  325. package/node_modules/@opentelemetry/resources/build/esm/version.js +1 -1
  326. package/node_modules/@opentelemetry/resources/build/esm/version.js.map +1 -1
  327. package/node_modules/@opentelemetry/resources/build/esnext/detectors/EnvDetector.js +2 -2
  328. package/node_modules/@opentelemetry/resources/build/esnext/detectors/EnvDetector.js.map +1 -1
  329. package/node_modules/@opentelemetry/resources/build/esnext/version.d.ts +1 -1
  330. package/node_modules/@opentelemetry/resources/build/esnext/version.js +1 -1
  331. package/node_modules/@opentelemetry/resources/build/esnext/version.js.map +1 -1
  332. package/node_modules/@opentelemetry/resources/build/src/detectors/EnvDetector.js +2 -2
  333. package/node_modules/@opentelemetry/resources/build/src/detectors/EnvDetector.js.map +1 -1
  334. package/node_modules/@opentelemetry/resources/build/src/version.d.ts +1 -1
  335. package/node_modules/@opentelemetry/resources/build/src/version.js +1 -1
  336. package/node_modules/@opentelemetry/resources/build/src/version.js.map +1 -1
  337. package/node_modules/@opentelemetry/resources/package.json +5 -5
  338. package/node_modules/@opentelemetry/sdk-logs/README.md +3 -0
  339. package/node_modules/@opentelemetry/sdk-logs/build/esm/LogRecordImpl.d.ts +4 -3
  340. package/node_modules/@opentelemetry/sdk-logs/build/esm/LogRecordImpl.js +5 -57
  341. package/node_modules/@opentelemetry/sdk-logs/build/esm/LogRecordImpl.js.map +1 -1
  342. package/node_modules/@opentelemetry/sdk-logs/build/esm/Logger.d.ts +4 -4
  343. package/node_modules/@opentelemetry/sdk-logs/build/esm/Logger.js +5 -5
  344. package/node_modules/@opentelemetry/sdk-logs/build/esm/Logger.js.map +1 -1
  345. package/node_modules/@opentelemetry/sdk-logs/build/esm/LoggerProvider.js +12 -5
  346. package/node_modules/@opentelemetry/sdk-logs/build/esm/LoggerProvider.js.map +1 -1
  347. package/node_modules/@opentelemetry/sdk-logs/build/esm/export/BatchLogRecordProcessorBase.js +6 -3
  348. package/node_modules/@opentelemetry/sdk-logs/build/esm/export/BatchLogRecordProcessorBase.js.map +1 -1
  349. package/node_modules/@opentelemetry/sdk-logs/build/esm/export/ReadableLogRecord.d.ts +4 -1
  350. package/node_modules/@opentelemetry/sdk-logs/build/esm/export/ReadableLogRecord.js.map +1 -1
  351. package/node_modules/@opentelemetry/sdk-logs/build/esm/export/SdkLogRecord.d.ts +7 -0
  352. package/node_modules/@opentelemetry/sdk-logs/build/esm/export/SdkLogRecord.js.map +1 -1
  353. package/node_modules/@opentelemetry/sdk-logs/build/esm/export/SimpleLogRecordProcessor.js +0 -1
  354. package/node_modules/@opentelemetry/sdk-logs/build/esm/export/SimpleLogRecordProcessor.js.map +1 -1
  355. package/node_modules/@opentelemetry/sdk-logs/build/esm/internal/utils.d.ts +6 -1
  356. package/node_modules/@opentelemetry/sdk-logs/build/esm/internal/utils.js +62 -1
  357. package/node_modules/@opentelemetry/sdk-logs/build/esm/internal/utils.js.map +1 -1
  358. package/node_modules/@opentelemetry/sdk-logs/build/esm/utils/validation.d.ts +21 -2
  359. package/node_modules/@opentelemetry/sdk-logs/build/esm/utils/validation.js +112 -3
  360. package/node_modules/@opentelemetry/sdk-logs/build/esm/utils/validation.js.map +1 -1
  361. package/node_modules/@opentelemetry/sdk-logs/build/esm/version.d.ts +1 -1
  362. package/node_modules/@opentelemetry/sdk-logs/build/esm/version.js +1 -1
  363. package/node_modules/@opentelemetry/sdk-logs/build/esm/version.js.map +1 -1
  364. package/node_modules/@opentelemetry/sdk-logs/build/esnext/LogRecordImpl.d.ts +4 -3
  365. package/node_modules/@opentelemetry/sdk-logs/build/esnext/LogRecordImpl.js +5 -57
  366. package/node_modules/@opentelemetry/sdk-logs/build/esnext/LogRecordImpl.js.map +1 -1
  367. package/node_modules/@opentelemetry/sdk-logs/build/esnext/Logger.d.ts +4 -4
  368. package/node_modules/@opentelemetry/sdk-logs/build/esnext/Logger.js +5 -5
  369. package/node_modules/@opentelemetry/sdk-logs/build/esnext/Logger.js.map +1 -1
  370. package/node_modules/@opentelemetry/sdk-logs/build/esnext/LoggerProvider.js +12 -5
  371. package/node_modules/@opentelemetry/sdk-logs/build/esnext/LoggerProvider.js.map +1 -1
  372. package/node_modules/@opentelemetry/sdk-logs/build/esnext/export/BatchLogRecordProcessorBase.js +6 -3
  373. package/node_modules/@opentelemetry/sdk-logs/build/esnext/export/BatchLogRecordProcessorBase.js.map +1 -1
  374. package/node_modules/@opentelemetry/sdk-logs/build/esnext/export/ReadableLogRecord.d.ts +4 -1
  375. package/node_modules/@opentelemetry/sdk-logs/build/esnext/export/ReadableLogRecord.js.map +1 -1
  376. package/node_modules/@opentelemetry/sdk-logs/build/esnext/export/SdkLogRecord.d.ts +7 -0
  377. package/node_modules/@opentelemetry/sdk-logs/build/esnext/export/SdkLogRecord.js.map +1 -1
  378. package/node_modules/@opentelemetry/sdk-logs/build/esnext/export/SimpleLogRecordProcessor.js +0 -1
  379. package/node_modules/@opentelemetry/sdk-logs/build/esnext/export/SimpleLogRecordProcessor.js.map +1 -1
  380. package/node_modules/@opentelemetry/sdk-logs/build/esnext/internal/utils.d.ts +6 -1
  381. package/node_modules/@opentelemetry/sdk-logs/build/esnext/internal/utils.js +62 -1
  382. package/node_modules/@opentelemetry/sdk-logs/build/esnext/internal/utils.js.map +1 -1
  383. package/node_modules/@opentelemetry/sdk-logs/build/esnext/utils/validation.d.ts +21 -2
  384. package/node_modules/@opentelemetry/sdk-logs/build/esnext/utils/validation.js +112 -3
  385. package/node_modules/@opentelemetry/sdk-logs/build/esnext/utils/validation.js.map +1 -1
  386. package/node_modules/@opentelemetry/sdk-logs/build/esnext/version.d.ts +1 -1
  387. package/node_modules/@opentelemetry/sdk-logs/build/esnext/version.js +1 -1
  388. package/node_modules/@opentelemetry/sdk-logs/build/esnext/version.js.map +1 -1
  389. package/node_modules/@opentelemetry/sdk-logs/build/src/LogRecordImpl.d.ts +4 -3
  390. package/node_modules/@opentelemetry/sdk-logs/build/src/LogRecordImpl.js +4 -56
  391. package/node_modules/@opentelemetry/sdk-logs/build/src/LogRecordImpl.js.map +1 -1
  392. package/node_modules/@opentelemetry/sdk-logs/build/src/Logger.d.ts +4 -4
  393. package/node_modules/@opentelemetry/sdk-logs/build/src/Logger.js +5 -5
  394. package/node_modules/@opentelemetry/sdk-logs/build/src/Logger.js.map +1 -1
  395. package/node_modules/@opentelemetry/sdk-logs/build/src/LoggerProvider.js +11 -4
  396. package/node_modules/@opentelemetry/sdk-logs/build/src/LoggerProvider.js.map +1 -1
  397. package/node_modules/@opentelemetry/sdk-logs/build/src/export/BatchLogRecordProcessorBase.js +6 -3
  398. package/node_modules/@opentelemetry/sdk-logs/build/src/export/BatchLogRecordProcessorBase.js.map +1 -1
  399. package/node_modules/@opentelemetry/sdk-logs/build/src/export/ReadableLogRecord.d.ts +4 -1
  400. package/node_modules/@opentelemetry/sdk-logs/build/src/export/ReadableLogRecord.js.map +1 -1
  401. package/node_modules/@opentelemetry/sdk-logs/build/src/export/SdkLogRecord.d.ts +7 -0
  402. package/node_modules/@opentelemetry/sdk-logs/build/src/export/SdkLogRecord.js.map +1 -1
  403. package/node_modules/@opentelemetry/sdk-logs/build/src/export/SimpleLogRecordProcessor.js +0 -1
  404. package/node_modules/@opentelemetry/sdk-logs/build/src/export/SimpleLogRecordProcessor.js.map +1 -1
  405. package/node_modules/@opentelemetry/sdk-logs/build/src/internal/utils.d.ts +6 -1
  406. package/node_modules/@opentelemetry/sdk-logs/build/src/internal/utils.js +62 -1
  407. package/node_modules/@opentelemetry/sdk-logs/build/src/internal/utils.js.map +1 -1
  408. package/node_modules/@opentelemetry/sdk-logs/build/src/utils/validation.d.ts +21 -2
  409. package/node_modules/@opentelemetry/sdk-logs/build/src/utils/validation.js +115 -4
  410. package/node_modules/@opentelemetry/sdk-logs/build/src/utils/validation.js.map +1 -1
  411. package/node_modules/@opentelemetry/sdk-logs/build/src/version.d.ts +1 -1
  412. package/node_modules/@opentelemetry/sdk-logs/build/src/version.js +1 -1
  413. package/node_modules/@opentelemetry/sdk-logs/build/src/version.js.map +1 -1
  414. package/node_modules/@opentelemetry/sdk-logs/package.json +11 -11
  415. package/node_modules/@opentelemetry/sdk-metrics/build/esm/MeterProvider.d.ts +6 -1
  416. package/node_modules/@opentelemetry/sdk-metrics/build/esm/MeterProvider.js +4 -0
  417. package/node_modules/@opentelemetry/sdk-metrics/build/esm/MeterProvider.js.map +1 -1
  418. package/node_modules/@opentelemetry/sdk-metrics/build/esm/export/MetricReader.d.ts +9 -0
  419. package/node_modules/@opentelemetry/sdk-metrics/build/esm/export/MetricReader.js +19 -0
  420. package/node_modules/@opentelemetry/sdk-metrics/build/esm/export/MetricReader.js.map +1 -1
  421. package/node_modules/@opentelemetry/sdk-metrics/build/esm/export/MetricReaderMetrics.d.ts +12 -0
  422. package/node_modules/@opentelemetry/sdk-metrics/build/esm/export/MetricReaderMetrics.js +36 -0
  423. package/node_modules/@opentelemetry/sdk-metrics/build/esm/export/MetricReaderMetrics.js.map +1 -0
  424. package/node_modules/@opentelemetry/sdk-metrics/build/esm/export/PeriodicExportingMetricReader.js +2 -0
  425. package/node_modules/@opentelemetry/sdk-metrics/build/esm/export/PeriodicExportingMetricReader.js.map +1 -1
  426. package/node_modules/@opentelemetry/sdk-metrics/build/esm/semconv.d.ts +82 -0
  427. package/node_modules/@opentelemetry/sdk-metrics/build/esm/semconv.js +91 -0
  428. package/node_modules/@opentelemetry/sdk-metrics/build/esm/semconv.js.map +1 -0
  429. package/node_modules/@opentelemetry/sdk-metrics/build/esm/state/DeltaMetricProcessor.js +0 -3
  430. package/node_modules/@opentelemetry/sdk-metrics/build/esm/state/DeltaMetricProcessor.js.map +1 -1
  431. package/node_modules/@opentelemetry/sdk-metrics/build/esm/state/HashMap.js +0 -1
  432. package/node_modules/@opentelemetry/sdk-metrics/build/esm/state/HashMap.js.map +1 -1
  433. package/node_modules/@opentelemetry/sdk-metrics/build/esm/state/TemporalMetricProcessor.js +0 -2
  434. package/node_modules/@opentelemetry/sdk-metrics/build/esm/state/TemporalMetricProcessor.js.map +1 -1
  435. package/node_modules/@opentelemetry/sdk-metrics/build/esm/version.d.ts +1 -1
  436. package/node_modules/@opentelemetry/sdk-metrics/build/esm/version.js +1 -1
  437. package/node_modules/@opentelemetry/sdk-metrics/build/esm/version.js.map +1 -1
  438. package/node_modules/@opentelemetry/sdk-metrics/build/esnext/MeterProvider.d.ts +6 -1
  439. package/node_modules/@opentelemetry/sdk-metrics/build/esnext/MeterProvider.js +4 -0
  440. package/node_modules/@opentelemetry/sdk-metrics/build/esnext/MeterProvider.js.map +1 -1
  441. package/node_modules/@opentelemetry/sdk-metrics/build/esnext/export/MetricReader.d.ts +9 -0
  442. package/node_modules/@opentelemetry/sdk-metrics/build/esnext/export/MetricReader.js +19 -0
  443. package/node_modules/@opentelemetry/sdk-metrics/build/esnext/export/MetricReader.js.map +1 -1
  444. package/node_modules/@opentelemetry/sdk-metrics/build/esnext/export/MetricReaderMetrics.d.ts +12 -0
  445. package/node_modules/@opentelemetry/sdk-metrics/build/esnext/export/MetricReaderMetrics.js +36 -0
  446. package/node_modules/@opentelemetry/sdk-metrics/build/esnext/export/MetricReaderMetrics.js.map +1 -0
  447. package/node_modules/@opentelemetry/sdk-metrics/build/esnext/export/PeriodicExportingMetricReader.js +2 -0
  448. package/node_modules/@opentelemetry/sdk-metrics/build/esnext/export/PeriodicExportingMetricReader.js.map +1 -1
  449. package/node_modules/@opentelemetry/sdk-metrics/build/esnext/semconv.d.ts +82 -0
  450. package/node_modules/@opentelemetry/sdk-metrics/build/esnext/semconv.js +91 -0
  451. package/node_modules/@opentelemetry/sdk-metrics/build/esnext/semconv.js.map +1 -0
  452. package/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/DeltaMetricProcessor.js +0 -3
  453. package/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/DeltaMetricProcessor.js.map +1 -1
  454. package/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/HashMap.js +0 -1
  455. package/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/HashMap.js.map +1 -1
  456. package/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/TemporalMetricProcessor.js +0 -2
  457. package/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/TemporalMetricProcessor.js.map +1 -1
  458. package/node_modules/@opentelemetry/sdk-metrics/build/esnext/version.d.ts +1 -1
  459. package/node_modules/@opentelemetry/sdk-metrics/build/esnext/version.js +1 -1
  460. package/node_modules/@opentelemetry/sdk-metrics/build/esnext/version.js.map +1 -1
  461. package/node_modules/@opentelemetry/sdk-metrics/build/src/MeterProvider.d.ts +6 -1
  462. package/node_modules/@opentelemetry/sdk-metrics/build/src/MeterProvider.js +4 -0
  463. package/node_modules/@opentelemetry/sdk-metrics/build/src/MeterProvider.js.map +1 -1
  464. package/node_modules/@opentelemetry/sdk-metrics/build/src/export/MetricReader.d.ts +9 -0
  465. package/node_modules/@opentelemetry/sdk-metrics/build/src/export/MetricReader.js +19 -0
  466. package/node_modules/@opentelemetry/sdk-metrics/build/src/export/MetricReader.js.map +1 -1
  467. package/node_modules/@opentelemetry/sdk-metrics/build/src/export/MetricReaderMetrics.d.ts +12 -0
  468. package/node_modules/@opentelemetry/sdk-metrics/build/src/export/MetricReaderMetrics.js +40 -0
  469. package/node_modules/@opentelemetry/sdk-metrics/build/src/export/MetricReaderMetrics.js.map +1 -0
  470. package/node_modules/@opentelemetry/sdk-metrics/build/src/export/PeriodicExportingMetricReader.js +2 -0
  471. package/node_modules/@opentelemetry/sdk-metrics/build/src/export/PeriodicExportingMetricReader.js.map +1 -1
  472. package/node_modules/@opentelemetry/sdk-metrics/build/src/semconv.d.ts +82 -0
  473. package/node_modules/@opentelemetry/sdk-metrics/build/src/semconv.js +94 -0
  474. package/node_modules/@opentelemetry/sdk-metrics/build/src/semconv.js.map +1 -0
  475. package/node_modules/@opentelemetry/sdk-metrics/build/src/state/DeltaMetricProcessor.js +0 -3
  476. package/node_modules/@opentelemetry/sdk-metrics/build/src/state/DeltaMetricProcessor.js.map +1 -1
  477. package/node_modules/@opentelemetry/sdk-metrics/build/src/state/HashMap.js +0 -1
  478. package/node_modules/@opentelemetry/sdk-metrics/build/src/state/HashMap.js.map +1 -1
  479. package/node_modules/@opentelemetry/sdk-metrics/build/src/state/TemporalMetricProcessor.js +0 -2
  480. package/node_modules/@opentelemetry/sdk-metrics/build/src/state/TemporalMetricProcessor.js.map +1 -1
  481. package/node_modules/@opentelemetry/sdk-metrics/build/src/version.d.ts +1 -1
  482. package/node_modules/@opentelemetry/sdk-metrics/build/src/version.js +1 -1
  483. package/node_modules/@opentelemetry/sdk-metrics/build/src/version.js.map +1 -1
  484. package/node_modules/@opentelemetry/sdk-metrics/package.json +10 -10
  485. package/node_modules/@opentelemetry/sdk-node/README.md +1 -0
  486. package/node_modules/@opentelemetry/sdk-node/build/src/index.d.ts +0 -1
  487. package/node_modules/@opentelemetry/sdk-node/build/src/index.js +1 -3
  488. package/node_modules/@opentelemetry/sdk-node/build/src/index.js.map +1 -1
  489. package/node_modules/@opentelemetry/sdk-node/build/src/sdk.js +3 -3
  490. package/node_modules/@opentelemetry/sdk-node/build/src/sdk.js.map +1 -1
  491. package/node_modules/@opentelemetry/sdk-node/build/src/start.js +2 -2
  492. package/node_modules/@opentelemetry/sdk-node/build/src/start.js.map +1 -1
  493. package/node_modules/@opentelemetry/sdk-node/build/src/utils.d.ts +1 -1
  494. package/node_modules/@opentelemetry/sdk-node/build/src/utils.js +175 -103
  495. package/node_modules/@opentelemetry/sdk-node/build/src/utils.js.map +1 -1
  496. package/node_modules/@opentelemetry/sdk-node/build/src/version.d.ts +1 -1
  497. package/node_modules/@opentelemetry/sdk-node/build/src/version.js +1 -1
  498. package/node_modules/@opentelemetry/sdk-node/build/src/version.js.map +1 -1
  499. package/node_modules/@opentelemetry/sdk-node/package.json +30 -29
  500. package/node_modules/@opentelemetry/sdk-trace-base/build/esm/BasicTracerProvider.d.ts +3 -0
  501. package/node_modules/@opentelemetry/sdk-trace-base/build/esm/BasicTracerProvider.js +10 -1
  502. package/node_modules/@opentelemetry/sdk-trace-base/build/esm/BasicTracerProvider.js.map +1 -1
  503. package/node_modules/@opentelemetry/sdk-trace-base/build/esm/Span.d.ts +3 -0
  504. package/node_modules/@opentelemetry/sdk-trace-base/build/esm/Span.js +23 -0
  505. package/node_modules/@opentelemetry/sdk-trace-base/build/esm/Span.js.map +1 -1
  506. package/node_modules/@opentelemetry/sdk-trace-base/build/esm/Tracer.d.ts +8 -0
  507. package/node_modules/@opentelemetry/sdk-trace-base/build/esm/Tracer.js +10 -0
  508. package/node_modules/@opentelemetry/sdk-trace-base/build/esm/Tracer.js.map +1 -1
  509. package/node_modules/@opentelemetry/sdk-trace-base/build/esm/inspect.d.ts +32 -0
  510. package/node_modules/@opentelemetry/sdk-trace-base/build/esm/inspect.js +53 -0
  511. package/node_modules/@opentelemetry/sdk-trace-base/build/esm/inspect.js.map +1 -0
  512. package/node_modules/@opentelemetry/sdk-trace-base/build/esm/version.d.ts +1 -1
  513. package/node_modules/@opentelemetry/sdk-trace-base/build/esm/version.js +1 -1
  514. package/node_modules/@opentelemetry/sdk-trace-base/build/esm/version.js.map +1 -1
  515. package/node_modules/@opentelemetry/sdk-trace-base/build/esnext/BasicTracerProvider.d.ts +3 -0
  516. package/node_modules/@opentelemetry/sdk-trace-base/build/esnext/BasicTracerProvider.js +10 -1
  517. package/node_modules/@opentelemetry/sdk-trace-base/build/esnext/BasicTracerProvider.js.map +1 -1
  518. package/node_modules/@opentelemetry/sdk-trace-base/build/esnext/Span.d.ts +3 -0
  519. package/node_modules/@opentelemetry/sdk-trace-base/build/esnext/Span.js +23 -0
  520. package/node_modules/@opentelemetry/sdk-trace-base/build/esnext/Span.js.map +1 -1
  521. package/node_modules/@opentelemetry/sdk-trace-base/build/esnext/Tracer.d.ts +8 -0
  522. package/node_modules/@opentelemetry/sdk-trace-base/build/esnext/Tracer.js +10 -0
  523. package/node_modules/@opentelemetry/sdk-trace-base/build/esnext/Tracer.js.map +1 -1
  524. package/node_modules/@opentelemetry/sdk-trace-base/build/esnext/inspect.d.ts +32 -0
  525. package/node_modules/@opentelemetry/sdk-trace-base/build/esnext/inspect.js +53 -0
  526. package/node_modules/@opentelemetry/sdk-trace-base/build/esnext/inspect.js.map +1 -0
  527. package/node_modules/@opentelemetry/sdk-trace-base/build/esnext/version.d.ts +1 -1
  528. package/node_modules/@opentelemetry/sdk-trace-base/build/esnext/version.js +1 -1
  529. package/node_modules/@opentelemetry/sdk-trace-base/build/esnext/version.js.map +1 -1
  530. package/node_modules/@opentelemetry/sdk-trace-base/build/src/BasicTracerProvider.d.ts +3 -0
  531. package/node_modules/@opentelemetry/sdk-trace-base/build/src/BasicTracerProvider.js +10 -1
  532. package/node_modules/@opentelemetry/sdk-trace-base/build/src/BasicTracerProvider.js.map +1 -1
  533. package/node_modules/@opentelemetry/sdk-trace-base/build/src/Span.d.ts +3 -0
  534. package/node_modules/@opentelemetry/sdk-trace-base/build/src/Span.js +23 -0
  535. package/node_modules/@opentelemetry/sdk-trace-base/build/src/Span.js.map +1 -1
  536. package/node_modules/@opentelemetry/sdk-trace-base/build/src/Tracer.d.ts +8 -0
  537. package/node_modules/@opentelemetry/sdk-trace-base/build/src/Tracer.js +10 -0
  538. package/node_modules/@opentelemetry/sdk-trace-base/build/src/Tracer.js.map +1 -1
  539. package/node_modules/@opentelemetry/sdk-trace-base/build/src/inspect.d.ts +32 -0
  540. package/node_modules/@opentelemetry/sdk-trace-base/build/src/inspect.js +58 -0
  541. package/node_modules/@opentelemetry/sdk-trace-base/build/src/inspect.js.map +1 -0
  542. package/node_modules/@opentelemetry/sdk-trace-base/build/src/version.d.ts +1 -1
  543. package/node_modules/@opentelemetry/sdk-trace-base/build/src/version.js +1 -1
  544. package/node_modules/@opentelemetry/sdk-trace-base/build/src/version.js.map +1 -1
  545. package/node_modules/@opentelemetry/sdk-trace-base/package.json +9 -9
  546. package/node_modules/@opentelemetry/sdk-trace-node/build/src/version.d.ts +1 -1
  547. package/node_modules/@opentelemetry/sdk-trace-node/build/src/version.js +1 -1
  548. package/node_modules/@opentelemetry/sdk-trace-node/build/src/version.js.map +1 -1
  549. package/node_modules/@opentelemetry/sdk-trace-node/package.json +8 -8
  550. package/node_modules/@protobufjs/aspromise/LICENSE +26 -0
  551. package/node_modules/@protobufjs/aspromise/README.md +13 -0
  552. package/node_modules/{protobufjs/src/util/aspromise.d.ts → @protobufjs/aspromise/index.d.ts} +13 -13
  553. package/node_modules/{protobufjs/src/util/aspromise.js → @protobufjs/aspromise/index.js} +52 -52
  554. package/node_modules/@protobufjs/aspromise/package.json +21 -0
  555. package/node_modules/@protobufjs/aspromise/tests/index.js +130 -0
  556. package/node_modules/@protobufjs/base64/LICENSE +26 -0
  557. package/node_modules/@protobufjs/base64/README.md +19 -0
  558. package/node_modules/{protobufjs/src/util/base64.d.ts → @protobufjs/base64/index.d.ts} +32 -32
  559. package/node_modules/{protobufjs/src/util/base64.js → @protobufjs/base64/index.js} +139 -146
  560. package/node_modules/@protobufjs/base64/package.json +21 -0
  561. package/node_modules/@protobufjs/base64/tests/index.js +46 -0
  562. package/node_modules/@protobufjs/codegen/LICENSE +26 -0
  563. package/node_modules/@protobufjs/codegen/README.md +49 -0
  564. package/node_modules/{protobufjs/src/util/codegen.d.ts → @protobufjs/codegen/index.d.ts} +31 -31
  565. package/node_modules/{protobufjs/src/util/codegen.js → @protobufjs/codegen/index.js} +112 -113
  566. package/node_modules/@protobufjs/codegen/package.json +13 -0
  567. package/node_modules/@protobufjs/codegen/tests/index.js +13 -0
  568. package/node_modules/@protobufjs/eventemitter/CHANGELOG.md +8 -0
  569. package/node_modules/@protobufjs/eventemitter/LICENSE +26 -0
  570. package/node_modules/@protobufjs/eventemitter/README.md +22 -0
  571. package/node_modules/{protobufjs/src/util/eventemitter.d.ts → @protobufjs/eventemitter/index.d.ts} +45 -45
  572. package/node_modules/{protobufjs/src/util/eventemitter.js → @protobufjs/eventemitter/index.js} +86 -86
  573. package/node_modules/@protobufjs/eventemitter/package.json +21 -0
  574. package/node_modules/@protobufjs/eventemitter/tests/index.js +83 -0
  575. package/node_modules/@protobufjs/fetch/CHANGELOG.md +8 -0
  576. package/node_modules/@protobufjs/fetch/LICENSE +26 -0
  577. package/node_modules/@protobufjs/fetch/README.md +13 -0
  578. package/node_modules/{protobufjs/src/util/fetch.d.ts → @protobufjs/fetch/index.d.ts} +56 -56
  579. package/node_modules/{protobufjs/src/util/fetch.js → @protobufjs/fetch/index.js} +112 -112
  580. package/node_modules/@protobufjs/fetch/package.json +27 -0
  581. package/node_modules/@protobufjs/fetch/tests/data/file.txt +1 -0
  582. package/node_modules/@protobufjs/fetch/tests/index.js +158 -0
  583. package/node_modules/@protobufjs/fetch/util/fs.js +11 -0
  584. package/node_modules/@protobufjs/float/LICENSE +26 -0
  585. package/node_modules/@protobufjs/float/README.md +102 -0
  586. package/node_modules/@protobufjs/float/bench/index.js +87 -0
  587. package/node_modules/@protobufjs/float/bench/suite.js +46 -0
  588. package/node_modules/{protobufjs/src/util/float.js → @protobufjs/float/index.js} +335 -335
  589. package/node_modules/@protobufjs/float/package.json +26 -0
  590. package/node_modules/@protobufjs/float/tests/index.js +100 -0
  591. package/node_modules/@protobufjs/inquire/CHANGELOG.md +8 -0
  592. package/node_modules/@protobufjs/inquire/LICENSE +26 -0
  593. package/node_modules/@protobufjs/inquire/README.md +13 -0
  594. package/node_modules/{protobufjs/src/util/inquire.d.ts → @protobufjs/inquire/index.d.ts} +10 -10
  595. package/node_modules/{protobufjs/src/util/inquire.js → @protobufjs/inquire/index.js} +38 -38
  596. package/node_modules/@protobufjs/inquire/package.json +21 -0
  597. package/node_modules/@protobufjs/inquire/tests/data/array.js +1 -0
  598. package/node_modules/@protobufjs/inquire/tests/data/emptyArray.js +1 -0
  599. package/node_modules/@protobufjs/inquire/tests/data/emptyObject.js +1 -0
  600. package/node_modules/@protobufjs/inquire/tests/data/object.js +1 -0
  601. package/node_modules/@protobufjs/inquire/tests/index.js +20 -0
  602. package/node_modules/@protobufjs/path/LICENSE +26 -0
  603. package/node_modules/@protobufjs/path/README.md +19 -0
  604. package/node_modules/{protobufjs/src/util/path.d.ts → @protobufjs/path/index.d.ts} +22 -22
  605. package/node_modules/{protobufjs/src/util/path.js → @protobufjs/path/index.js} +65 -72
  606. package/node_modules/@protobufjs/path/package.json +21 -0
  607. package/node_modules/@protobufjs/path/tests/index.js +60 -0
  608. package/node_modules/@protobufjs/pool/.npmignore +3 -0
  609. package/node_modules/@protobufjs/pool/LICENSE +26 -0
  610. package/node_modules/@protobufjs/pool/README.md +13 -0
  611. package/node_modules/{protobufjs/src/util/pool.d.ts → @protobufjs/pool/index.d.ts} +32 -32
  612. package/node_modules/{protobufjs/src/util/pool.js → @protobufjs/pool/index.js} +48 -48
  613. package/node_modules/@protobufjs/pool/package.json +21 -0
  614. package/node_modules/@protobufjs/pool/tests/index.js +33 -0
  615. package/node_modules/@protobufjs/utf8/LICENSE +26 -0
  616. package/node_modules/@protobufjs/utf8/README.md +20 -0
  617. package/node_modules/{protobufjs/src/util/utf8.d.ts → @protobufjs/utf8/index.d.ts} +24 -24
  618. package/node_modules/{protobufjs/src/util/utf8.js → @protobufjs/utf8/index.js} +104 -130
  619. package/node_modules/@protobufjs/utf8/package.json +21 -0
  620. package/node_modules/@protobufjs/utf8/tests/data/surrogate_pair_bug.txt +207 -0
  621. package/node_modules/@protobufjs/utf8/tests/data/utf8.txt +216 -0
  622. package/node_modules/@protobufjs/utf8/tests/index.js +74 -0
  623. package/node_modules/@types/node/LICENSE +21 -0
  624. package/node_modules/@types/node/README.md +15 -0
  625. package/node_modules/@types/node/assert/strict.d.ts +59 -0
  626. package/node_modules/@types/node/assert.d.ts +950 -0
  627. package/node_modules/@types/node/async_hooks.d.ts +711 -0
  628. package/node_modules/@types/node/buffer.buffer.d.ts +466 -0
  629. package/node_modules/@types/node/buffer.d.ts +1765 -0
  630. package/node_modules/@types/node/child_process.d.ts +1366 -0
  631. package/node_modules/@types/node/cluster.d.ts +432 -0
  632. package/node_modules/@types/node/compatibility/iterators.d.ts +21 -0
  633. package/node_modules/@types/node/console.d.ts +93 -0
  634. package/node_modules/@types/node/constants.d.ts +14 -0
  635. package/node_modules/@types/node/crypto.d.ts +4058 -0
  636. package/node_modules/@types/node/dgram.d.ts +537 -0
  637. package/node_modules/@types/node/diagnostics_channel.d.ts +552 -0
  638. package/node_modules/@types/node/dns/promises.d.ts +497 -0
  639. package/node_modules/@types/node/dns.d.ts +876 -0
  640. package/node_modules/@types/node/domain.d.ts +150 -0
  641. package/node_modules/@types/node/events.d.ts +1008 -0
  642. package/node_modules/@types/node/fs/promises.d.ts +1468 -0
  643. package/node_modules/@types/node/fs.d.ts +4780 -0
  644. package/node_modules/@types/node/globals.d.ts +150 -0
  645. package/node_modules/@types/node/globals.typedarray.d.ts +101 -0
  646. package/node_modules/@types/node/http.d.ts +2147 -0
  647. package/node_modules/@types/node/http2.d.ts +2485 -0
  648. package/node_modules/@types/node/https.d.ts +400 -0
  649. package/node_modules/@types/node/index.d.ts +117 -0
  650. package/node_modules/@types/node/inspector/promises.d.ts +35 -0
  651. package/node_modules/@types/node/inspector.d.ts +264 -0
  652. package/node_modules/@types/node/inspector.generated.d.ts +4406 -0
  653. package/node_modules/@types/node/module.d.ts +755 -0
  654. package/node_modules/@types/node/net.d.ts +970 -0
  655. package/node_modules/@types/node/os.d.ts +498 -0
  656. package/node_modules/@types/node/package.json +155 -0
  657. package/node_modules/@types/node/path/posix.d.ts +8 -0
  658. package/node_modules/@types/node/path/win32.d.ts +8 -0
  659. package/node_modules/@types/node/path.d.ts +178 -0
  660. package/node_modules/@types/node/perf_hooks.d.ts +612 -0
  661. package/node_modules/@types/node/process.d.ts +2204 -0
  662. package/node_modules/@types/node/punycode.d.ts +89 -0
  663. package/node_modules/@types/node/querystring.d.ts +139 -0
  664. package/node_modules/@types/node/quic.d.ts +897 -0
  665. package/node_modules/@types/node/readline/promises.d.ts +158 -0
  666. package/node_modules/@types/node/readline.d.ts +507 -0
  667. package/node_modules/@types/node/repl.d.ts +420 -0
  668. package/node_modules/@types/node/sea.d.ts +47 -0
  669. package/node_modules/@types/node/sqlite.d.ts +1068 -0
  670. package/node_modules/@types/node/stream/consumers.d.ts +114 -0
  671. package/node_modules/@types/node/stream/iter.d.ts +301 -0
  672. package/node_modules/@types/node/stream/promises.d.ts +211 -0
  673. package/node_modules/@types/node/stream/web.d.ts +300 -0
  674. package/node_modules/@types/node/stream.d.ts +1774 -0
  675. package/node_modules/@types/node/string_decoder.d.ts +27 -0
  676. package/node_modules/@types/node/test/reporters.d.ts +59 -0
  677. package/node_modules/@types/node/test.d.ts +2279 -0
  678. package/node_modules/@types/node/timers/promises.d.ts +93 -0
  679. package/node_modules/@types/node/timers.d.ts +149 -0
  680. package/node_modules/@types/node/tls.d.ts +1193 -0
  681. package/node_modules/@types/node/trace_events.d.ts +103 -0
  682. package/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +462 -0
  683. package/node_modules/@types/node/ts5.6/compatibility/float16array.d.ts +71 -0
  684. package/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +36 -0
  685. package/node_modules/@types/node/ts5.6/index.d.ts +119 -0
  686. package/node_modules/@types/node/ts5.7/compatibility/float16array.d.ts +72 -0
  687. package/node_modules/@types/node/ts5.7/index.d.ts +119 -0
  688. package/node_modules/@types/node/tty.d.ts +225 -0
  689. package/node_modules/@types/node/url.d.ts +556 -0
  690. package/node_modules/@types/node/util/types.d.ts +558 -0
  691. package/node_modules/@types/node/util.d.ts +1677 -0
  692. package/node_modules/@types/node/v8.d.ts +980 -0
  693. package/node_modules/@types/node/vm.d.ts +1136 -0
  694. package/node_modules/@types/node/wasi.d.ts +131 -0
  695. package/node_modules/@types/node/web-globals/abortcontroller.d.ts +59 -0
  696. package/node_modules/@types/node/web-globals/blob.d.ts +23 -0
  697. package/node_modules/@types/node/web-globals/console.d.ts +9 -0
  698. package/node_modules/@types/node/web-globals/crypto.d.ts +39 -0
  699. package/node_modules/@types/node/web-globals/domexception.d.ts +68 -0
  700. package/node_modules/@types/node/web-globals/encoding.d.ts +11 -0
  701. package/node_modules/@types/node/web-globals/events.d.ts +106 -0
  702. package/node_modules/@types/node/web-globals/fetch.d.ts +69 -0
  703. package/node_modules/@types/node/web-globals/importmeta.d.ts +13 -0
  704. package/node_modules/@types/node/web-globals/messaging.d.ts +23 -0
  705. package/node_modules/@types/node/web-globals/navigator.d.ts +25 -0
  706. package/node_modules/@types/node/web-globals/performance.d.ts +45 -0
  707. package/node_modules/@types/node/web-globals/storage.d.ts +24 -0
  708. package/node_modules/@types/node/web-globals/streams.d.ts +115 -0
  709. package/node_modules/@types/node/web-globals/timers.d.ts +44 -0
  710. package/node_modules/@types/node/web-globals/url.d.ts +24 -0
  711. package/node_modules/@types/node/worker_threads.d.ts +671 -0
  712. package/node_modules/@types/node/zlib/iter.d.ts +131 -0
  713. package/node_modules/@types/node/zlib.d.ts +589 -0
  714. package/node_modules/protobufjs/README.md +556 -263
  715. package/node_modules/protobufjs/dist/light/protobuf.js +1569 -1919
  716. package/node_modules/protobufjs/dist/light/protobuf.js.map +1 -1
  717. package/node_modules/protobufjs/dist/light/protobuf.min.js +3 -3
  718. package/node_modules/protobufjs/dist/light/protobuf.min.js.map +1 -1
  719. package/node_modules/protobufjs/dist/minimal/protobuf.js +906 -1132
  720. package/node_modules/protobufjs/dist/minimal/protobuf.js.map +1 -1
  721. package/node_modules/protobufjs/dist/minimal/protobuf.min.js +3 -3
  722. package/node_modules/protobufjs/dist/minimal/protobuf.min.js.map +1 -1
  723. package/node_modules/protobufjs/dist/protobuf.js +1576 -1993
  724. package/node_modules/protobufjs/dist/protobuf.js.map +1 -1
  725. package/node_modules/protobufjs/dist/protobuf.min.js +3 -3
  726. package/node_modules/protobufjs/dist/protobuf.min.js.map +1 -1
  727. package/node_modules/protobufjs/ext/descriptor/README.md +70 -3
  728. package/node_modules/protobufjs/ext/descriptor/index.d.ts +193 -0
  729. package/node_modules/protobufjs/ext/descriptor/index.js +1185 -1
  730. package/node_modules/protobufjs/ext/descriptor/test.js +54 -0
  731. package/node_modules/protobufjs/index.d.ts +720 -834
  732. package/node_modules/protobufjs/package.json +44 -20
  733. package/node_modules/protobufjs/src/converter.js +36 -60
  734. package/node_modules/protobufjs/src/decoder.js +53 -124
  735. package/node_modules/protobufjs/src/encoder.js +2 -10
  736. package/node_modules/protobufjs/src/enum.js +3 -8
  737. package/node_modules/protobufjs/src/field.js +11 -13
  738. package/node_modules/protobufjs/src/index-light.js +1 -1
  739. package/node_modules/protobufjs/src/mapfield.js +0 -1
  740. package/node_modules/protobufjs/src/message.js +11 -5
  741. package/node_modules/protobufjs/src/method.js +4 -5
  742. package/node_modules/protobufjs/src/namespace.js +3 -10
  743. package/node_modules/protobufjs/src/object.js +20 -20
  744. package/node_modules/protobufjs/src/oneof.js +0 -3
  745. package/node_modules/protobufjs/src/parse.js +16 -78
  746. package/node_modules/protobufjs/src/reader.js +31 -136
  747. package/node_modules/protobufjs/src/reader_buffer.js +3 -24
  748. package/node_modules/protobufjs/src/root.js +3 -7
  749. package/node_modules/protobufjs/src/roots.js +1 -1
  750. package/node_modules/protobufjs/src/service.js +6 -13
  751. package/node_modules/protobufjs/src/tokenize.js +1 -6
  752. package/node_modules/protobufjs/src/type.js +30 -44
  753. package/node_modules/protobufjs/src/typescript.jsdoc +15 -0
  754. package/node_modules/protobufjs/src/util/minimal.js +12 -36
  755. package/node_modules/protobufjs/src/util.js +17 -6
  756. package/node_modules/protobufjs/src/verifier.js +6 -6
  757. package/node_modules/protobufjs/src/wrappers.js +1 -0
  758. package/node_modules/protobufjs/src/writer.js +16 -42
  759. package/node_modules/protobufjs/src/writer_buffer.js +1 -18
  760. package/node_modules/protobufjs/tsconfig.json +5 -3
  761. package/node_modules/undici-types/LICENSE +21 -0
  762. package/node_modules/undici-types/README.md +6 -0
  763. package/node_modules/undici-types/agent.d.ts +32 -0
  764. package/node_modules/undici-types/api.d.ts +43 -0
  765. package/node_modules/undici-types/balanced-pool.d.ts +30 -0
  766. package/node_modules/undici-types/cache-interceptor.d.ts +179 -0
  767. package/node_modules/undici-types/cache.d.ts +36 -0
  768. package/node_modules/undici-types/client-stats.d.ts +15 -0
  769. package/node_modules/undici-types/client.d.ts +123 -0
  770. package/node_modules/undici-types/connector.d.ts +36 -0
  771. package/node_modules/undici-types/content-type.d.ts +21 -0
  772. package/node_modules/undici-types/cookies.d.ts +30 -0
  773. package/node_modules/undici-types/diagnostics-channel.d.ts +74 -0
  774. package/node_modules/undici-types/dispatcher.d.ts +279 -0
  775. package/node_modules/undici-types/env-http-proxy-agent.d.ts +22 -0
  776. package/node_modules/undici-types/errors.d.ts +177 -0
  777. package/node_modules/undici-types/eventsource.d.ts +66 -0
  778. package/node_modules/undici-types/fetch.d.ts +211 -0
  779. package/node_modules/undici-types/formdata.d.ts +108 -0
  780. package/node_modules/undici-types/global-dispatcher.d.ts +9 -0
  781. package/node_modules/undici-types/global-origin.d.ts +7 -0
  782. package/node_modules/undici-types/h2c-client.d.ts +73 -0
  783. package/node_modules/undici-types/handlers.d.ts +15 -0
  784. package/node_modules/undici-types/header.d.ts +160 -0
  785. package/node_modules/undici-types/index.d.ts +91 -0
  786. package/node_modules/undici-types/interceptors.d.ts +80 -0
  787. package/node_modules/undici-types/mock-agent.d.ts +68 -0
  788. package/node_modules/undici-types/mock-call-history.d.ts +111 -0
  789. package/node_modules/undici-types/mock-client.d.ts +27 -0
  790. package/node_modules/undici-types/mock-errors.d.ts +12 -0
  791. package/node_modules/undici-types/mock-interceptor.d.ts +94 -0
  792. package/node_modules/undici-types/mock-pool.d.ts +27 -0
  793. package/node_modules/undici-types/package.json +55 -0
  794. package/node_modules/undici-types/patch.d.ts +29 -0
  795. package/node_modules/undici-types/pool-stats.d.ts +19 -0
  796. package/node_modules/undici-types/pool.d.ts +41 -0
  797. package/node_modules/undici-types/proxy-agent.d.ts +29 -0
  798. package/node_modules/undici-types/readable.d.ts +68 -0
  799. package/node_modules/undici-types/retry-agent.d.ts +8 -0
  800. package/node_modules/undici-types/retry-handler.d.ts +125 -0
  801. package/node_modules/undici-types/round-robin-pool.d.ts +41 -0
  802. package/node_modules/undici-types/snapshot-agent.d.ts +109 -0
  803. package/node_modules/undici-types/socks5-proxy-agent.d.ts +25 -0
  804. package/node_modules/undici-types/util.d.ts +18 -0
  805. package/node_modules/undici-types/utility.d.ts +7 -0
  806. package/node_modules/undici-types/webidl.d.ts +347 -0
  807. package/node_modules/undici-types/websocket.d.ts +188 -0
  808. package/npm-shrinkwrap.json +294 -204
  809. package/openclaw.plugin.json +1 -1
  810. package/package.json +14 -14
  811. package/node_modules/protobufjs/ext/README.md +0 -81
  812. package/node_modules/protobufjs/ext/descriptor.d.ts +0 -86
  813. package/node_modules/protobufjs/ext/descriptor.generated.d.ts +0 -409
  814. package/node_modules/protobufjs/ext/descriptor.js +0 -1266
  815. package/node_modules/protobufjs/ext/textformat.d.ts +0 -19
  816. package/node_modules/protobufjs/ext/textformat.generated.d.ts +0 -11
  817. package/node_modules/protobufjs/ext/textformat.js +0 -1235
  818. package/node_modules/protobufjs/google/protobuf/compiler/plugin.json +0 -126
  819. package/node_modules/protobufjs/google/protobuf/compiler/plugin.proto +0 -47
  820. package/node_modules/protobufjs/src/typescript.js +0 -25
  821. /package/node_modules/{protobufjs/src/util/float.d.ts → @protobufjs/float/index.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { ContextManager, TextMapPropagator } from '@opentelemetry/api';\nimport { context, diag, propagation } from '@opentelemetry/api';\nimport {\n CompositePropagator,\n getNumberFromEnv,\n getStringFromEnv,\n getStringListFromEnv,\n W3CBaggagePropagator,\n W3CTraceContextPropagator,\n} from '@opentelemetry/core';\nimport { OTLPTraceExporter as OTLPProtoTraceExporter } from '@opentelemetry/exporter-trace-otlp-proto';\nimport { OTLPTraceExporter as OTLPHttpTraceExporter } from '@opentelemetry/exporter-trace-otlp-http';\nimport { OTLPTraceExporter as OTLPGrpcTraceExporter } from '@opentelemetry/exporter-trace-otlp-grpc';\nimport { ZipkinExporter } from '@opentelemetry/exporter-zipkin';\nimport type {\n DetectedResourceAttributes,\n Resource,\n ResourceDetector,\n} from '@opentelemetry/resources';\nimport {\n envDetector,\n hostDetector,\n osDetector,\n processDetector,\n resourceFromAttributes,\n serviceInstanceIdDetector,\n} from '@opentelemetry/resources';\nimport type {\n Sampler,\n SpanExporter,\n SpanLimits,\n SpanProcessor,\n} from '@opentelemetry/sdk-trace-base';\nimport {\n AlwaysOffSampler,\n AlwaysOnSampler,\n BatchSpanProcessor,\n ConsoleSpanExporter,\n ParentBasedSampler,\n SimpleSpanProcessor,\n TraceIdRatioBasedSampler,\n} from '@opentelemetry/sdk-trace-base';\nimport { B3InjectEncoding, B3Propagator } from '@opentelemetry/propagator-b3';\nimport { JaegerPropagator } from '@opentelemetry/propagator-jaeger';\nimport { AsyncLocalStorageContextManager } from '@opentelemetry/context-async-hooks';\nimport { OTLPLogExporter as OTLPHttpLogExporter } from '@opentelemetry/exporter-logs-otlp-http';\nimport { OTLPLogExporter as OTLPGrpcLogExporter } from '@opentelemetry/exporter-logs-otlp-grpc';\nimport { OTLPLogExporter as OTLPProtoLogExporter } from '@opentelemetry/exporter-logs-otlp-proto';\nimport { CompressionAlgorithm } from '@opentelemetry/otlp-exporter-base';\nimport type {\n ConfigurationModel,\n LogRecordExporterConfigModel,\n InstrumentTypeConfigModel,\n AggregationConfigModel,\n PeriodicMetricReaderConfigModel,\n SpanExporterConfigModel,\n SamplerConfigModel,\n NameStringValuePairConfigModel,\n HttpTlsConfigModel,\n} from '@opentelemetry/configuration';\nimport type {\n AggregationOption,\n IAttributesProcessor,\n IMetricReader,\n PushMetricExporter,\n ViewOptions,\n} from '@opentelemetry/sdk-metrics';\nimport {\n AggregationType,\n ConsoleMetricExporter,\n createAllowListAttributesProcessor,\n createDenyListAttributesProcessor,\n InstrumentType,\n PeriodicExportingMetricReader,\n} from '@opentelemetry/sdk-metrics';\nimport { OTLPMetricExporter as OTLPGrpcMetricExporter } from '@opentelemetry/exporter-metrics-otlp-grpc';\nimport { OTLPMetricExporter as OTLPHttpMetricExporter } from '@opentelemetry/exporter-metrics-otlp-http';\nimport { OTLPMetricExporter as OTLPProtoMetricExporter } from '@opentelemetry/exporter-metrics-otlp-proto';\nimport type {\n BufferConfig,\n LogRecordExporter,\n LoggerProviderOptions,\n LogRecordProcessor,\n} from '@opentelemetry/sdk-logs';\nimport {\n BatchLogRecordProcessor,\n ConsoleLogRecordExporter,\n SimpleLogRecordProcessor,\n} from '@opentelemetry/sdk-logs';\nimport * as fs from 'fs';\n\nconst RESOURCE_DETECTOR_ENVIRONMENT = 'env';\nconst RESOURCE_DETECTOR_HOST = 'host';\nconst RESOURCE_DETECTOR_OS = 'os';\nconst RESOURCE_DETECTOR_PROCESS = 'process';\nconst RESOURCE_DETECTOR_SERVICE_INSTANCE_ID = 'serviceinstance';\n\nexport function getResourceFromConfiguration(\n config: ConfigurationModel\n): Resource | undefined {\n if (config.resource && config.resource.attributes) {\n const attr: DetectedResourceAttributes = {};\n for (let i = 0; i < config.resource.attributes.length; i++) {\n const a = config.resource.attributes[i];\n attr[a.name] = a.value;\n }\n return resourceFromAttributes(attr, {\n schemaUrl: config.resource.schema_url,\n });\n }\n return undefined;\n}\n\nexport function getResourceDetectorsFromEnv(): Array<ResourceDetector> {\n // When updating this list, make sure to also update the section `resourceDetectors` on README.\n const resourceDetectors = new Map<string, ResourceDetector>([\n [RESOURCE_DETECTOR_HOST, hostDetector],\n [RESOURCE_DETECTOR_OS, osDetector],\n [RESOURCE_DETECTOR_SERVICE_INSTANCE_ID, serviceInstanceIdDetector],\n [RESOURCE_DETECTOR_PROCESS, processDetector],\n [RESOURCE_DETECTOR_ENVIRONMENT, envDetector],\n ]);\n\n const resourceDetectorsFromEnv = getStringListFromEnv(\n 'OTEL_NODE_RESOURCE_DETECTORS'\n ) ?? ['all'];\n\n if (resourceDetectorsFromEnv.includes('all')) {\n return [...resourceDetectors.values()].flat();\n }\n\n if (resourceDetectorsFromEnv.includes('none')) {\n return [];\n }\n\n return resourceDetectorsFromEnv.flatMap(detector => {\n const resourceDetector = resourceDetectors.get(detector);\n if (!resourceDetector) {\n diag.warn(\n `Invalid resource detector \"${detector}\" specified in the environment variable OTEL_NODE_RESOURCE_DETECTORS`\n );\n }\n return resourceDetector || [];\n });\n}\n\nexport function getResourceDetectorsFromConfiguration(\n config: ConfigurationModel\n): Array<ResourceDetector> {\n const detectors = config.resource?.['detection/development']?.detectors ?? [];\n\n return detectors.flatMap(detector => {\n const result: ResourceDetector[] = [];\n if (detector.host != null) result.push(hostDetector);\n if (detector.os != null) result.push(osDetector);\n if (detector.process != null) result.push(processDetector);\n if (detector.service != null) result.push(serviceInstanceIdDetector);\n if (detector.env != null) result.push(envDetector);\n return result;\n });\n}\n\nexport function getOtlpProtocolFromEnv(): string {\n return (\n getStringFromEnv('OTEL_EXPORTER_OTLP_TRACES_PROTOCOL') ??\n getStringFromEnv('OTEL_EXPORTER_OTLP_PROTOCOL') ??\n 'http/protobuf'\n );\n}\n\nfunction getOtlpExporterFromEnv(): SpanExporter {\n const protocol = getOtlpProtocolFromEnv();\n\n switch (protocol) {\n case 'grpc':\n return new OTLPGrpcTraceExporter();\n case 'http/json':\n return new OTLPHttpTraceExporter();\n case 'http/protobuf':\n return new OTLPProtoTraceExporter();\n default:\n diag.warn(\n `Unsupported OTLP traces protocol: ${protocol}. Using http/protobuf.`\n );\n return new OTLPProtoTraceExporter();\n }\n}\n\nexport function getSpanProcessorsFromEnv(): SpanProcessor[] {\n const exportersMap = new Map<string, () => SpanExporter>([\n ['otlp', () => getOtlpExporterFromEnv()],\n ['zipkin', () => new ZipkinExporter()],\n ['console', () => new ConsoleSpanExporter()],\n ]);\n const exporters: SpanExporter[] = [];\n const processors: SpanProcessor[] = [];\n let traceExportersList = Array.from(\n new Set(getStringListFromEnv('OTEL_TRACES_EXPORTER'))\n ).filter(s => s !== 'null');\n\n if (traceExportersList[0] === 'none') {\n diag.warn(\n 'OTEL_TRACES_EXPORTER contains \"none\". SDK will not be initialized.'\n );\n return [];\n }\n\n if (traceExportersList.length === 0) {\n diag.debug('OTEL_TRACES_EXPORTER is empty. Using default otlp exporter.');\n traceExportersList = ['otlp'];\n } else if (\n traceExportersList.length > 1 &&\n traceExportersList.includes('none')\n ) {\n diag.warn(\n 'OTEL_TRACES_EXPORTER contains \"none\" along with other exporters. Using default otlp exporter.'\n );\n traceExportersList = ['otlp'];\n }\n\n for (const name of traceExportersList) {\n const exporter = exportersMap.get(name)?.();\n if (exporter) {\n exporters.push(exporter);\n } else {\n diag.warn(`Unrecognized OTEL_TRACES_EXPORTER value: ${name}.`);\n }\n }\n\n for (const exp of exporters) {\n if (exp instanceof ConsoleSpanExporter) {\n processors.push(new SimpleSpanProcessor(exp));\n } else {\n processors.push(new BatchSpanProcessor(exp));\n }\n }\n\n if (exporters.length === 0) {\n diag.warn(\n 'Unable to set up trace exporter(s) due to invalid exporter and/or protocol values.'\n );\n }\n\n return processors;\n}\n\n/**\n * Get a propagator as defined by environment variables\n */\nexport function getPropagatorFromEnv(): TextMapPropagator | null | undefined {\n // Empty and undefined MUST be treated equal.\n const propagatorsEnvVarValue = getStringListFromEnv('OTEL_PROPAGATORS');\n if (propagatorsEnvVarValue == null) {\n // return undefined to fall back to default\n return undefined;\n }\n\n if (propagatorsEnvVarValue.includes('none')) {\n return null;\n }\n\n // Implementation note: this only contains specification required propagators that are actually hosted in this repo.\n // Any other propagators (like aws, aws-lambda, should go into `@opentelemetry/auto-configuration-propagators` instead).\n const propagatorsFactory = new Map<string, () => TextMapPropagator>([\n ['tracecontext', () => new W3CTraceContextPropagator()],\n ['baggage', () => new W3CBaggagePropagator()],\n ['b3', () => new B3Propagator()],\n [\n 'b3multi',\n () => new B3Propagator({ injectEncoding: B3InjectEncoding.MULTI_HEADER }),\n ],\n ['jaeger', () => new JaegerPropagator()],\n ]);\n\n // Values MUST be deduplicated in order to register a Propagator only once.\n const uniquePropagatorNames = Array.from(new Set(propagatorsEnvVarValue));\n const validPropagators: TextMapPropagator[] = [];\n\n uniquePropagatorNames.forEach(name => {\n const propagator = propagatorsFactory.get(name)?.();\n if (!propagator) {\n diag.warn(\n `Propagator \"${name}\" requested through environment variable is unavailable.`\n );\n return;\n }\n\n validPropagators.push(propagator);\n });\n\n if (validPropagators.length === 0) {\n // null to signal that the default should **not** be used in its place.\n return null;\n } else if (uniquePropagatorNames.length === 1) {\n return validPropagators[0];\n } else {\n return new CompositePropagator({\n propagators: validPropagators,\n });\n }\n}\n\n/**\n * Get a propagator as defined by configuration model from configuration\n */\nexport function getPropagatorFromConfiguration(\n config: ConfigurationModel\n): TextMapPropagator | null | undefined {\n const propagatorsValue = getKeyListFromObjectArray(\n config.propagator?.composite\n );\n if (propagatorsValue == null) {\n // return undefined to fall back to default\n return undefined;\n }\n\n if (propagatorsValue.includes('none')) {\n return null;\n }\n\n // Implementation note: this only contains specification required propagators that are actually hosted in this repo.\n // Any other propagators (like aws, aws-lambda, should go into `@opentelemetry/auto-configuration-propagators` instead).\n const propagatorsFactory = new Map<string, () => TextMapPropagator>([\n ['tracecontext', () => new W3CTraceContextPropagator()],\n ['baggage', () => new W3CBaggagePropagator()],\n ['b3', () => new B3Propagator()],\n [\n 'b3multi',\n () => new B3Propagator({ injectEncoding: B3InjectEncoding.MULTI_HEADER }),\n ],\n ['jaeger', () => new JaegerPropagator()],\n ]);\n\n // Values MUST be deduplicated in order to register a Propagator only once.\n const uniquePropagatorNames = Array.from(new Set(propagatorsValue));\n const validPropagators: TextMapPropagator[] = [];\n\n uniquePropagatorNames.forEach(name => {\n const propagator = propagatorsFactory.get(name)?.();\n if (!propagator) {\n diag.warn(\n `Propagator \"${name}\" requested through configuration is unavailable.`\n );\n return;\n }\n\n validPropagators.push(propagator);\n });\n\n if (validPropagators.length === 0) {\n // null to signal that the default should **not** be used in its place.\n return null;\n } else if (uniquePropagatorNames.length === 1) {\n return validPropagators[0];\n } else {\n return new CompositePropagator({\n propagators: validPropagators,\n });\n }\n}\n\nexport function setupContextManager(\n contextManager: ContextManager | null | undefined\n) {\n // null means 'do not register'\n if (contextManager === null) {\n return;\n }\n\n // undefined means 'register default'\n if (contextManager === undefined) {\n const defaultContextManager = new AsyncLocalStorageContextManager();\n defaultContextManager.enable();\n context.setGlobalContextManager(defaultContextManager);\n return;\n }\n\n contextManager.enable();\n context.setGlobalContextManager(contextManager);\n}\n\nexport function setupPropagator(\n propagator: TextMapPropagator | null | undefined\n) {\n // null means 'do not register'\n if (propagator === null) {\n return;\n }\n\n // undefined means 'register default'\n if (propagator === undefined) {\n propagation.setGlobalPropagator(\n new CompositePropagator({\n propagators: [\n new W3CTraceContextPropagator(),\n new W3CBaggagePropagator(),\n ],\n })\n );\n return;\n }\n\n propagation.setGlobalPropagator(propagator);\n}\n\nexport function getKeyListFromObjectArray(\n obj: object[] | undefined\n): string[] | undefined {\n if (!obj || obj.length === 0) {\n return undefined;\n }\n\n const keys: string[] = [];\n for (const item of obj) {\n for (const key of Object.keys(item)) {\n keys.push(key);\n }\n }\n return keys;\n}\n\nexport function getNonNegativeNumberFromEnv(\n envVarName: string\n): number | undefined {\n const value = getNumberFromEnv(envVarName);\n if (value != null && value <= 0) {\n diag.warn(\n `${envVarName} (${value}) is invalid, expected number greater than 0, using default.`\n );\n return undefined;\n }\n return value;\n}\n\nexport function getPeriodicExportingMetricReaderFromEnv(\n exporter: PushMetricExporter\n): IMetricReader {\n const defaultTimeoutMillis = 30_000;\n const defaultIntervalMillis = 60_000;\n\n const rawExportIntervalMillis = getNonNegativeNumberFromEnv(\n 'OTEL_METRIC_EXPORT_INTERVAL'\n );\n const rawExportTimeoutMillis = getNonNegativeNumberFromEnv(\n 'OTEL_METRIC_EXPORT_TIMEOUT'\n );\n\n // Apply defaults\n const exportIntervalMillis = rawExportIntervalMillis ?? defaultIntervalMillis;\n let exportTimeoutMillis = rawExportTimeoutMillis ?? defaultTimeoutMillis;\n\n // Ensure timeout doesn't exceed interval\n if (exportTimeoutMillis > exportIntervalMillis) {\n // determine which env vars were set and which ones defaulted for logging purposes\n const timeoutSource =\n rawExportTimeoutMillis != null\n ? rawExportTimeoutMillis.toString()\n : `${defaultTimeoutMillis}, default`;\n const intervalSource =\n rawExportIntervalMillis != null\n ? rawExportIntervalMillis.toString()\n : `${defaultIntervalMillis}, default`;\n\n const bothSetByUser =\n rawExportTimeoutMillis != null && rawExportIntervalMillis != null;\n const logMessage = `OTEL_METRIC_EXPORT_TIMEOUT (${timeoutSource}) is greater than OTEL_METRIC_EXPORT_INTERVAL (${intervalSource}). Clamping timeout to interval value.`;\n\n // only bother users if they explicitly set both values.\n if (bothSetByUser) {\n diag.warn(logMessage);\n } else {\n diag.info(logMessage);\n }\n\n exportTimeoutMillis = exportIntervalMillis;\n }\n\n return new PeriodicExportingMetricReader({\n exportTimeoutMillis,\n exportIntervalMillis,\n exporter,\n });\n}\n\nexport function getOtlpMetricExporterFromEnv(): PushMetricExporter {\n const protocol =\n (\n getStringFromEnv('OTEL_EXPORTER_OTLP_METRICS_PROTOCOL') ??\n getStringFromEnv('OTEL_EXPORTER_OTLP_PROTOCOL')\n )?.trim() || 'http/protobuf'; // Using || to also fall back on empty string\n\n switch (protocol) {\n case 'grpc':\n return new OTLPGrpcMetricExporter();\n case 'http/json':\n return new OTLPHttpMetricExporter();\n case 'http/protobuf':\n return new OTLPProtoMetricExporter();\n }\n\n diag.warn(\n `Unsupported OTLP metrics protocol: \"${protocol}\". Using http/protobuf.`\n );\n return new OTLPProtoMetricExporter();\n}\n\nexport function getPeriodicMetricReaderFromConfiguration(\n periodic: PeriodicMetricReaderConfigModel\n): IMetricReader | undefined {\n if (periodic.exporter) {\n let exporter;\n if (periodic.exporter.otlp_http) {\n const encoding = periodic.exporter.otlp_http.encoding;\n if (encoding === 'json') {\n exporter = new OTLPHttpMetricExporter({\n compression:\n periodic.exporter.otlp_http.compression === 'gzip'\n ? CompressionAlgorithm.GZIP\n : CompressionAlgorithm.NONE,\n });\n } else if (encoding === 'protobuf') {\n exporter = new OTLPProtoMetricExporter({\n compression:\n periodic.exporter.otlp_http.compression === 'gzip'\n ? CompressionAlgorithm.GZIP\n : CompressionAlgorithm.NONE,\n });\n } else {\n diag.warn(`Unsupported OTLP metrics encoding: ${encoding}.`);\n }\n }\n if (periodic.exporter.otlp_grpc) {\n exporter = new OTLPGrpcMetricExporter({\n compression:\n periodic.exporter.otlp_grpc.compression === 'gzip'\n ? CompressionAlgorithm.GZIP\n : CompressionAlgorithm.NONE,\n });\n }\n\n if (exporter) {\n // TODO(6425): add cardinality_limits\n return new PeriodicExportingMetricReader({\n exportIntervalMillis: periodic.interval ?? 60_000,\n exportTimeoutMillis: periodic.timeout ?? 30_000,\n exporter,\n });\n }\n if (periodic.exporter.console) {\n return new PeriodicExportingMetricReader({\n exporter: new ConsoleMetricExporter(),\n });\n }\n }\n diag.warn(`Unsupported Metric Exporter.`);\n return undefined;\n}\n\n/**\n * Get LoggerProviderConfig from environment variables.\n */\nexport function getLoggerProviderConfigFromEnv(): LoggerProviderOptions {\n return {\n logRecordLimits: {\n attributeCountLimit:\n getNonNegativeNumberFromEnv('OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT') ??\n getNonNegativeNumberFromEnv('OTEL_ATTRIBUTE_COUNT_LIMIT'),\n attributeValueLengthLimit:\n getNonNegativeNumberFromEnv(\n 'OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT'\n ) ?? getNonNegativeNumberFromEnv('OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT'),\n },\n };\n}\n\n/**\n * Get configuration for BatchLogRecordProcessor from environment variables.\n */\nexport function getBatchLogRecordProcessorConfigFromEnv(): BufferConfig {\n return {\n maxQueueSize: getNonNegativeNumberFromEnv('OTEL_BLRP_MAX_QUEUE_SIZE'),\n scheduledDelayMillis: getNonNegativeNumberFromEnv(\n 'OTEL_BLRP_SCHEDULE_DELAY'\n ),\n exportTimeoutMillis: getNonNegativeNumberFromEnv(\n 'OTEL_BLRP_EXPORT_TIMEOUT'\n ),\n maxExportBatchSize: getNonNegativeNumberFromEnv(\n 'OTEL_BLRP_MAX_EXPORT_BATCH_SIZE'\n ),\n };\n}\n\nexport function getBatchLogRecordProcessorFromEnv(\n exporter: LogRecordExporter\n): BatchLogRecordProcessor {\n return new BatchLogRecordProcessor(\n exporter,\n getBatchLogRecordProcessorConfigFromEnv()\n );\n}\n\nexport function getLogRecordExporter(\n exporter: LogRecordExporterConfigModel\n): LogRecordExporter | undefined {\n if (exporter.otlp_http) {\n const encoding = exporter.otlp_http.encoding;\n if (encoding === 'json') {\n return new OTLPHttpLogExporter({\n compression:\n exporter.otlp_http.compression === 'gzip'\n ? CompressionAlgorithm.GZIP\n : CompressionAlgorithm.NONE,\n });\n }\n if (encoding === 'protobuf') {\n return new OTLPProtoLogExporter({\n compression:\n exporter.otlp_http.compression === 'gzip'\n ? CompressionAlgorithm.GZIP\n : CompressionAlgorithm.NONE,\n });\n }\n diag.warn(\n `Unsupported OTLP logs encoding: ${encoding}. Using http/protobuf.`\n );\n return new OTLPProtoLogExporter({\n compression:\n exporter.otlp_http.compression === 'gzip'\n ? CompressionAlgorithm.GZIP\n : CompressionAlgorithm.NONE,\n });\n } else if (exporter.otlp_grpc) {\n return new OTLPGrpcLogExporter({\n compression:\n exporter.otlp_grpc.compression === 'gzip'\n ? CompressionAlgorithm.GZIP\n : CompressionAlgorithm.NONE,\n });\n } else if (exporter.console) {\n return new ConsoleLogRecordExporter();\n }\n diag.warn(`Unsupported Exporter value. No Log Record Exporter registered`);\n return undefined;\n}\n\nexport function getLogRecordProcessorsFromConfiguration(\n config: ConfigurationModel\n): LogRecordProcessor[] | undefined {\n const logRecordProcessors: LogRecordProcessor[] = [];\n config.logger_provider?.processors?.forEach(processor => {\n if (processor.batch) {\n const exporter = getLogRecordExporter(processor.batch.exporter);\n if (exporter) {\n logRecordProcessors.push(\n new BatchLogRecordProcessor(exporter, {\n maxQueueSize: processor.batch.max_queue_size,\n maxExportBatchSize: processor.batch.max_export_batch_size,\n scheduledDelayMillis: processor.batch.schedule_delay,\n exportTimeoutMillis: processor.batch.export_timeout,\n })\n );\n }\n }\n if (processor.simple) {\n const exporter = getLogRecordExporter(processor.simple.exporter);\n if (exporter) {\n logRecordProcessors.push(new SimpleLogRecordProcessor(exporter));\n }\n }\n });\n if (logRecordProcessors.length > 0) {\n return logRecordProcessors;\n }\n return undefined;\n}\n\nexport function getHeadersFromConfiguration(\n headers: NameStringValuePairConfigModel[] | undefined\n): Record<string, string> | undefined {\n if (!headers) {\n return undefined;\n }\n const result: Record<string, string> = {};\n headers.forEach(header => {\n result[header.name] = header.value;\n });\n return result;\n}\n\nexport function getHttpAgentOptionsFromTls(\n tls: HttpTlsConfigModel | undefined\n): { ca?: Buffer; cert?: Buffer; key?: Buffer } | undefined {\n if (tls && (tls.ca_file || tls.cert_file || tls.key_file)) {\n const httpsAgentOptions: { ca?: Buffer; cert?: Buffer; key?: Buffer } = {};\n if (tls.ca_file) {\n try {\n httpsAgentOptions.ca = fs.readFileSync(tls.ca_file);\n } catch (e) {\n diag.warn(`Failed to read TLS CA file at ${tls.ca_file}: ${e}`);\n }\n }\n if (tls.cert_file) {\n try {\n httpsAgentOptions.cert = fs.readFileSync(tls.cert_file);\n } catch (e) {\n diag.warn(`Failed to read TLS cert file at ${tls.cert_file}: ${e}`);\n }\n }\n if (tls.key_file) {\n try {\n httpsAgentOptions.key = fs.readFileSync(tls.key_file);\n } catch (e) {\n diag.warn(`Failed to read TLS key file at ${tls.key_file}: ${e}`);\n }\n }\n return httpsAgentOptions;\n }\n return undefined;\n}\n\nexport function getSpanExporter(\n exporter: SpanExporterConfigModel\n): SpanExporter | undefined {\n if (exporter.otlp_http) {\n const encoding = exporter.otlp_http.encoding;\n if (encoding === 'json') {\n return new OTLPHttpTraceExporter({\n compression:\n exporter.otlp_http.compression === 'gzip'\n ? CompressionAlgorithm.GZIP\n : CompressionAlgorithm.NONE,\n url: exporter.otlp_http.endpoint,\n headers: getHeadersFromConfiguration(exporter.otlp_http.headers),\n timeoutMillis: exporter.otlp_http.timeout,\n httpAgentOptions: getHttpAgentOptionsFromTls(exporter.otlp_http.tls),\n });\n } else {\n return new OTLPProtoTraceExporter({\n compression:\n exporter.otlp_http.compression === 'gzip'\n ? CompressionAlgorithm.GZIP\n : CompressionAlgorithm.NONE,\n url: exporter.otlp_http.endpoint,\n headers: getHeadersFromConfiguration(exporter.otlp_http.headers),\n timeoutMillis: exporter.otlp_http.timeout,\n httpAgentOptions: getHttpAgentOptionsFromTls(exporter.otlp_http.tls),\n });\n }\n } else if (exporter.otlp_grpc) {\n return new OTLPGrpcTraceExporter({\n compression:\n exporter.otlp_grpc.compression === 'gzip'\n ? CompressionAlgorithm.GZIP\n : CompressionAlgorithm.NONE,\n url: exporter.otlp_grpc.endpoint,\n timeoutMillis: exporter.otlp_grpc.timeout,\n // TODO (6614): add support for credentials\n // TODO (6615): add metadata (headers) support\n });\n } else if (exporter.console) {\n return new ConsoleSpanExporter();\n }\n diag.warn(`Unsupported Exporter value. No Span Exporter registered`);\n return undefined;\n}\n\nexport function getSpanProcessorsFromConfiguration(\n config: ConfigurationModel\n): SpanProcessor[] | undefined {\n const spanProcessors: SpanProcessor[] = [];\n config.tracer_provider?.processors?.forEach(processor => {\n if (processor.batch) {\n const exporter = getSpanExporter(processor.batch.exporter);\n if (exporter) {\n spanProcessors.push(\n new BatchSpanProcessor(exporter, {\n maxQueueSize: processor.batch.max_queue_size,\n maxExportBatchSize: processor.batch.max_export_batch_size,\n scheduledDelayMillis: processor.batch.schedule_delay,\n exportTimeoutMillis: processor.batch.export_timeout,\n })\n );\n }\n }\n if (processor.simple) {\n const exporter = getSpanExporter(processor.simple.exporter);\n if (exporter) {\n spanProcessors.push(new SimpleSpanProcessor(exporter));\n }\n }\n });\n if (spanProcessors.length > 0) {\n return spanProcessors;\n }\n return undefined;\n}\n\nexport function getSpanLimitsFromConfiguration(\n config: ConfigurationModel\n): SpanLimits | undefined {\n if (config.tracer_provider?.limits) {\n const limitsConfig = config.tracer_provider.limits;\n const spanLimits: SpanLimits = {};\n spanLimits.attributeCountLimit = limitsConfig.attribute_count_limit ?? 128;\n spanLimits.eventCountLimit = limitsConfig.event_count_limit ?? 128;\n spanLimits.linkCountLimit = limitsConfig.link_count_limit ?? 128;\n spanLimits.attributePerLinkCountLimit =\n limitsConfig.link_attribute_count_limit ?? 128;\n spanLimits.attributePerEventCountLimit =\n limitsConfig.event_attribute_count_limit ?? 128;\n\n if (limitsConfig.attribute_value_length_limit != null) {\n spanLimits.attributeValueLengthLimit =\n limitsConfig.attribute_value_length_limit;\n }\n\n return spanLimits;\n }\n return undefined;\n}\n\nexport function getMeterReadersFromConfiguration(\n config: ConfigurationModel\n): IMetricReader[] | undefined {\n const metricReaders: IMetricReader[] = [];\n config.meter_provider?.readers?.forEach(reader => {\n if (reader.periodic) {\n const periodicReader = getPeriodicMetricReaderFromConfiguration(\n reader.periodic\n );\n if (periodicReader) {\n metricReaders.push(periodicReader);\n }\n }\n });\n if (metricReaders.length > 0) {\n return metricReaders;\n }\n return undefined;\n}\n\nexport function getInstrumentType(\n instrument: InstrumentTypeConfigModel\n): InstrumentType | undefined {\n switch (instrument) {\n case 'counter':\n return InstrumentType.COUNTER;\n case 'gauge':\n return InstrumentType.GAUGE;\n case 'histogram':\n return InstrumentType.HISTOGRAM;\n case 'observable_counter':\n return InstrumentType.OBSERVABLE_COUNTER;\n case 'observable_gauge':\n return InstrumentType.OBSERVABLE_GAUGE;\n case 'observable_up_down_counter':\n return InstrumentType.OBSERVABLE_UP_DOWN_COUNTER;\n case 'up_down_counter':\n return InstrumentType.UP_DOWN_COUNTER;\n default:\n diag.warn(`Unsupported instrument type: ${instrument}`);\n return undefined;\n }\n}\n\nexport function getAggregationType(\n aggregation: AggregationConfigModel\n): AggregationOption | undefined {\n if (aggregation.default) {\n return {\n type: AggregationType.DEFAULT,\n };\n }\n if (aggregation.drop) {\n return {\n type: AggregationType.DROP,\n };\n }\n if (aggregation.explicit_bucket_histogram) {\n return {\n type: AggregationType.EXPLICIT_BUCKET_HISTOGRAM,\n options: {\n recordMinMax:\n aggregation.explicit_bucket_histogram.record_min_max ?? true,\n boundaries: aggregation.explicit_bucket_histogram.boundaries ?? [\n 0, 5, 10, 25, 50, 75, 100, 250, 500, 750, 1000, 2500, 5000, 7500,\n 10000,\n ],\n },\n };\n }\n\n if (aggregation.base2_exponential_bucket_histogram) {\n return {\n type: AggregationType.EXPONENTIAL_HISTOGRAM,\n options: {\n recordMinMax:\n aggregation.base2_exponential_bucket_histogram.record_min_max ?? true,\n maxSize: aggregation.base2_exponential_bucket_histogram.max_size,\n },\n };\n }\n if (aggregation.last_value) {\n return {\n type: AggregationType.LAST_VALUE,\n };\n }\n if (aggregation.sum) {\n return {\n type: AggregationType.SUM,\n };\n }\n\n diag.warn(`Unsupported aggregation type`);\n return undefined;\n}\n\nexport function getMeterViewsFromConfiguration(\n config: ConfigurationModel\n): ViewOptions[] | undefined {\n const metricViews: ViewOptions[] = [];\n config.meter_provider?.views?.forEach(view => {\n const viewOption: ViewOptions = {};\n if (view.selector) {\n if (view.selector.instrument_name) {\n viewOption.instrumentName = view.selector.instrument_name;\n }\n if (view.selector.instrument_type) {\n const instrumentType = getInstrumentType(view.selector.instrument_type);\n if (instrumentType) {\n viewOption.instrumentType = instrumentType;\n }\n }\n if (view.selector.unit) {\n viewOption.instrumentUnit = view.selector.unit;\n }\n if (view.selector.meter_name) {\n viewOption.meterName = view.selector.meter_name;\n }\n if (view.selector.meter_version) {\n viewOption.meterVersion = view.selector.meter_version;\n }\n if (view.selector.meter_schema_url) {\n viewOption.meterSchemaUrl = view.selector.meter_schema_url;\n }\n }\n if (view.stream) {\n if (view.stream.name) {\n viewOption.name = view.stream.name;\n }\n viewOption.aggregationCardinalityLimit =\n view.stream.aggregation_cardinality_limit ?? 2_000;\n if (view.stream.description) {\n viewOption.description = view.stream.description;\n }\n if (view.stream.aggregation) {\n const aggregationType = getAggregationType(view.stream.aggregation);\n if (aggregationType) {\n viewOption.aggregation = aggregationType;\n }\n }\n if (view.stream.attribute_keys) {\n const processors: IAttributesProcessor[] = [];\n if (\n view.stream.attribute_keys.included &&\n view.stream.attribute_keys.included.length > 0\n ) {\n processors.push(\n createAllowListAttributesProcessor(\n view.stream.attribute_keys.included\n )\n );\n }\n if (\n view.stream.attribute_keys.excluded &&\n view.stream.attribute_keys.excluded.length > 0\n ) {\n processors.push(\n createDenyListAttributesProcessor(\n view.stream.attribute_keys.excluded\n )\n );\n }\n if (processors.length > 0) {\n viewOption.attributesProcessors = processors;\n }\n }\n }\n\n if (Object.keys(viewOption).length > 0) {\n metricViews.push(viewOption);\n }\n });\n if (metricViews.length > 0) {\n return metricViews;\n }\n return undefined;\n}\n\nexport function getInstanceID(config: ConfigurationModel): string | undefined {\n if (config.resource?.attributes) {\n for (let i = 0; i < config.resource.attributes.length; i++) {\n const element = config.resource.attributes[i];\n if (element.name === 'service.instance.id') {\n return element.value?.toString();\n }\n }\n }\n return undefined;\n}\n\nconst DEFAULT_RATIO = 1;\n\n/**\n * Builds a {@link Sampler} from a {@link SamplerConfigModel} data model.\n * This allows sampler construction from declarative configuration.\n */\nexport function buildSamplerFromConfig(config: SamplerConfigModel): Sampler {\n if (config.always_on !== undefined) {\n return new AlwaysOnSampler();\n }\n if (config.always_off !== undefined) {\n return new AlwaysOffSampler();\n }\n if (config.trace_id_ratio_based !== undefined) {\n return new TraceIdRatioBasedSampler(\n config.trace_id_ratio_based.ratio ?? DEFAULT_RATIO\n );\n }\n if (config.parent_based !== undefined) {\n const pb = config.parent_based;\n return new ParentBasedSampler({\n root: pb.root ? buildSamplerFromConfig(pb.root) : new AlwaysOnSampler(),\n remoteParentSampled: pb.remote_parent_sampled\n ? buildSamplerFromConfig(pb.remote_parent_sampled)\n : undefined,\n remoteParentNotSampled: pb.remote_parent_not_sampled\n ? buildSamplerFromConfig(pb.remote_parent_not_sampled)\n : undefined,\n localParentSampled: pb.local_parent_sampled\n ? buildSamplerFromConfig(pb.local_parent_sampled)\n : undefined,\n localParentNotSampled: pb.local_parent_not_sampled\n ? buildSamplerFromConfig(pb.local_parent_not_sampled)\n : undefined,\n });\n }\n diag.error('Unknown sampler config, defaulting to ParentBased(AlwaysOn).');\n return new ParentBasedSampler({ root: new AlwaysOnSampler() });\n}\n"]}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { ContextManager, TextMapPropagator } from '@opentelemetry/api';\nimport { context, diag, propagation } from '@opentelemetry/api';\nimport {\n CompositePropagator,\n getNumberFromEnv,\n getStringFromEnv,\n getStringListFromEnv,\n W3CBaggagePropagator,\n W3CTraceContextPropagator,\n} from '@opentelemetry/core';\nimport { OTLPTraceExporter as OTLPProtoTraceExporter } from '@opentelemetry/exporter-trace-otlp-proto';\nimport { OTLPTraceExporter as OTLPHttpTraceExporter } from '@opentelemetry/exporter-trace-otlp-http';\nimport { OTLPTraceExporter as OTLPGrpcTraceExporter } from '@opentelemetry/exporter-trace-otlp-grpc';\nimport { ZipkinExporter } from '@opentelemetry/exporter-zipkin';\nimport type {\n DetectedResourceAttributes,\n Resource,\n ResourceDetector,\n} from '@opentelemetry/resources';\nimport {\n envDetector,\n hostDetector,\n osDetector,\n processDetector,\n resourceFromAttributes,\n serviceInstanceIdDetector,\n} from '@opentelemetry/resources';\nimport type {\n Sampler,\n SpanExporter,\n SpanLimits,\n SpanProcessor,\n} from '@opentelemetry/sdk-trace-base';\nimport {\n AlwaysOffSampler,\n AlwaysOnSampler,\n BatchSpanProcessor,\n ConsoleSpanExporter,\n ParentBasedSampler,\n SimpleSpanProcessor,\n TraceIdRatioBasedSampler,\n} from '@opentelemetry/sdk-trace-base';\nimport { B3InjectEncoding, B3Propagator } from '@opentelemetry/propagator-b3';\nimport { JaegerPropagator } from '@opentelemetry/propagator-jaeger';\nimport { AsyncLocalStorageContextManager } from '@opentelemetry/context-async-hooks';\nimport { OTLPLogExporter as OTLPHttpLogExporter } from '@opentelemetry/exporter-logs-otlp-http';\nimport { OTLPLogExporter as OTLPGrpcLogExporter } from '@opentelemetry/exporter-logs-otlp-grpc';\nimport { OTLPLogExporter as OTLPProtoLogExporter } from '@opentelemetry/exporter-logs-otlp-proto';\nimport { CompressionAlgorithm } from '@opentelemetry/otlp-exporter-base';\nimport {\n createEmptyMetadata,\n createInsecureCredentials,\n createSslCredentials,\n} from '@opentelemetry/otlp-grpc-exporter-base';\nimport type {\n ConfigurationModel,\n LogRecordExporterConfigModel,\n InstrumentTypeConfigModel,\n AggregationConfigModel,\n MetricProducerConfigModel,\n PeriodicMetricReaderConfigModel,\n SpanExporterConfigModel,\n SamplerConfigModel,\n NameStringValuePairConfigModel,\n HttpTlsConfigModel,\n GrpcTlsConfigModel,\n} from '@opentelemetry/configuration';\nimport type {\n AggregationOption,\n IAttributesProcessor,\n IMetricReader,\n PushMetricExporter,\n ViewOptions,\n} from '@opentelemetry/sdk-metrics';\nimport {\n AggregationType,\n ConsoleMetricExporter,\n createAllowListAttributesProcessor,\n createDenyListAttributesProcessor,\n InstrumentType,\n PeriodicExportingMetricReader,\n} from '@opentelemetry/sdk-metrics';\nimport { OTLPMetricExporter as OTLPGrpcMetricExporter } from '@opentelemetry/exporter-metrics-otlp-grpc';\nimport { OTLPMetricExporter as OTLPHttpMetricExporter } from '@opentelemetry/exporter-metrics-otlp-http';\nimport { OTLPMetricExporter as OTLPProtoMetricExporter } from '@opentelemetry/exporter-metrics-otlp-proto';\nimport type {\n BufferConfig,\n LogRecordExporter,\n LoggerProviderOptions,\n LogRecordProcessor,\n} from '@opentelemetry/sdk-logs';\nimport type { MetricProducer } from '@opentelemetry/sdk-metrics';\nimport {\n BatchLogRecordProcessor,\n ConsoleLogRecordExporter,\n SimpleLogRecordProcessor,\n} from '@opentelemetry/sdk-logs';\nimport * as fs from 'fs';\n\nconst RESOURCE_DETECTOR_ENVIRONMENT = 'env';\nconst RESOURCE_DETECTOR_HOST = 'host';\nconst RESOURCE_DETECTOR_OS = 'os';\nconst RESOURCE_DETECTOR_PROCESS = 'process';\nconst RESOURCE_DETECTOR_SERVICE_INSTANCE_ID = 'serviceinstance';\n\nexport function getResourceFromConfiguration(\n config: ConfigurationModel\n): Resource | undefined {\n if (config.resource && config.resource.attributes) {\n const attrs: DetectedResourceAttributes = {};\n for (let i = 0; i < config.resource.attributes.length; i++) {\n const a = config.resource.attributes[i];\n // https://github.com/open-telemetry/opentelemetry-configuration/issues/613\n // will likely clarify that entries with a `null` value should be ignored.\n if (a.value !== null) {\n attrs[a.name] = a.value;\n }\n }\n return resourceFromAttributes(attrs, {\n schemaUrl: config.resource.schema_url ?? undefined,\n });\n }\n return undefined;\n}\n\nexport function getResourceDetectorsFromEnv(): Array<ResourceDetector> {\n // When updating this list, make sure to also update the section `resourceDetectors` on README.\n const resourceDetectors = new Map<string, ResourceDetector>([\n [RESOURCE_DETECTOR_HOST, hostDetector],\n [RESOURCE_DETECTOR_OS, osDetector],\n [RESOURCE_DETECTOR_SERVICE_INSTANCE_ID, serviceInstanceIdDetector],\n [RESOURCE_DETECTOR_PROCESS, processDetector],\n [RESOURCE_DETECTOR_ENVIRONMENT, envDetector],\n ]);\n\n const resourceDetectorsFromEnv = getStringListFromEnv(\n 'OTEL_NODE_RESOURCE_DETECTORS'\n ) ?? ['all'];\n\n if (resourceDetectorsFromEnv.includes('all')) {\n return [...resourceDetectors.values()].flat();\n }\n\n if (resourceDetectorsFromEnv.includes('none')) {\n return [];\n }\n\n return resourceDetectorsFromEnv.flatMap(detector => {\n const resourceDetector = resourceDetectors.get(detector);\n if (!resourceDetector) {\n diag.warn(\n `Invalid resource detector \"${detector}\" specified in the environment variable OTEL_NODE_RESOURCE_DETECTORS`\n );\n }\n return resourceDetector || [];\n });\n}\n\nexport function getResourceDetectorsFromConfiguration(\n config: ConfigurationModel\n): Array<ResourceDetector> {\n const detectors = config.resource?.['detection/development']?.detectors ?? [];\n\n return detectors.flatMap(detector => {\n const result: ResourceDetector[] = [];\n if (detector.host !== undefined) result.push(hostDetector);\n if (detector.os !== undefined) result.push(osDetector);\n if (detector.process !== undefined) result.push(processDetector);\n if (detector.service !== undefined) result.push(serviceInstanceIdDetector);\n if (detector.env !== undefined) result.push(envDetector);\n return result;\n });\n}\n\nexport function getOtlpProtocolFromEnv(): string {\n return (\n getStringFromEnv('OTEL_EXPORTER_OTLP_TRACES_PROTOCOL') ??\n getStringFromEnv('OTEL_EXPORTER_OTLP_PROTOCOL') ??\n 'http/protobuf'\n );\n}\n\nfunction getOtlpExporterFromEnv(): SpanExporter {\n const protocol = getOtlpProtocolFromEnv();\n\n switch (protocol) {\n case 'grpc':\n return new OTLPGrpcTraceExporter();\n case 'http/json':\n return new OTLPHttpTraceExporter();\n case 'http/protobuf':\n return new OTLPProtoTraceExporter();\n default:\n diag.warn(\n `Unsupported OTLP traces protocol: ${protocol}. Using http/protobuf.`\n );\n return new OTLPProtoTraceExporter();\n }\n}\n\nexport function getSpanProcessorsFromEnv(): SpanProcessor[] {\n const exportersMap = new Map<string, () => SpanExporter>([\n ['otlp', () => getOtlpExporterFromEnv()],\n ['zipkin', () => new ZipkinExporter()],\n ['console', () => new ConsoleSpanExporter()],\n ]);\n const exporters: SpanExporter[] = [];\n const processors: SpanProcessor[] = [];\n let traceExportersList = Array.from(\n new Set(getStringListFromEnv('OTEL_TRACES_EXPORTER'))\n ).filter(s => s !== 'null');\n\n if (traceExportersList[0] === 'none') {\n diag.warn(\n 'OTEL_TRACES_EXPORTER contains \"none\". SDK will not be initialized.'\n );\n return [];\n }\n\n if (traceExportersList.length === 0) {\n diag.debug('OTEL_TRACES_EXPORTER is empty. Using default otlp exporter.');\n traceExportersList = ['otlp'];\n } else if (\n traceExportersList.length > 1 &&\n traceExportersList.includes('none')\n ) {\n diag.warn(\n 'OTEL_TRACES_EXPORTER contains \"none\" along with other exporters. Using default otlp exporter.'\n );\n traceExportersList = ['otlp'];\n }\n\n for (const name of traceExportersList) {\n const exporter = exportersMap.get(name)?.();\n if (exporter) {\n exporters.push(exporter);\n } else {\n diag.warn(`Unrecognized OTEL_TRACES_EXPORTER value: ${name}.`);\n }\n }\n\n for (const exp of exporters) {\n if (exp instanceof ConsoleSpanExporter) {\n processors.push(new SimpleSpanProcessor(exp));\n } else {\n processors.push(new BatchSpanProcessor(exp));\n }\n }\n\n if (exporters.length === 0) {\n diag.warn(\n 'Unable to set up trace exporter(s) due to invalid exporter and/or protocol values.'\n );\n }\n\n return processors;\n}\n\n/**\n * Get a propagator as defined by environment variables\n */\nexport function getPropagatorFromEnv(): TextMapPropagator | null | undefined {\n // Empty and undefined MUST be treated equal.\n const propagatorsEnvVarValue = getStringListFromEnv('OTEL_PROPAGATORS');\n if (propagatorsEnvVarValue == null) {\n // return undefined to fall back to default\n return undefined;\n }\n\n if (propagatorsEnvVarValue.includes('none')) {\n return null;\n }\n\n // Implementation note: this only contains specification required propagators that are actually hosted in this repo.\n // Any other propagators (like aws, aws-lambda, should go into `@opentelemetry/auto-configuration-propagators` instead).\n const propagatorsFactory = new Map<string, () => TextMapPropagator>([\n ['tracecontext', () => new W3CTraceContextPropagator()],\n ['baggage', () => new W3CBaggagePropagator()],\n ['b3', () => new B3Propagator()],\n [\n 'b3multi',\n () => new B3Propagator({ injectEncoding: B3InjectEncoding.MULTI_HEADER }),\n ],\n ['jaeger', () => new JaegerPropagator()],\n ]);\n\n // Values MUST be deduplicated in order to register a Propagator only once.\n const uniquePropagatorNames = Array.from(new Set(propagatorsEnvVarValue));\n const validPropagators: TextMapPropagator[] = [];\n\n uniquePropagatorNames.forEach(name => {\n const propagator = propagatorsFactory.get(name)?.();\n if (!propagator) {\n diag.warn(\n `Propagator \"${name}\" requested through environment variable is unavailable.`\n );\n return;\n }\n\n validPropagators.push(propagator);\n });\n\n if (validPropagators.length === 0) {\n // null to signal that the default should **not** be used in its place.\n return null;\n } else if (uniquePropagatorNames.length === 1) {\n return validPropagators[0];\n } else {\n return new CompositePropagator({\n propagators: validPropagators,\n });\n }\n}\n\n/**\n * Get a propagator as defined by configuration model from configuration\n */\nexport function getPropagatorFromConfiguration(\n config: ConfigurationModel\n): TextMapPropagator | null | undefined {\n const propagatorsValue = getKeyListFromObjectArray(\n config.propagator?.composite\n );\n if (propagatorsValue == null) {\n // return undefined to fall back to default\n return undefined;\n }\n\n if (propagatorsValue.includes('none')) {\n return null;\n }\n\n // Implementation note: this only contains specification required propagators that are actually hosted in this repo.\n // Any other propagators (like aws, aws-lambda, should go into `@opentelemetry/auto-configuration-propagators` instead).\n const propagatorsFactory = new Map<string, () => TextMapPropagator>([\n ['tracecontext', () => new W3CTraceContextPropagator()],\n ['baggage', () => new W3CBaggagePropagator()],\n ['b3', () => new B3Propagator()],\n [\n 'b3multi',\n () => new B3Propagator({ injectEncoding: B3InjectEncoding.MULTI_HEADER }),\n ],\n ['jaeger', () => new JaegerPropagator()],\n ]);\n\n // Values MUST be deduplicated in order to register a Propagator only once.\n const uniquePropagatorNames = Array.from(new Set(propagatorsValue));\n const validPropagators: TextMapPropagator[] = [];\n\n uniquePropagatorNames.forEach(name => {\n const propagator = propagatorsFactory.get(name)?.();\n if (!propagator) {\n diag.warn(\n `Propagator \"${name}\" requested through configuration is unavailable.`\n );\n return;\n }\n\n validPropagators.push(propagator);\n });\n\n if (validPropagators.length === 0) {\n // null to signal that the default should **not** be used in its place.\n return null;\n } else if (uniquePropagatorNames.length === 1) {\n return validPropagators[0];\n } else {\n return new CompositePropagator({\n propagators: validPropagators,\n });\n }\n}\n\nexport function setupContextManager(\n contextManager: ContextManager | null | undefined\n) {\n // null means 'do not register'\n if (contextManager === null) {\n return;\n }\n\n // undefined means 'register default'\n if (contextManager === undefined) {\n const defaultContextManager = new AsyncLocalStorageContextManager();\n defaultContextManager.enable();\n context.setGlobalContextManager(defaultContextManager);\n return;\n }\n\n contextManager.enable();\n context.setGlobalContextManager(contextManager);\n}\n\nexport function setupPropagator(\n propagator: TextMapPropagator | null | undefined\n) {\n // null means 'do not register'\n if (propagator === null) {\n return;\n }\n\n // undefined means 'register default'\n if (propagator === undefined) {\n propagation.setGlobalPropagator(\n new CompositePropagator({\n propagators: [\n new W3CTraceContextPropagator(),\n new W3CBaggagePropagator(),\n ],\n })\n );\n return;\n }\n\n propagation.setGlobalPropagator(propagator);\n}\n\nexport function getKeyListFromObjectArray(\n obj: object[] | undefined\n): string[] | undefined {\n if (!obj || obj.length === 0) {\n return undefined;\n }\n\n const keys: string[] = [];\n for (const item of obj) {\n for (const key of Object.keys(item)) {\n keys.push(key);\n }\n }\n return keys;\n}\n\nexport function getNonNegativeNumberFromEnv(\n envVarName: string\n): number | undefined {\n const value = getNumberFromEnv(envVarName);\n if (value != null && value <= 0) {\n diag.warn(\n `${envVarName} (${value}) is invalid, expected number greater than 0, using default.`\n );\n return undefined;\n }\n return value;\n}\n\nexport function getPeriodicExportingMetricReaderFromEnv(\n exporter: PushMetricExporter\n): IMetricReader {\n const defaultTimeoutMillis = 30_000;\n const defaultIntervalMillis = 60_000;\n\n const rawExportIntervalMillis = getNonNegativeNumberFromEnv(\n 'OTEL_METRIC_EXPORT_INTERVAL'\n );\n const rawExportTimeoutMillis = getNonNegativeNumberFromEnv(\n 'OTEL_METRIC_EXPORT_TIMEOUT'\n );\n\n // Apply defaults\n const exportIntervalMillis = rawExportIntervalMillis ?? defaultIntervalMillis;\n let exportTimeoutMillis = rawExportTimeoutMillis ?? defaultTimeoutMillis;\n\n // Ensure timeout doesn't exceed interval\n if (exportTimeoutMillis > exportIntervalMillis) {\n // determine which env vars were set and which ones defaulted for logging purposes\n const timeoutSource =\n rawExportTimeoutMillis != null\n ? rawExportTimeoutMillis.toString()\n : `${defaultTimeoutMillis}, default`;\n const intervalSource =\n rawExportIntervalMillis != null\n ? rawExportIntervalMillis.toString()\n : `${defaultIntervalMillis}, default`;\n\n const bothSetByUser =\n rawExportTimeoutMillis != null && rawExportIntervalMillis != null;\n const logMessage = `OTEL_METRIC_EXPORT_TIMEOUT (${timeoutSource}) is greater than OTEL_METRIC_EXPORT_INTERVAL (${intervalSource}). Clamping timeout to interval value.`;\n\n // only bother users if they explicitly set both values.\n if (bothSetByUser) {\n diag.warn(logMessage);\n } else {\n diag.info(logMessage);\n }\n\n exportTimeoutMillis = exportIntervalMillis;\n }\n\n return new PeriodicExportingMetricReader({\n exportTimeoutMillis,\n exportIntervalMillis,\n exporter,\n });\n}\n\nexport function getOtlpMetricExporterFromEnv(): PushMetricExporter {\n const protocol =\n (\n getStringFromEnv('OTEL_EXPORTER_OTLP_METRICS_PROTOCOL') ??\n getStringFromEnv('OTEL_EXPORTER_OTLP_PROTOCOL')\n )?.trim() || 'http/protobuf'; // Using || to also fall back on empty string\n\n switch (protocol) {\n case 'grpc':\n return new OTLPGrpcMetricExporter();\n case 'http/json':\n return new OTLPHttpMetricExporter();\n case 'http/protobuf':\n return new OTLPProtoMetricExporter();\n }\n\n diag.warn(\n `Unsupported OTLP metrics protocol: \"${protocol}\". Using http/protobuf.`\n );\n return new OTLPProtoMetricExporter();\n}\n\nfunction getMetricProducersFromConfiguration(\n producers: MetricProducerConfigModel[] | undefined\n): MetricProducer[] | undefined {\n if (!producers || producers.length === 0) {\n return undefined;\n }\n const result: MetricProducer[] = [];\n for (const producer of producers) {\n if (producer.opencensus) {\n try {\n const {\n OpenCensusMetricProducer,\n // eslint-disable-next-line @typescript-eslint/no-require-imports\n } = require('@opentelemetry/shim-opencensus');\n result.push(new OpenCensusMetricProducer());\n } catch {\n diag.warn(\n 'OpenCensus metric producer configured but @opentelemetry/shim-opencensus is not installed.'\n );\n }\n } else {\n diag.warn('Unsupported metric producer configured.');\n }\n }\n return result.length > 0 ? result : undefined;\n}\n\nexport function getPeriodicMetricReaderFromConfiguration(\n periodic: PeriodicMetricReaderConfigModel\n): IMetricReader | undefined {\n if (periodic.exporter) {\n let exporter;\n if (periodic.exporter.otlp_http !== undefined) {\n const encoding = periodic.exporter.otlp_http?.encoding ?? 'protobuf';\n if (encoding === 'json') {\n exporter = new OTLPHttpMetricExporter({\n compression:\n periodic.exporter.otlp_http?.compression === 'gzip'\n ? CompressionAlgorithm.GZIP\n : CompressionAlgorithm.NONE,\n });\n } else if (encoding === 'protobuf') {\n exporter = new OTLPProtoMetricExporter({\n compression:\n periodic.exporter.otlp_http?.compression === 'gzip'\n ? CompressionAlgorithm.GZIP\n : CompressionAlgorithm.NONE,\n });\n } else {\n diag.warn(`Unsupported OTLP metrics encoding: ${encoding}.`);\n }\n }\n if (periodic.exporter.otlp_grpc !== undefined) {\n exporter = new OTLPGrpcMetricExporter({\n compression:\n periodic.exporter.otlp_grpc?.compression === 'gzip'\n ? CompressionAlgorithm.GZIP\n : CompressionAlgorithm.NONE,\n });\n }\n\n const metricProducers = getMetricProducersFromConfiguration(\n periodic.producers\n );\n\n if (exporter) {\n // TODO(6425): add cardinality_limits\n return new PeriodicExportingMetricReader({\n exportIntervalMillis: periodic.interval ?? 60_000,\n exportTimeoutMillis: periodic.timeout ?? 30_000,\n exporter,\n metricProducers,\n });\n }\n if (periodic.exporter.console !== undefined) {\n return new PeriodicExportingMetricReader({\n exporter: new ConsoleMetricExporter(),\n metricProducers,\n });\n }\n }\n diag.warn('Unsupported Metric Exporter.');\n return undefined;\n}\n\n/**\n * Get LoggerProviderConfig from environment variables.\n */\nexport function getLoggerProviderConfigFromEnv(): LoggerProviderOptions {\n return {\n logRecordLimits: {\n attributeCountLimit:\n getNonNegativeNumberFromEnv('OTEL_LOGRECORD_ATTRIBUTE_COUNT_LIMIT') ??\n getNonNegativeNumberFromEnv('OTEL_ATTRIBUTE_COUNT_LIMIT'),\n attributeValueLengthLimit:\n getNonNegativeNumberFromEnv(\n 'OTEL_LOGRECORD_ATTRIBUTE_VALUE_LENGTH_LIMIT'\n ) ?? getNonNegativeNumberFromEnv('OTEL_ATTRIBUTE_VALUE_LENGTH_LIMIT'),\n },\n };\n}\n\n/**\n * Get configuration for BatchLogRecordProcessor from environment variables.\n */\nexport function getBatchLogRecordProcessorConfigFromEnv(): BufferConfig {\n return {\n maxQueueSize: getNonNegativeNumberFromEnv('OTEL_BLRP_MAX_QUEUE_SIZE'),\n scheduledDelayMillis: getNonNegativeNumberFromEnv(\n 'OTEL_BLRP_SCHEDULE_DELAY'\n ),\n exportTimeoutMillis: getNonNegativeNumberFromEnv(\n 'OTEL_BLRP_EXPORT_TIMEOUT'\n ),\n maxExportBatchSize: getNonNegativeNumberFromEnv(\n 'OTEL_BLRP_MAX_EXPORT_BATCH_SIZE'\n ),\n };\n}\n\nexport function getBatchLogRecordProcessorFromEnv(\n exporter: LogRecordExporter\n): BatchLogRecordProcessor {\n return new BatchLogRecordProcessor(\n exporter,\n getBatchLogRecordProcessorConfigFromEnv()\n );\n}\n\nexport function getLogRecordExporter(\n exporter: LogRecordExporterConfigModel\n): LogRecordExporter | undefined {\n if (exporter.otlp_http !== undefined) {\n const cfg = exporter.otlp_http;\n const commonOpts = {\n compression:\n cfg?.compression === 'gzip'\n ? CompressionAlgorithm.GZIP\n : CompressionAlgorithm.NONE,\n url: cfg?.endpoint ?? undefined,\n headers: getHeadersFromConfiguration(cfg?.headers),\n timeoutMillis: validateExporterTimeout(cfg?.timeout),\n httpAgentOptions: getHttpAgentOptionsFromTls(cfg?.tls),\n };\n const encoding = cfg?.encoding ?? 'protobuf';\n if (encoding === 'json') {\n return new OTLPHttpLogExporter(commonOpts);\n }\n if (encoding === 'protobuf') {\n return new OTLPProtoLogExporter(commonOpts);\n }\n diag.warn(\n `Unsupported OTLP logs encoding: ${encoding}. Using http/protobuf.`\n );\n return new OTLPProtoLogExporter(commonOpts);\n } else if (exporter.otlp_grpc !== undefined) {\n const cfg = exporter.otlp_grpc;\n return new OTLPGrpcLogExporter({\n compression:\n cfg?.compression === 'gzip'\n ? CompressionAlgorithm.GZIP\n : CompressionAlgorithm.NONE,\n url: cfg?.endpoint ?? undefined,\n timeoutMillis: validateExporterTimeout(cfg?.timeout),\n credentials: getGrpcCredentialsFromTls(cfg?.tls),\n metadata: getGrpcMetadataFromHeaders(cfg?.headers),\n });\n } else if (exporter.console !== undefined) {\n return new ConsoleLogRecordExporter();\n }\n diag.warn('Unsupported Exporter value. No Log Record Exporter registered');\n return undefined;\n}\n\nexport function getLogRecordProcessorsFromConfiguration(\n config: ConfigurationModel\n): LogRecordProcessor[] | undefined {\n const logRecordProcessors: LogRecordProcessor[] = [];\n config.logger_provider?.processors?.forEach(processor => {\n if (processor.batch) {\n const exporter = getLogRecordExporter(processor.batch.exporter);\n if (exporter) {\n logRecordProcessors.push(\n new BatchLogRecordProcessor(exporter, {\n maxQueueSize: processor.batch.max_queue_size ?? undefined,\n maxExportBatchSize:\n processor.batch.max_export_batch_size ?? undefined,\n scheduledDelayMillis: processor.batch.schedule_delay ?? undefined,\n exportTimeoutMillis: processor.batch.export_timeout ?? undefined,\n })\n );\n }\n }\n if (processor.simple) {\n const exporter = getLogRecordExporter(processor.simple.exporter);\n if (exporter) {\n logRecordProcessors.push(new SimpleLogRecordProcessor(exporter));\n }\n }\n });\n if (logRecordProcessors.length > 0) {\n return logRecordProcessors;\n }\n return undefined;\n}\n\nexport function getHeadersFromConfiguration(\n headers: NameStringValuePairConfigModel[] | undefined\n): Record<string, string> | undefined {\n if (!headers) {\n return undefined;\n }\n const result: Record<string, string> = {};\n headers.forEach(header => {\n if (header.value !== null) {\n result[header.name] = header.value;\n }\n });\n return result;\n}\n\n/**\n * Validate an exporter timeout value. The spec says 0 means \"no limit\n * (infinity)\" but the JS exporters don't support that yet (see #6617).\n * Warn and return undefined so the exporter falls back to its default.\n */\nfunction validateExporterTimeout(\n timeout: number | null | undefined\n): number | undefined {\n if (timeout === null) {\n return undefined;\n } else if (timeout === 0) {\n diag.warn(\n 'Exporter timeout of 0 (infinite) is not supported. Using default timeout.'\n );\n return undefined;\n }\n return timeout;\n}\n\nexport function getHttpAgentOptionsFromTls(\n tls: HttpTlsConfigModel | undefined\n): { ca?: Buffer; cert?: Buffer; key?: Buffer } | undefined {\n if (tls && (tls.ca_file || tls.cert_file || tls.key_file)) {\n return {\n ca: readFileOrWarn(tls.ca_file, 'TLS CA'),\n cert: readFileOrWarn(tls.cert_file, 'TLS cert'),\n key: readFileOrWarn(tls.key_file, 'TLS key'),\n };\n }\n return undefined;\n}\n\nfunction getGrpcCredentialsFromTls(tls?: GrpcTlsConfigModel) {\n if (tls?.insecure) {\n return createInsecureCredentials();\n }\n const rootCert = readFileOrWarn(tls?.ca_file, 'TLS CA');\n const privateKey = readFileOrWarn(tls?.key_file, 'TLS key');\n const certChain = readFileOrWarn(tls?.cert_file, 'TLS cert');\n if (rootCert || privateKey || certChain) {\n try {\n return createSslCredentials(rootCert, privateKey, certChain);\n } catch (e) {\n diag.warn(`Failed to create gRPC SSL credentials: ${e}`);\n return undefined;\n }\n }\n return undefined;\n}\n\nfunction getGrpcMetadataFromHeaders(\n headers: NameStringValuePairConfigModel[] | undefined\n) {\n if (!headers || headers.length === 0) {\n return undefined;\n }\n const metadata = createEmptyMetadata();\n for (const header of headers) {\n if (header.value !== null) {\n metadata.set(header.name, header.value);\n }\n }\n return metadata;\n}\n\nfunction readFileOrWarn(\n filePath: string | null | undefined,\n label: string\n): Buffer | undefined {\n if (!filePath) return undefined;\n try {\n return fs.readFileSync(filePath);\n } catch (e) {\n diag.warn(`Failed to read ${label} file at ${filePath}: ${e}`);\n return undefined;\n }\n}\n\nexport function getSpanExporter(\n exporter: SpanExporterConfigModel\n): SpanExporter | undefined {\n if (exporter.otlp_http !== undefined) {\n const encoding = exporter.otlp_http?.encoding ?? 'protobuf';\n if (encoding === 'json') {\n return new OTLPHttpTraceExporter({\n compression:\n exporter.otlp_http?.compression === 'gzip'\n ? CompressionAlgorithm.GZIP\n : CompressionAlgorithm.NONE,\n url: exporter.otlp_http?.endpoint ?? undefined,\n headers: getHeadersFromConfiguration(exporter.otlp_http?.headers),\n timeoutMillis: validateExporterTimeout(exporter.otlp_http?.timeout),\n httpAgentOptions: getHttpAgentOptionsFromTls(exporter.otlp_http?.tls),\n });\n } else {\n return new OTLPProtoTraceExporter({\n compression:\n exporter.otlp_http?.compression === 'gzip'\n ? CompressionAlgorithm.GZIP\n : CompressionAlgorithm.NONE,\n url: exporter.otlp_http?.endpoint ?? undefined,\n headers: getHeadersFromConfiguration(exporter.otlp_http?.headers),\n timeoutMillis: validateExporterTimeout(exporter.otlp_http?.timeout),\n httpAgentOptions: getHttpAgentOptionsFromTls(exporter.otlp_http?.tls),\n });\n }\n } else if (exporter.otlp_grpc !== undefined) {\n return new OTLPGrpcTraceExporter({\n compression:\n exporter.otlp_grpc?.compression === 'gzip'\n ? CompressionAlgorithm.GZIP\n : CompressionAlgorithm.NONE,\n url: exporter.otlp_grpc?.endpoint ?? undefined,\n timeoutMillis: validateExporterTimeout(exporter.otlp_grpc?.timeout),\n credentials: getGrpcCredentialsFromTls(exporter.otlp_grpc?.tls),\n metadata: getGrpcMetadataFromHeaders(exporter.otlp_grpc?.headers),\n });\n } else if (exporter.console !== undefined) {\n return new ConsoleSpanExporter();\n }\n diag.warn('Unsupported Exporter value. No Span Exporter registered');\n return undefined;\n}\n\nexport function getSpanProcessorsFromConfiguration(\n config: ConfigurationModel\n): SpanProcessor[] | undefined {\n const spanProcessors: SpanProcessor[] = [];\n config.tracer_provider?.processors?.forEach(processor => {\n if (processor.batch) {\n const exporter = getSpanExporter(processor.batch.exporter);\n if (exporter) {\n spanProcessors.push(\n new BatchSpanProcessor(exporter, {\n maxQueueSize: processor.batch.max_queue_size ?? undefined,\n maxExportBatchSize:\n processor.batch.max_export_batch_size ?? undefined,\n scheduledDelayMillis: processor.batch.schedule_delay ?? undefined,\n exportTimeoutMillis: processor.batch.export_timeout ?? undefined,\n })\n );\n }\n }\n if (processor.simple) {\n const exporter = getSpanExporter(processor.simple.exporter);\n if (exporter) {\n spanProcessors.push(new SimpleSpanProcessor(exporter));\n }\n }\n });\n if (spanProcessors.length > 0) {\n return spanProcessors;\n }\n return undefined;\n}\n\nexport function getSpanLimitsFromConfiguration(\n config: ConfigurationModel\n): SpanLimits | undefined {\n if (config.tracer_provider?.limits) {\n const limitsConfig = config.tracer_provider.limits;\n const spanLimits: SpanLimits = {};\n spanLimits.attributeCountLimit = limitsConfig.attribute_count_limit ?? 128;\n spanLimits.eventCountLimit = limitsConfig.event_count_limit ?? 128;\n spanLimits.linkCountLimit = limitsConfig.link_count_limit ?? 128;\n spanLimits.attributePerLinkCountLimit =\n limitsConfig.link_attribute_count_limit ?? 128;\n spanLimits.attributePerEventCountLimit =\n limitsConfig.event_attribute_count_limit ?? 128;\n\n if (limitsConfig.attribute_value_length_limit != null) {\n spanLimits.attributeValueLengthLimit =\n limitsConfig.attribute_value_length_limit;\n }\n\n return spanLimits;\n }\n return undefined;\n}\n\nexport function getMeterReadersFromConfiguration(\n config: ConfigurationModel\n): IMetricReader[] | undefined {\n const metricReaders: IMetricReader[] = [];\n config.meter_provider?.readers?.forEach(reader => {\n if (reader.periodic) {\n const periodicReader = getPeriodicMetricReaderFromConfiguration(\n reader.periodic\n );\n if (periodicReader) {\n metricReaders.push(periodicReader);\n }\n }\n });\n if (metricReaders.length > 0) {\n return metricReaders;\n }\n return undefined;\n}\n\nexport function getInstrumentType(\n instrument: InstrumentTypeConfigModel\n): InstrumentType | undefined {\n switch (instrument) {\n case 'counter':\n return InstrumentType.COUNTER;\n case 'gauge':\n return InstrumentType.GAUGE;\n case 'histogram':\n return InstrumentType.HISTOGRAM;\n case 'observable_counter':\n return InstrumentType.OBSERVABLE_COUNTER;\n case 'observable_gauge':\n return InstrumentType.OBSERVABLE_GAUGE;\n case 'observable_up_down_counter':\n return InstrumentType.OBSERVABLE_UP_DOWN_COUNTER;\n case 'up_down_counter':\n return InstrumentType.UP_DOWN_COUNTER;\n default:\n diag.warn(`Unsupported instrument type: ${instrument}`);\n return undefined;\n }\n}\n\nexport function getAggregationType(\n aggregation: AggregationConfigModel\n): AggregationOption | undefined {\n if (aggregation.default) {\n return {\n type: AggregationType.DEFAULT,\n };\n }\n if (aggregation.drop) {\n return {\n type: AggregationType.DROP,\n };\n }\n if (aggregation.explicit_bucket_histogram) {\n return {\n type: AggregationType.EXPLICIT_BUCKET_HISTOGRAM,\n options: {\n recordMinMax:\n aggregation.explicit_bucket_histogram.record_min_max ?? true,\n boundaries: aggregation.explicit_bucket_histogram.boundaries ?? [\n 0, 5, 10, 25, 50, 75, 100, 250, 500, 750, 1000, 2500, 5000, 7500,\n 10000,\n ],\n },\n };\n }\n\n if (aggregation.base2_exponential_bucket_histogram) {\n return {\n type: AggregationType.EXPONENTIAL_HISTOGRAM,\n options: {\n recordMinMax:\n aggregation.base2_exponential_bucket_histogram.record_min_max ??\n undefined,\n maxSize:\n aggregation.base2_exponential_bucket_histogram.max_size ?? undefined,\n },\n };\n }\n if (aggregation.last_value) {\n return {\n type: AggregationType.LAST_VALUE,\n };\n }\n if (aggregation.sum) {\n return {\n type: AggregationType.SUM,\n };\n }\n\n diag.warn('Unsupported aggregation type');\n return undefined;\n}\n\nexport function getMeterViewsFromConfiguration(\n config: ConfigurationModel\n): ViewOptions[] | undefined {\n const metricViews: ViewOptions[] = [];\n config.meter_provider?.views?.forEach(view => {\n const viewOption: ViewOptions = {};\n if (view.selector) {\n if (view.selector.instrument_name) {\n viewOption.instrumentName = view.selector.instrument_name;\n }\n if (view.selector.instrument_type) {\n const instrumentType = getInstrumentType(view.selector.instrument_type);\n if (instrumentType) {\n viewOption.instrumentType = instrumentType;\n }\n }\n if (view.selector.unit) {\n viewOption.instrumentUnit = view.selector.unit;\n }\n if (view.selector.meter_name) {\n viewOption.meterName = view.selector.meter_name;\n }\n if (view.selector.meter_version) {\n viewOption.meterVersion = view.selector.meter_version;\n }\n if (view.selector.meter_schema_url) {\n viewOption.meterSchemaUrl = view.selector.meter_schema_url;\n }\n }\n if (view.stream) {\n if (view.stream.name) {\n viewOption.name = view.stream.name;\n }\n viewOption.aggregationCardinalityLimit =\n view.stream.aggregation_cardinality_limit ?? 2_000;\n if (view.stream.description) {\n viewOption.description = view.stream.description;\n }\n if (view.stream.aggregation) {\n const aggregationType = getAggregationType(view.stream.aggregation);\n if (aggregationType) {\n viewOption.aggregation = aggregationType;\n }\n }\n if (view.stream.attribute_keys) {\n const processors: IAttributesProcessor[] = [];\n if (\n view.stream.attribute_keys.included &&\n view.stream.attribute_keys.included.length > 0\n ) {\n processors.push(\n createAllowListAttributesProcessor(\n view.stream.attribute_keys.included\n )\n );\n }\n if (\n view.stream.attribute_keys.excluded &&\n view.stream.attribute_keys.excluded.length > 0\n ) {\n processors.push(\n createDenyListAttributesProcessor(\n view.stream.attribute_keys.excluded\n )\n );\n }\n if (processors.length > 0) {\n viewOption.attributesProcessors = processors;\n }\n }\n }\n\n if (Object.keys(viewOption).length > 0) {\n metricViews.push(viewOption);\n }\n });\n if (metricViews.length > 0) {\n return metricViews;\n }\n return undefined;\n}\n\nexport function getInstanceID(config: ConfigurationModel): string | undefined {\n if (config.resource?.attributes) {\n for (let i = 0; i < config.resource.attributes.length; i++) {\n const element = config.resource.attributes[i];\n if (element.name === 'service.instance.id') {\n return element.value?.toString();\n }\n }\n }\n return undefined;\n}\n\nconst DEFAULT_RATIO = 1;\n\n/**\n * Builds a {@link Sampler} from a {@link SamplerConfigModel} data model.\n * This allows sampler construction from declarative configuration.\n */\nexport function buildSamplerFromConfig(\n samplerConfig: SamplerConfigModel\n): Sampler {\n if (samplerConfig.always_on !== undefined) {\n return new AlwaysOnSampler();\n }\n if (samplerConfig.always_off !== undefined) {\n return new AlwaysOffSampler();\n }\n if (samplerConfig.trace_id_ratio_based !== undefined) {\n return new TraceIdRatioBasedSampler(\n samplerConfig.trace_id_ratio_based?.ratio ?? DEFAULT_RATIO\n );\n }\n if (samplerConfig.parent_based !== undefined) {\n const pb = samplerConfig.parent_based ?? {};\n return new ParentBasedSampler({\n root: pb.root ? buildSamplerFromConfig(pb.root) : new AlwaysOnSampler(),\n remoteParentSampled: pb.remote_parent_sampled\n ? buildSamplerFromConfig(pb.remote_parent_sampled)\n : undefined,\n remoteParentNotSampled: pb.remote_parent_not_sampled\n ? buildSamplerFromConfig(pb.remote_parent_not_sampled)\n : undefined,\n localParentSampled: pb.local_parent_sampled\n ? buildSamplerFromConfig(pb.local_parent_sampled)\n : undefined,\n localParentNotSampled: pb.local_parent_not_sampled\n ? buildSamplerFromConfig(pb.local_parent_not_sampled)\n : undefined,\n });\n }\n diag.error('Unknown sampler config, defaulting to ParentBased(AlwaysOn).');\n return new ParentBasedSampler({ root: new AlwaysOnSampler() });\n}\n"]}
@@ -1,2 +1,2 @@
1
- export declare const VERSION = "0.218.0";
1
+ export declare const VERSION = "0.219.0";
2
2
  //# sourceMappingURL=version.d.ts.map
@@ -6,5 +6,5 @@
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.VERSION = void 0;
8
8
  // this is autogenerated file, see scripts/version-update.js
9
- exports.VERSION = '0.218.0';
9
+ exports.VERSION = '0.219.0';
10
10
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,4DAA4D;AAC/C,QAAA,OAAO,GAAG,SAAS,CAAC","sourcesContent":["/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\n\n// this is autogenerated file, see scripts/version-update.js\nexport const VERSION = '0.218.0';\n"]}
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,4DAA4D;AAC/C,QAAA,OAAO,GAAG,SAAS,CAAC","sourcesContent":["/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\n\n// this is autogenerated file, see scripts/version-update.js\nexport const VERSION = '0.219.0';\n"]}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opentelemetry/sdk-node",
3
- "version": "0.218.0",
3
+ "version": "0.219.0",
4
4
  "description": "OpenTelemetry SDK for Node.js",
5
5
  "main": "build/src/index.js",
6
6
  "types": "build/src/index.d.ts",
@@ -10,8 +10,8 @@
10
10
  "compile": "tsc --build",
11
11
  "clean": "tsc --build --clean",
12
12
  "test": "nyc mocha test/**/*.test.ts",
13
- "lint": "eslint . --ext .ts",
14
- "lint:fix": "eslint . --ext .ts --fix",
13
+ "lint": "eslint .",
14
+ "lint:fix": "eslint . --fix",
15
15
  "version": "node ../../../scripts/version-update.js",
16
16
  "watch": "tsc --build --watch",
17
17
  "prewatch": "npm run precompile",
@@ -43,30 +43,31 @@
43
43
  "access": "public"
44
44
  },
45
45
  "dependencies": {
46
- "@opentelemetry/api-logs": "0.218.0",
47
- "@opentelemetry/configuration": "0.218.0",
48
- "@opentelemetry/context-async-hooks": "2.7.1",
49
- "@opentelemetry/core": "2.7.1",
50
- "@opentelemetry/exporter-logs-otlp-grpc": "0.218.0",
51
- "@opentelemetry/exporter-logs-otlp-http": "0.218.0",
52
- "@opentelemetry/exporter-logs-otlp-proto": "0.218.0",
53
- "@opentelemetry/exporter-metrics-otlp-grpc": "0.218.0",
54
- "@opentelemetry/exporter-metrics-otlp-http": "0.218.0",
55
- "@opentelemetry/exporter-metrics-otlp-proto": "0.218.0",
56
- "@opentelemetry/exporter-prometheus": "0.218.0",
57
- "@opentelemetry/exporter-trace-otlp-grpc": "0.218.0",
58
- "@opentelemetry/exporter-trace-otlp-http": "0.218.0",
59
- "@opentelemetry/exporter-trace-otlp-proto": "0.218.0",
60
- "@opentelemetry/exporter-zipkin": "2.7.1",
61
- "@opentelemetry/instrumentation": "0.218.0",
62
- "@opentelemetry/otlp-exporter-base": "0.218.0",
63
- "@opentelemetry/propagator-b3": "2.7.1",
64
- "@opentelemetry/propagator-jaeger": "2.7.1",
65
- "@opentelemetry/resources": "2.7.1",
66
- "@opentelemetry/sdk-logs": "0.218.0",
67
- "@opentelemetry/sdk-metrics": "2.7.1",
68
- "@opentelemetry/sdk-trace-base": "2.7.1",
69
- "@opentelemetry/sdk-trace-node": "2.7.1",
46
+ "@opentelemetry/api-logs": "0.219.0",
47
+ "@opentelemetry/configuration": "0.219.0",
48
+ "@opentelemetry/context-async-hooks": "2.8.0",
49
+ "@opentelemetry/core": "2.8.0",
50
+ "@opentelemetry/exporter-logs-otlp-grpc": "0.219.0",
51
+ "@opentelemetry/exporter-logs-otlp-http": "0.219.0",
52
+ "@opentelemetry/exporter-logs-otlp-proto": "0.219.0",
53
+ "@opentelemetry/exporter-metrics-otlp-grpc": "0.219.0",
54
+ "@opentelemetry/exporter-metrics-otlp-http": "0.219.0",
55
+ "@opentelemetry/exporter-metrics-otlp-proto": "0.219.0",
56
+ "@opentelemetry/exporter-prometheus": "0.219.0",
57
+ "@opentelemetry/exporter-trace-otlp-grpc": "0.219.0",
58
+ "@opentelemetry/exporter-trace-otlp-http": "0.219.0",
59
+ "@opentelemetry/exporter-trace-otlp-proto": "0.219.0",
60
+ "@opentelemetry/exporter-zipkin": "2.8.0",
61
+ "@opentelemetry/instrumentation": "0.219.0",
62
+ "@opentelemetry/otlp-exporter-base": "0.219.0",
63
+ "@opentelemetry/otlp-grpc-exporter-base": "0.219.0",
64
+ "@opentelemetry/propagator-b3": "2.8.0",
65
+ "@opentelemetry/propagator-jaeger": "2.8.0",
66
+ "@opentelemetry/resources": "2.8.0",
67
+ "@opentelemetry/sdk-logs": "0.219.0",
68
+ "@opentelemetry/sdk-metrics": "2.8.0",
69
+ "@opentelemetry/sdk-trace-base": "2.8.0",
70
+ "@opentelemetry/sdk-trace-node": "2.8.0",
70
71
  "@opentelemetry/semantic-conventions": "^1.29.0"
71
72
  },
72
73
  "peerDependencies": {
@@ -80,10 +81,10 @@
80
81
  "mocha": "11.7.5",
81
82
  "nyc": "17.1.0",
82
83
  "sinon": "18.0.1",
83
- "ts-loader": "9.5.4",
84
+ "ts-loader": "9.5.7",
84
85
  "typescript": "5.0.4"
85
86
  },
86
87
  "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-sdk-node",
87
88
  "sideEffects": false,
88
- "gitHead": "06ad0eaaecbd49f5ead871325f852cc2a3454079"
89
+ "gitHead": "13a035bc695996cf4aec885fef7b9866f48bc555"
89
90
  }
@@ -1,5 +1,7 @@
1
1
  import type { TracerProvider, Tracer as ApiTracer } from '@opentelemetry/api';
2
2
  import type { TracerConfig } from './types';
3
+ import type { InspectFn, InspectStylizeOptions } from './inspect';
4
+ import { inspectCustom } from './inspect';
3
5
  export declare enum ForceFlushState {
4
6
  'resolved' = 0,
5
7
  'timeout' = 1,
@@ -20,5 +22,6 @@ export declare class BasicTracerProvider implements TracerProvider {
20
22
  }): ApiTracer;
21
23
  forceFlush(): Promise<void>;
22
24
  shutdown(): Promise<void>;
25
+ [inspectCustom](depth: number, options: InspectStylizeOptions | undefined, inspect: InspectFn | undefined): unknown;
23
26
  }
24
27
  //# sourceMappingURL=BasicTracerProvider.d.ts.map
@@ -8,6 +8,7 @@ import { Tracer } from './Tracer';
8
8
  import { loadDefaultConfig } from './config';
9
9
  import { MultiSpanProcessor } from './MultiSpanProcessor';
10
10
  import { reconfigureLimits } from './utility';
11
+ import { formatInspect, inspectCustom, settledResourceAttributes, } from './inspect';
11
12
  export var ForceFlushState;
12
13
  (function (ForceFlushState) {
13
14
  ForceFlushState[ForceFlushState["resolved"] = 0] = "resolved";
@@ -40,7 +41,6 @@ export class BasicTracerProvider {
40
41
  if (!this._tracers.has(key)) {
41
42
  this._tracers.set(key, new Tracer({ name, version, schemaUrl: options?.schemaUrl }, this._config, this._resource, this._activeSpanProcessor));
42
43
  }
43
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
44
44
  return this._tracers.get(key);
45
45
  }
46
46
  forceFlush() {
@@ -85,5 +85,14 @@ export class BasicTracerProvider {
85
85
  shutdown() {
86
86
  return this._activeSpanProcessor.shutdown();
87
87
  }
88
+ [inspectCustom](depth, options, inspect) {
89
+ const processors = this._activeSpanProcessor['_spanProcessors'];
90
+ const payload = {
91
+ resource: { attributes: settledResourceAttributes(this._resource) },
92
+ tracers: Array.from(this._tracers.keys()),
93
+ spanProcessors: processors.map(p => p.constructor?.name ?? 'SpanProcessor'),
94
+ };
95
+ return formatInspect('BasicTracerProvider', payload, depth, options, inspect);
96
+ }
88
97
  }
89
98
  //# sourceMappingURL=BasicTracerProvider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BasicTracerProvider.js","sourceRoot":"","sources":["../../src/BasicTracerProvider.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { TracerProvider, Tracer as ApiTracer } from '@opentelemetry/api';\nimport { merge } from '@opentelemetry/core';\nimport type { Resource } from '@opentelemetry/resources';\nimport { defaultResource } from '@opentelemetry/resources';\nimport type { SpanProcessor } from './SpanProcessor';\nimport { Tracer } from './Tracer';\nimport { loadDefaultConfig } from './config';\nimport { MultiSpanProcessor } from './MultiSpanProcessor';\nimport type { TracerConfig } from './types';\nimport { reconfigureLimits } from './utility';\n\nexport enum ForceFlushState {\n 'resolved',\n 'timeout',\n 'error',\n 'unresolved',\n}\n\n/**\n * This class represents a basic tracer provider which platform libraries can extend\n */\nexport class BasicTracerProvider implements TracerProvider {\n private readonly _config: TracerConfig;\n private readonly _tracers: Map<string, Tracer> = new Map();\n private readonly _resource: Resource;\n private readonly _activeSpanProcessor: MultiSpanProcessor;\n\n constructor(config: TracerConfig = {}) {\n const mergedConfig = merge(\n {},\n loadDefaultConfig(),\n reconfigureLimits(config)\n );\n this._resource = mergedConfig.resource ?? defaultResource();\n\n this._config = Object.assign({}, mergedConfig, {\n resource: this._resource,\n });\n\n const spanProcessors: SpanProcessor[] = [];\n\n if (config.spanProcessors?.length) {\n spanProcessors.push(...config.spanProcessors);\n }\n\n this._activeSpanProcessor = new MultiSpanProcessor(spanProcessors);\n }\n\n getTracer(\n name: string,\n version?: string,\n options?: { schemaUrl?: string }\n ): ApiTracer {\n const key = `${name}@${version || ''}:${options?.schemaUrl || ''}`;\n if (!this._tracers.has(key)) {\n this._tracers.set(\n key,\n new Tracer(\n { name, version, schemaUrl: options?.schemaUrl },\n this._config,\n this._resource,\n this._activeSpanProcessor\n )\n );\n }\n\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n return this._tracers.get(key)!;\n }\n\n forceFlush(): Promise<void> {\n const timeout = this._config.forceFlushTimeoutMillis;\n const promises = this._activeSpanProcessor['_spanProcessors'].map(\n (spanProcessor: SpanProcessor) => {\n return new Promise(resolve => {\n let state: ForceFlushState;\n const timeoutInterval = setTimeout(() => {\n resolve(\n new Error(\n `Span processor did not completed within timeout period of ${timeout} ms`\n )\n );\n state = ForceFlushState.timeout;\n }, timeout);\n\n spanProcessor\n .forceFlush()\n .then(() => {\n clearTimeout(timeoutInterval);\n if (state !== ForceFlushState.timeout) {\n state = ForceFlushState.resolved;\n resolve(state);\n }\n })\n .catch(error => {\n clearTimeout(timeoutInterval);\n state = ForceFlushState.error;\n resolve(error);\n });\n });\n }\n );\n\n return new Promise<void>((resolve, reject) => {\n Promise.all(promises)\n .then(results => {\n const errors = results.filter(\n result => result !== ForceFlushState.resolved\n );\n if (errors.length > 0) {\n reject(errors);\n } else {\n resolve();\n }\n })\n .catch(error => reject([error]));\n });\n }\n\n shutdown(): Promise<void> {\n return this._activeSpanProcessor.shutdown();\n }\n}\n"]}
1
+ {"version":3,"file":"BasicTracerProvider.js","sourceRoot":"","sources":["../../src/BasicTracerProvider.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright The OpenTelemetry Authors\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport type { TracerProvider, Tracer as ApiTracer } from '@opentelemetry/api';\nimport { merge } from '@opentelemetry/core';\nimport type { Resource } from '@opentelemetry/resources';\nimport { defaultResource } from '@opentelemetry/resources';\nimport type { SpanProcessor } from './SpanProcessor';\nimport { Tracer } from './Tracer';\nimport { loadDefaultConfig } from './config';\nimport { MultiSpanProcessor } from './MultiSpanProcessor';\nimport type { TracerConfig } from './types';\nimport { reconfigureLimits } from './utility';\nimport type { InspectFn, InspectStylizeOptions } from './inspect';\nimport {\n formatInspect,\n inspectCustom,\n settledResourceAttributes,\n} from './inspect';\n\nexport enum ForceFlushState {\n 'resolved',\n 'timeout',\n 'error',\n 'unresolved',\n}\n\n/**\n * This class represents a basic tracer provider which platform libraries can extend\n */\nexport class BasicTracerProvider implements TracerProvider {\n private readonly _config: TracerConfig;\n private readonly _tracers: Map<string, Tracer> = new Map();\n private readonly _resource: Resource;\n private readonly _activeSpanProcessor: MultiSpanProcessor;\n\n constructor(config: TracerConfig = {}) {\n const mergedConfig = merge(\n {},\n loadDefaultConfig(),\n reconfigureLimits(config)\n );\n this._resource = mergedConfig.resource ?? defaultResource();\n\n this._config = Object.assign({}, mergedConfig, {\n resource: this._resource,\n });\n\n const spanProcessors: SpanProcessor[] = [];\n\n if (config.spanProcessors?.length) {\n spanProcessors.push(...config.spanProcessors);\n }\n\n this._activeSpanProcessor = new MultiSpanProcessor(spanProcessors);\n }\n\n getTracer(\n name: string,\n version?: string,\n options?: { schemaUrl?: string }\n ): ApiTracer {\n const key = `${name}@${version || ''}:${options?.schemaUrl || ''}`;\n if (!this._tracers.has(key)) {\n this._tracers.set(\n key,\n new Tracer(\n { name, version, schemaUrl: options?.schemaUrl },\n this._config,\n this._resource,\n this._activeSpanProcessor\n )\n );\n }\n\n return this._tracers.get(key)!;\n }\n\n forceFlush(): Promise<void> {\n const timeout = this._config.forceFlushTimeoutMillis;\n const promises = this._activeSpanProcessor['_spanProcessors'].map(\n (spanProcessor: SpanProcessor) => {\n return new Promise(resolve => {\n let state: ForceFlushState;\n const timeoutInterval = setTimeout(() => {\n resolve(\n new Error(\n `Span processor did not completed within timeout period of ${timeout} ms`\n )\n );\n state = ForceFlushState.timeout;\n }, timeout);\n\n spanProcessor\n .forceFlush()\n .then(() => {\n clearTimeout(timeoutInterval);\n if (state !== ForceFlushState.timeout) {\n state = ForceFlushState.resolved;\n resolve(state);\n }\n })\n .catch(error => {\n clearTimeout(timeoutInterval);\n state = ForceFlushState.error;\n resolve(error);\n });\n });\n }\n );\n\n return new Promise<void>((resolve, reject) => {\n Promise.all(promises)\n .then(results => {\n const errors = results.filter(\n result => result !== ForceFlushState.resolved\n );\n if (errors.length > 0) {\n reject(errors);\n } else {\n resolve();\n }\n })\n .catch(error => reject([error]));\n });\n }\n\n shutdown(): Promise<void> {\n return this._activeSpanProcessor.shutdown();\n }\n\n [inspectCustom](\n depth: number,\n options: InspectStylizeOptions | undefined,\n inspect: InspectFn | undefined\n ): unknown {\n const processors = this._activeSpanProcessor[\n '_spanProcessors'\n ] as SpanProcessor[];\n const payload = {\n resource: { attributes: settledResourceAttributes(this._resource) },\n tracers: Array.from(this._tracers.keys()),\n spanProcessors: processors.map(\n p => p.constructor?.name ?? 'SpanProcessor'\n ),\n };\n return formatInspect(\n 'BasicTracerProvider',\n payload,\n depth,\n options,\n inspect\n );\n }\n}\n"]}
@@ -5,6 +5,8 @@ import type { ReadableSpan } from './export/ReadableSpan';
5
5
  import type { SpanProcessor } from './SpanProcessor';
6
6
  import type { TimedEvent } from './TimedEvent';
7
7
  import type { SpanLimits } from './types';
8
+ import type { InspectFn, InspectStylizeOptions } from './inspect';
9
+ import { inspectCustom } from './inspect';
8
10
  /**
9
11
  * This type provides the properties of @link{ReadableSpan} at the same time
10
12
  * of the Span API
@@ -94,6 +96,7 @@ export declare class SpanImpl implements Span {
94
96
  * @returns truncated attribute value if required, otherwise same value
95
97
  */
96
98
  private _truncateToSize;
99
+ [inspectCustom](depth: number, options: InspectStylizeOptions | undefined, inspect: InspectFn | undefined): unknown;
97
100
  }
98
101
  export {};
99
102
  //# sourceMappingURL=Span.d.ts.map
@@ -6,6 +6,7 @@ import { diag, SpanStatusCode } from '@opentelemetry/api';
6
6
  import { addHrTimes, millisToHrTime, hrTime, hrTimeDuration, isAttributeValue, isTimeInput, isTimeInputHrTime, otperformance, sanitizeAttributes, } from '@opentelemetry/core';
7
7
  import { ATTR_EXCEPTION_MESSAGE, ATTR_EXCEPTION_STACKTRACE, ATTR_EXCEPTION_TYPE, } from '@opentelemetry/semantic-conventions';
8
8
  import { ExceptionEventName } from './enums';
9
+ import { formatInspect, inspectCustom, settledResourceAttributes, } from './inspect';
9
10
  /**
10
11
  * This class represents a span.
11
12
  */
@@ -380,5 +381,27 @@ export class SpanImpl {
380
381
  // Other types, no need to apply value length limit
381
382
  return value;
382
383
  }
384
+ [inspectCustom](depth, options, inspect) {
385
+ const payload = {
386
+ name: this.name,
387
+ kind: this.kind,
388
+ spanContext: this._spanContext,
389
+ parentSpanContext: this.parentSpanContext,
390
+ status: this.status,
391
+ startTime: this.startTime,
392
+ endTime: this.endTime,
393
+ duration: this._duration,
394
+ ended: this._ended,
395
+ attributes: this.attributes,
396
+ events: this.events,
397
+ links: this.links,
398
+ droppedAttributesCount: this._droppedAttributesCount,
399
+ droppedEventsCount: this._droppedEventsCount,
400
+ droppedLinksCount: this._droppedLinksCount,
401
+ instrumentationScope: this.instrumentationScope,
402
+ resource: { attributes: settledResourceAttributes(this.resource) },
403
+ };
404
+ return formatInspect('SpanImpl', payload, depth, options, inspect);
405
+ }
383
406
  }
384
407
  //# sourceMappingURL=Span.js.map