decocms 2.366.7 → 2.367.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (624) hide show
  1. package/dist/client/assets/{AlertCircle-DFcOa31f.js → AlertCircle-DXzL-e2e.js} +1 -1
  2. package/dist/client/assets/{ArrowNarrowLeft-CbOlEr1w.js → ArrowNarrowLeft-CfhHEfPi.js} +1 -1
  3. package/dist/client/assets/{ArrowUpRight-C6axmKPR.js → ArrowUpRight-B88Qk3-k.js} +1 -1
  4. package/dist/client/assets/{Check-JQri_6PS.js → Check-CVVQU9f4.js} +1 -1
  5. package/dist/client/assets/{CheckCircle-B6HzfzYv.js → CheckCircle-Cj6h9CZZ.js} +1 -1
  6. package/dist/client/assets/{ChevronDown-CNNU2L0m.js → ChevronDown-DPIOR45j.js} +1 -1
  7. package/dist/client/assets/{ChevronRight-BuVcgGSu.js → ChevronRight-s9nAs9dC.js} +1 -1
  8. package/dist/client/assets/{ChevronUp-DyIOyS2u.js → ChevronUp-CrZe5oLM.js} +1 -1
  9. package/dist/client/assets/{Container-Cy3AGglh.js → Container-6XDQdQD7.js} +1 -1
  10. package/dist/client/assets/{DotsVertical-DIehc2A5.js → DotsVertical-CcodegNX.js} +1 -1
  11. package/dist/client/assets/{FilterLines-DHlq5ZtE.js → FilterLines-D8KDEvth.js} +1 -1
  12. package/dist/client/assets/{HardDrive-CAAHpLeS.js → HardDrive-DoqeSHVa.js} +1 -1
  13. package/dist/client/assets/{Key01-C29UL5qH.js → Key01-CerwD4kH.js} +1 -1
  14. package/dist/client/assets/{LayoutLeft-5sSkIfFI.js → LayoutLeft-D1UJkE8Z.js} +1 -1
  15. package/dist/client/assets/{LinkExternal01-QpHHOJbZ.js → LinkExternal01-Bh1MqI14.js} +1 -1
  16. package/dist/client/assets/{Lock01-Ju5ifHNn.js → Lock01-1l3Qk0Ch.js} +1 -1
  17. package/dist/client/assets/{Monitor01-DHHvwXbl.js → Monitor01-C_nV3Aph.js} +1 -1
  18. package/dist/client/assets/{Palette-CJqBw6AH.js → Palette-Conuu6po.js} +1 -1
  19. package/dist/client/assets/{Play-DPs1Pbq2.js → Play-Bl98xYAX.js} +1 -1
  20. package/dist/client/assets/{Plus-DgrNRFK5.js → Plus-COLFeRdD.js} +1 -1
  21. package/dist/client/assets/{RefreshCcw01-Bf15qfNS.js → RefreshCcw01-DV6YQbn5.js} +1 -1
  22. package/dist/client/assets/{SearchMd-CuY4_41I.js → SearchMd-kxm_aOtG.js} +1 -1
  23. package/dist/client/assets/{Settings02-Cjzbasby.js → Settings02-B5DDF3I3.js} +1 -1
  24. package/dist/client/assets/{Shield01-rI42zX_N.js → Shield01-DGoVrslL.js} +1 -1
  25. package/dist/client/assets/{Star01-CiaU9xFe.js → Star01-uBjPmJoD.js} +1 -1
  26. package/dist/client/assets/{Stars02-BHNtUcIC.js → Stars02-DWX8YYmb.js} +1 -1
  27. package/dist/client/assets/{Sun-DA9iSyj3.js → Sun-DO_l8Nxm.js} +1 -1
  28. package/dist/client/assets/{SwitchHorizontal01-B0nDhziZ.js → SwitchHorizontal01-CZPsbi6E.js} +1 -1
  29. package/dist/client/assets/{Tool01-BpLh90bx.js → Tool01-VSFjPWag.js} +1 -1
  30. package/dist/client/assets/{Trash01-BU1vvG1i.js → Trash01-DXA4MDgW.js} +1 -1
  31. package/dist/client/assets/{Upload01-D2aoviL7.js → Upload01-D9wbCeYM.js} +1 -1
  32. package/dist/client/assets/{User01-BUxAdPGO.js → User01-Cg4UMwQQ.js} +1 -1
  33. package/dist/client/assets/{Users01-X9W80ATA.js → Users01-oOzEMBqo.js} +1 -1
  34. package/dist/client/assets/{Users03-DERc_3KT.js → Users03-x4icXpDF.js} +1 -1
  35. package/dist/client/assets/{X-CpxCwBcO.js → X-b1s3Az9Q.js} +1 -1
  36. package/dist/client/assets/{XCircle-BlhQtOFW.js → XCircle-qLeWuwHg.js} +1 -1
  37. package/dist/client/assets/{XClose-6T_HfnSF.js → XClose-BxtrNKVu.js} +1 -1
  38. package/dist/client/assets/{Zap-C_gPmGTu.js → Zap-DiNaNqdG.js} +1 -1
  39. package/dist/client/assets/{ZapSquare-D-9nYZGQ.js → ZapSquare-pUKWIFHO.js} +1 -1
  40. package/dist/client/assets/{accordion-CBF1VPy1.js → accordion-Ci_gE5Cp.js} +1 -1
  41. package/dist/client/assets/{add-connection-dialog-WM_qTQCr.js → add-connection-dialog-M1B1RJQ_.js} +1 -1
  42. package/dist/client/assets/{agent-icon-BZLvaskO.js → agent-icon-Zn8uPUNh.js} +1 -1
  43. package/dist/client/assets/{agent-icons-ZEbpuDyp.js → agent-icons-CMWxNall.js} +1 -1
  44. package/dist/client/assets/{agents-list-BD4seTwq.js → agents-list-B-ROPkpj.js} +1 -1
  45. package/dist/client/assets/{ai-providers-Dps_1J2i.js → ai-providers-DEGL_eBY.js} +1 -1
  46. package/dist/client/assets/{alert-CmozMRgO.js → alert-DjpNgI2W.js} +1 -1
  47. package/dist/client/assets/{alert-dialog-Bzj7Dj8A.js → alert-dialog-B1S-XKia.js} +1 -1
  48. package/dist/client/assets/{auth-catchall-Ck-h53ka.js → auth-catchall-FzOyOOoh.js} +1 -1
  49. package/dist/client/assets/{auth-split-layout-COCXQjkb.js → auth-split-layout-CnpnJof8.js} +1 -1
  50. package/dist/client/assets/{automation-list-row-BK4XzBrA.js → automation-list-row-DJ2ZwwgT.js} +1 -1
  51. package/dist/client/assets/{automations-BIQRZeWE.js → automations-oHuN5wL_.js} +1 -1
  52. package/dist/client/assets/{avatar-DCmff7mq.js → avatar-r8LZmR6e.js} +1 -1
  53. package/dist/client/assets/{badge-ONnaTLOr.js → badge-CC_f_cJU.js} +1 -1
  54. package/dist/client/assets/{brand-context-DWdSQDXw.js → brand-context-BLEppAAs.js} +1 -1
  55. package/dist/client/assets/{card-BsL17xby.js → card-Canx3qu9.js} +1 -1
  56. package/dist/client/assets/{chat-context-4LDn0s0C.js → chat-context-MBB7p8d0.js} +1 -1
  57. package/dist/client/assets/{checkbox-CupWiQrC.js → checkbox-C04z7qrL.js} +1 -1
  58. package/dist/client/assets/{cli-auth-success-C_FSoZy8.js → cli-auth-success-DAkmN50l.js} +1 -1
  59. package/dist/client/assets/{collection-detail-rvEMorEg.js → collection-detail-BGP3eYpv.js} +1 -1
  60. package/dist/client/assets/{collection-display-button-BMPAqbiG.js → collection-display-button-STdK4lVO.js} +1 -1
  61. package/dist/client/assets/{collection-search-DBZ50buZ.js → collection-search-DJv63gft.js} +1 -1
  62. package/dist/client/assets/{collection-search-Um_OB9Yj.js → collection-search-ttkhmg3L.js} +1 -1
  63. package/dist/client/assets/{collection-table-wrapper-Dtog_f2p.js → collection-table-wrapper-CsYbLGlT.js} +1 -1
  64. package/dist/client/assets/{collection-tabs-DBGScRHK.js → collection-tabs-B-7_DLYw.js} +1 -1
  65. package/dist/client/assets/{collections-B7Zm82Yd.js → collections-DXUBhH3v.js} +1 -1
  66. package/dist/client/assets/{command-BbOyBJF2.js → command-P20c5nhn.js} +1 -1
  67. package/dist/client/assets/{connect-desktop-dialog-BB6OqliN.js → connect-desktop-dialog-D7wjmDNg.js} +1 -1
  68. package/dist/client/assets/{connection-card-CfeWMSHF.js → connection-card-DDguFWx8.js} +1 -1
  69. package/dist/client/assets/{connection-detail-pLHIqTQT.js → connection-detail-Cn7lM3pd.js} +1 -1
  70. package/dist/client/assets/{connection-form-helpers-CU39ex55.js → connection-form-helpers-ZOzZBM7G.js} +1 -1
  71. package/dist/client/assets/{connections-Dcfpl5Vt.js → connections-DdN0-znW.js} +1 -1
  72. package/dist/client/assets/{constants-z8N0NNar.js → constants-CeG9JZBg.js} +1 -1
  73. package/dist/client/assets/{decopilot-sse-pool-BmH40IlP.js → decopilot-sse-pool-BX2AZ6Ip.js} +1 -1
  74. package/dist/client/assets/{dialog-1TuinsgZ.js → dialog-COtVk7nM.js} +1 -1
  75. package/dist/client/assets/{domain-settings-CK5mrQIi.js → domain-settings-Cyq61Uyw.js} +1 -1
  76. package/dist/client/assets/{drawer-DQoKQZB2.js → drawer-DQKlrYFy.js} +1 -1
  77. package/dist/client/assets/{dropdown-menu-Dzjyztci.js → dropdown-menu-DAgiFQA-.js} +1 -1
  78. package/dist/client/assets/{dynamic-plugin-layout-VBJnbblQ.js → dynamic-plugin-layout-KH5xflFf.js} +1 -1
  79. package/dist/client/assets/{empty-state-DoRCByZ3.js → empty-state-BHa2VePZ.js} +1 -1
  80. package/dist/client/assets/{empty-state-oNm48kH8.js → empty-state-DyCsD4Xv.js} +1 -1
  81. package/dist/client/assets/{extract-connection-data-DhUh4JIU.js → extract-connection-data-ici9JYI-.js} +1 -1
  82. package/dist/client/assets/{features-BLue5eI4.js → features-qVmdZHC_.js} +1 -1
  83. package/dist/client/assets/{file-explorer-CEsWFSVG.js → file-explorer-COR8IgjY.js} +2 -2
  84. package/dist/client/assets/{files-DnOIW6UR.js → files-C4_Zemsj.js} +1 -1
  85. package/dist/client/assets/{form-BACtGvj-.js → form-BQ10aOSg.js} +1 -1
  86. package/dist/client/assets/{general-D8M9QTub.js → general-BGmslHbS.js} +1 -1
  87. package/dist/client/assets/{generate-id-D8MMm0i_.js → generate-id-rt1VhfzJ.js} +1 -1
  88. package/dist/client/assets/{github-repo-picker-rt9Vt0dE.js → github-repo-picker-DoUFteXG.js} +1 -1
  89. package/dist/client/assets/{hooks-BsbVht9n.js → hooks-DahjgK73.js} +1 -1
  90. package/dist/client/assets/{hover-card-CxINYsQV.js → hover-card-qkq7uvDX.js} +1 -1
  91. package/dist/client/assets/{import-from-deco-dialog-C0AXmTvu.js → import-from-deco-dialog-p-VjOXur.js} +1 -1
  92. package/dist/client/assets/{index-zqEjYnv0.js → index-BIm-U5bn.js} +1 -1
  93. package/dist/client/assets/{index-5btRi0pB.js → index-BQ6Tq1Ey.js} +1 -1
  94. package/dist/client/assets/index-BVQQKDp1.js +3 -0
  95. package/dist/client/assets/{index-D2D8zFsJ.js → index-Bm0JQELA.js} +1 -1
  96. package/dist/client/assets/{index-raVE4iMU.js → index-Bu2U14t2.js} +2 -2
  97. package/dist/client/assets/{index-DktH-nwk.js → index-C48xwqne.js} +1 -1
  98. package/dist/client/assets/{index-Btb-lxzO.js → index-C7HF4XSS.js} +1 -1
  99. package/dist/client/assets/index-CgAhro81.js +1 -0
  100. package/dist/client/assets/{index-oYU8P956.js → index-CmfaaOUl.js} +1 -1
  101. package/dist/client/assets/{index-Bid6pGzX.js → index-Co2aD0Mz.js} +1 -1
  102. package/dist/client/assets/{index-DRu0KGyt.js → index-Dm2ppVy2.js} +1 -1
  103. package/dist/client/assets/{index-CSjyCM-u.js → index-DtpDe7Xe.js} +1 -1
  104. package/dist/client/assets/{index-BuEd39Tz.js → index-MYbV77Pi.js} +1 -1
  105. package/dist/client/assets/{index-B7X0Dr5K.js → index-c1bVVOyj.js} +1 -1
  106. package/dist/client/assets/index-c31YLqeq.css +1 -0
  107. package/dist/client/assets/{index-DOyZEChd.js → index-pxxg1Ua1.js} +1 -1
  108. package/dist/client/assets/index-u1AD7q1g.js +311 -0
  109. package/dist/client/assets/{infiniteQueryObserver-ZgItTY4U.js → infiniteQueryObserver-IPudB3R4.js} +1 -1
  110. package/dist/client/assets/{input-CcEL_8zI.js → input-Gm-CLnNx.js} +1 -1
  111. package/dist/client/assets/{integration-icon-C6CHfqhT.js → integration-icon-DhufG1OP.js} +1 -1
  112. package/dist/client/assets/{label-P_F_-Q8z.js → label-Dg1F2Ji_.js} +1 -1
  113. package/dist/client/assets/{layout-Cy8BIgv4.js → layout-DxN-JP5j.js} +1 -1
  114. package/dist/client/assets/{login-C0__NyWq.js → login-CeDFoPeu.js} +1 -1
  115. package/dist/client/assets/{members-CvLryIsr.js → members-C7ZY1zS3.js} +1 -1
  116. package/dist/client/assets/{monaco-editor-BeYwPRx7.js → monaco-editor-B1LoCjUy.js} +1 -1
  117. package/dist/client/assets/{monitoring-stats-row-oa232c6w.js → monitoring-stats-row-CGIeGLqk.js} +1 -1
  118. package/dist/client/assets/{oauth-callback-nhW5Hk7K.js → oauth-callback-D2hLiO5z.js} +1 -1
  119. package/dist/client/assets/{oauth-callback-ai-provider-CBGn5V2N.js → oauth-callback-ai-provider-CUhBhrBY.js} +1 -1
  120. package/dist/client/assets/{onboarding-CJebl9bX.js → onboarding-DsIzXfJd.js} +1 -1
  121. package/dist/client/assets/{org-layout-C77vl6Iy.js → org-layout-BpPJBlah.js} +1 -1
  122. package/dist/client/assets/{org-plugin-layout-iBgNZvjR.js → org-plugin-layout-DsOGeU3B.js} +1 -1
  123. package/dist/client/assets/{pair-D5k2ePIl.js → pair-DI86SuRu.js} +1 -1
  124. package/dist/client/assets/{plugin-empty-state-C6vbSsTR.js → plugin-empty-state-BzW8VHTi.js} +1 -1
  125. package/dist/client/assets/{plugin-header-CERNSvWs.js → plugin-header-CaLm6qER.js} +1 -1
  126. package/dist/client/assets/{plugin-layout-Dqtz19-C.js → plugin-layout-DxgOHtQZ.js} +1 -1
  127. package/dist/client/assets/{popover-Biu5bUpE.js → popover-D3VRJyXQ.js} +1 -1
  128. package/dist/client/assets/{profile-CiZbXHxj.js → profile-DMlysRe7.js} +1 -1
  129. package/dist/client/assets/{project-app-view-C5c0g4mg.js → project-app-view-CaNf3z-H.js} +1 -1
  130. package/dist/client/assets/registry-BF2TVA9v.js +2 -0
  131. package/dist/client/assets/{registry-layout-BV5ALzTv.js → registry-layout-N0nNOTo5.js} +1 -1
  132. package/dist/client/assets/{required-auth-layout-6caiGmq6.js → required-auth-layout-BQpJq4ih.js} +1 -1
  133. package/dist/client/assets/{reset-password-D0Ak5nrj.js → reset-password-CoM0M_wG.js} +1 -1
  134. package/dist/client/assets/{roles-DaLbowGy.js → roles-CkNpIK8A.js} +1 -1
  135. package/dist/client/assets/{search-input-DN3bxChj.js → search-input-3a7FLbEN.js} +1 -1
  136. package/dist/client/assets/{secrets-B6jYZgCT.js → secrets-Cikerbsv.js} +1 -1
  137. package/dist/client/assets/{sections-editor-2l7dT3ea.js → sections-editor-KfNKSbH4.js} +1 -1
  138. package/dist/client/assets/{select-BI295XE-.js → select-Do-YIC95.js} +1 -1
  139. package/dist/client/assets/{settings-layout-0UTQAxIu.js → settings-layout-ByWOvV-3.js} +1 -1
  140. package/dist/client/assets/{settings-section-DCgrgvZN.js → settings-section-BsB0mtVZ.js} +1 -1
  141. package/dist/client/assets/{shell-controls-B5In6zvk.js → shell-controls-Cbhst9tD.js} +1 -1
  142. package/dist/client/assets/{shell-layout-B4sASmIz.js → shell-layout-BkOq1my0.js} +1 -1
  143. package/dist/client/assets/{sidebar-BQJxM_Xs.js → sidebar-lOsh0hdm.js} +1 -1
  144. package/dist/client/assets/{skeleton-Cz-aBL4t.js → skeleton-BF3OjMtt.js} +1 -1
  145. package/dist/client/assets/{sortable.esm-CVet_wfm.js → sortable.esm-Dmg5Uhtt.js} +1 -1
  146. package/dist/client/assets/{spinner-CW1wo-Y2.js → spinner-Bd8DWP5b.js} +1 -1
  147. package/dist/client/assets/{sso-DLX1tDyb.js → sso-DbdGKnQo.js} +1 -1
  148. package/dist/client/assets/{store-yTIcf52L.js → store-BRAZvvVu.js} +1 -1
  149. package/dist/client/assets/store-registry-hCqsym7u.js +2 -0
  150. package/dist/client/assets/{switch-Cgc8prv4.js → switch-B5i61WGx.js} +1 -1
  151. package/dist/client/assets/{table-Guyc6r0i.js → table-DEqMcuIQ.js} +1 -1
  152. package/dist/client/assets/{tabs-CbnJ7Xfx.js → tabs-BBxXSCNR.js} +1 -1
  153. package/dist/client/assets/{task-status-D5nCekWh.js → task-status-2lp2gBDY.js} +1 -1
  154. package/dist/client/assets/{textarea-CUr0kaZB.js → textarea-CWF6PLaO.js} +1 -1
  155. package/dist/client/assets/{toggle-group-D-Azql3v.js → toggle-group-C2V5u1t8.js} +1 -1
  156. package/dist/client/assets/{toolbar-DWP3DcTB.js → toolbar-BQmzXxj2.js} +1 -1
  157. package/dist/client/assets/{tools-list-Yx20h0-O.js → tools-list-3jqfZheT.js} +1 -1
  158. package/dist/client/assets/{tooltip-BrUaJepM.js → tooltip-Cd0WV_-O.js} +1 -1
  159. package/dist/client/assets/{types-C22VRq2r.js → types-CYOeConU.js} +1 -1
  160. package/dist/client/assets/{use-ai-providers-DWeBiBfE.js → use-ai-providers-CLXPn15X.js} +1 -1
  161. package/dist/client/assets/{use-collections-DBbGR_3H.js → use-collections-BBCeZZem.js} +1 -1
  162. package/dist/client/assets/{use-connection-3197jn_F.js → use-connection-BjJcNqBo.js} +1 -1
  163. package/dist/client/assets/{use-copy-DeOqBGNE.js → use-copy-D4i2uQwO.js} +1 -1
  164. package/dist/client/assets/{use-create-virtual-mcp-CDYPVS3p.js → use-create-virtual-mcp-Ddw3wBkw.js} +1 -1
  165. package/dist/client/assets/{use-debounced-autosave-Blm-Cns4.js → use-debounced-autosave-BwTEb7mk.js} +1 -1
  166. package/dist/client/assets/{use-delete-connection-CgDNCbAv.js → use-delete-connection-DPDFcsJG.js} +1 -1
  167. package/dist/client/assets/{use-file-configs-CkITamMd.js → use-file-configs-wxZvTo-4.js} +1 -1
  168. package/dist/client/assets/{use-infinite-scroll-C3Cp1KLu.js → use-infinite-scroll-DpjbqNjO.js} +1 -1
  169. package/dist/client/assets/{use-list-state-D2ojxj9D.js → use-list-state-BDczNd3d.js} +1 -1
  170. package/dist/client/assets/{use-mcp-prompts-DgIPs9M6.js → use-mcp-prompts-Di7bRUJd.js} +1 -1
  171. package/dist/client/assets/{use-mcp-tools-DycYaXyV.js → use-mcp-tools-CXhNiy9B.js} +1 -1
  172. package/dist/client/assets/{use-members-XY8cJPkc.js → use-members-v6DMcs7q.js} +1 -1
  173. package/dist/client/assets/{use-navigate-to-agent-VrXIL0dL.js → use-navigate-to-agent-kpoCIrmM.js} +1 -1
  174. package/dist/client/assets/{use-org-auth-client--KUUMHp0.js → use-org-auth-client-Dgv5Pywe.js} +1 -1
  175. package/dist/client/assets/{use-org-sso-mHvkRXYR.js → use-org-sso-CPMQDL7s.js} +1 -1
  176. package/dist/client/assets/{use-organization-roles-DvMKsAzI.js → use-organization-roles-C-Rqq_UY.js} +1 -1
  177. package/dist/client/assets/{use-organization-settings-yjaKZxoH.js → use-organization-settings-BxwCxkqF.js} +1 -1
  178. package/dist/client/assets/{use-registry-connections-CPtKKagv.js → use-registry-connections-C2RZzDsv.js} +1 -1
  179. package/dist/client/assets/{use-secrets-DaKsY9Qa.js → use-secrets-BL_dZet0.js} +1 -1
  180. package/dist/client/assets/{use-status-sounds-piyGyRnD.js → use-status-sounds-DLUmrT4z.js} +1 -1
  181. package/dist/client/assets/{use-view-mode-FiZLQ7H4.js → use-view-mode-CoI0L4QU.js} +1 -1
  182. package/dist/client/assets/{use-virtual-mcp-wzufKfmA.js → use-virtual-mcp-UctVb3-u.js} +1 -1
  183. package/dist/client/assets/useInfiniteQuery-MQVrgaFy.js +1 -0
  184. package/dist/client/assets/{useRouterState-C5I8d05V.js → useRouterState-UCBrkWDt.js} +1 -1
  185. package/dist/client/assets/useSuspenseInfiniteQuery-ylt-kbBo.js +1 -0
  186. package/dist/client/assets/{user-CGJGTWyL.js → user-5jBi409R.js} +1 -1
  187. package/dist/client/assets/{view-mode-toggle-BV9N1_6z.js → view-mode-toggle-BY41fwj1.js} +1 -1
  188. package/dist/client/assets/workflow-detail-CIJ57Bal.js +1 -0
  189. package/dist/client/assets/{workflow-BhGQkDG3.js → workflow-jx_Dwi4p.js} +1 -1
  190. package/dist/client/index.html +2 -2
  191. package/dist/server/cli.js +76 -9
  192. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/OTLPExporterBase.d.ts +1 -1
  193. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/OTLPExporterBase.js +2 -2
  194. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/OTLPExporterBase.js.map +1 -1
  195. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/configuration/convert-legacy-browser-http-options.js +2 -2
  196. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/configuration/convert-legacy-browser-http-options.js.map +1 -1
  197. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/configuration/convert-legacy-node-http-options.js +2 -2
  198. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/configuration/convert-legacy-node-http-options.js.map +1 -1
  199. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/configuration/create-legacy-browser-delegate.js +7 -2
  200. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/configuration/create-legacy-browser-delegate.js.map +1 -1
  201. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/configuration/legacy-base-configuration.d.ts +1 -26
  202. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/configuration/legacy-base-configuration.js.map +1 -1
  203. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/configuration/otlp-http-configuration.d.ts +1 -2
  204. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/configuration/otlp-http-configuration.js +9 -9
  205. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/configuration/otlp-http-configuration.js.map +1 -1
  206. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/configuration/shared-configuration.d.ts +1 -2
  207. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/configuration/shared-configuration.js +1 -1
  208. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/configuration/shared-configuration.js.map +1 -1
  209. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/export-response.d.ts +0 -1
  210. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/export-response.js.map +1 -1
  211. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/index-browser-http.d.ts +1 -1
  212. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/index-browser-http.js +1 -1
  213. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/index-browser-http.js.map +1 -1
  214. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/is-export-retryable.d.ts +1 -1
  215. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/is-export-retryable.js +3 -5
  216. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/is-export-retryable.js.map +1 -1
  217. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/otlp-browser-http-export-delegate.d.ts +4 -0
  218. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/otlp-browser-http-export-delegate.js +10 -1
  219. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/otlp-browser-http-export-delegate.js.map +1 -1
  220. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/otlp-export-delegate.js +8 -9
  221. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/otlp-export-delegate.js.map +1 -1
  222. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/retrying-transport.js +5 -17
  223. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/retrying-transport.js.map +1 -1
  224. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/transport/fetch-transport.d.ts +1 -2
  225. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/transport/fetch-transport.js +8 -13
  226. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/transport/fetch-transport.js.map +1 -1
  227. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/transport/http-exporter-transport.js +4 -5
  228. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/transport/http-exporter-transport.js.map +1 -1
  229. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/transport/http-transport-types.d.ts +1 -2
  230. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/transport/http-transport-types.js.map +1 -1
  231. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/transport/http-transport-utils.d.ts +2 -1
  232. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/transport/http-transport-utils.js +14 -37
  233. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/transport/http-transport-utils.js.map +1 -1
  234. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/transport/send-beacon-transport.d.ts +2 -4
  235. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/transport/send-beacon-transport.js +4 -5
  236. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/transport/send-beacon-transport.js.map +1 -1
  237. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/transport/xhr-transport.d.ts +17 -0
  238. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/transport/xhr-transport.js +86 -0
  239. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/transport/xhr-transport.js.map +1 -0
  240. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/util.d.ts +1 -1
  241. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/util.js +12 -10
  242. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/util.js.map +1 -1
  243. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/version.d.ts +1 -1
  244. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/version.js +1 -1
  245. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/version.js.map +1 -1
  246. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/OTLPExporterBase.d.ts +1 -1
  247. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/OTLPExporterBase.js +2 -2
  248. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/OTLPExporterBase.js.map +1 -1
  249. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/configuration/convert-legacy-browser-http-options.js +2 -2
  250. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/configuration/convert-legacy-browser-http-options.js.map +1 -1
  251. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/configuration/convert-legacy-node-http-options.js +2 -2
  252. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/configuration/convert-legacy-node-http-options.js.map +1 -1
  253. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/configuration/create-legacy-browser-delegate.js +7 -2
  254. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/configuration/create-legacy-browser-delegate.js.map +1 -1
  255. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/configuration/legacy-base-configuration.d.ts +1 -26
  256. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/configuration/legacy-base-configuration.js.map +1 -1
  257. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/configuration/otlp-http-configuration.d.ts +1 -2
  258. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/configuration/otlp-http-configuration.js +9 -9
  259. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/configuration/otlp-http-configuration.js.map +1 -1
  260. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/configuration/shared-configuration.d.ts +1 -2
  261. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/configuration/shared-configuration.js +1 -1
  262. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/configuration/shared-configuration.js.map +1 -1
  263. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/export-response.d.ts +0 -1
  264. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/export-response.js.map +1 -1
  265. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/index-browser-http.d.ts +1 -1
  266. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/index-browser-http.js +1 -1
  267. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/index-browser-http.js.map +1 -1
  268. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/is-export-retryable.d.ts +1 -1
  269. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/is-export-retryable.js +3 -5
  270. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/is-export-retryable.js.map +1 -1
  271. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/otlp-browser-http-export-delegate.d.ts +4 -0
  272. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/otlp-browser-http-export-delegate.js +10 -1
  273. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/otlp-browser-http-export-delegate.js.map +1 -1
  274. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/otlp-export-delegate.js +8 -9
  275. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/otlp-export-delegate.js.map +1 -1
  276. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/retrying-transport.js +5 -17
  277. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/retrying-transport.js.map +1 -1
  278. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/transport/fetch-transport.d.ts +1 -2
  279. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/transport/fetch-transport.js +8 -13
  280. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/transport/fetch-transport.js.map +1 -1
  281. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/transport/http-exporter-transport.js +4 -5
  282. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/transport/http-exporter-transport.js.map +1 -1
  283. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/transport/http-transport-types.d.ts +1 -2
  284. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/transport/http-transport-types.js.map +1 -1
  285. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/transport/http-transport-utils.d.ts +2 -1
  286. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/transport/http-transport-utils.js +14 -37
  287. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/transport/http-transport-utils.js.map +1 -1
  288. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/transport/send-beacon-transport.d.ts +2 -4
  289. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/transport/send-beacon-transport.js +4 -5
  290. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/transport/send-beacon-transport.js.map +1 -1
  291. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/transport/xhr-transport.d.ts +17 -0
  292. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/transport/xhr-transport.js +86 -0
  293. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/transport/xhr-transport.js.map +1 -0
  294. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/util.d.ts +1 -1
  295. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/util.js +12 -10
  296. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/util.js.map +1 -1
  297. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/version.d.ts +1 -1
  298. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/version.js +1 -1
  299. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/version.js.map +1 -1
  300. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/OTLPExporterBase.d.ts +1 -1
  301. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/OTLPExporterBase.js +2 -2
  302. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/OTLPExporterBase.js.map +1 -1
  303. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/configuration/convert-legacy-browser-http-options.js +2 -2
  304. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/configuration/convert-legacy-browser-http-options.js.map +1 -1
  305. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/configuration/convert-legacy-node-http-options.js +2 -2
  306. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/configuration/convert-legacy-node-http-options.js.map +1 -1
  307. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/configuration/create-legacy-browser-delegate.js +6 -1
  308. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/configuration/create-legacy-browser-delegate.js.map +1 -1
  309. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/configuration/legacy-base-configuration.d.ts +1 -26
  310. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/configuration/legacy-base-configuration.js.map +1 -1
  311. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/configuration/otlp-http-configuration.d.ts +1 -2
  312. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/configuration/otlp-http-configuration.js +9 -9
  313. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/configuration/otlp-http-configuration.js.map +1 -1
  314. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/configuration/shared-configuration.d.ts +1 -2
  315. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/configuration/shared-configuration.js +1 -1
  316. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/configuration/shared-configuration.js.map +1 -1
  317. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/export-response.d.ts +0 -1
  318. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/export-response.js.map +1 -1
  319. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/index-browser-http.d.ts +1 -1
  320. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/index-browser-http.js +2 -1
  321. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/index-browser-http.js.map +1 -1
  322. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/is-export-retryable.d.ts +1 -1
  323. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/is-export-retryable.js +5 -7
  324. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/is-export-retryable.js.map +1 -1
  325. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/otlp-browser-http-export-delegate.d.ts +4 -0
  326. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/otlp-browser-http-export-delegate.js +12 -2
  327. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/otlp-browser-http-export-delegate.js.map +1 -1
  328. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/otlp-export-delegate.js +8 -9
  329. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/otlp-export-delegate.js.map +1 -1
  330. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/retrying-transport.js +5 -17
  331. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/retrying-transport.js.map +1 -1
  332. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/transport/fetch-transport.d.ts +1 -2
  333. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/transport/fetch-transport.js +7 -12
  334. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/transport/fetch-transport.js.map +1 -1
  335. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/transport/http-exporter-transport.js +4 -5
  336. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/transport/http-exporter-transport.js.map +1 -1
  337. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/transport/http-transport-types.d.ts +1 -2
  338. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/transport/http-transport-types.js.map +1 -1
  339. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/transport/http-transport-utils.d.ts +2 -1
  340. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/transport/http-transport-utils.js +13 -36
  341. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/transport/http-transport-utils.js.map +1 -1
  342. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/transport/send-beacon-transport.d.ts +2 -4
  343. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/transport/send-beacon-transport.js +4 -5
  344. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/transport/send-beacon-transport.js.map +1 -1
  345. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/transport/xhr-transport.d.ts +17 -0
  346. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/transport/xhr-transport.js +90 -0
  347. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/transport/xhr-transport.js.map +1 -0
  348. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/util.d.ts +1 -1
  349. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/util.js +12 -10
  350. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/util.js.map +1 -1
  351. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/version.d.ts +1 -1
  352. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/version.js +1 -1
  353. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/version.js.map +1 -1
  354. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/package.json +6 -6
  355. package/dist/server/node_modules/@opentelemetry/otlp-transformer/build/esm/generated/root.js +6 -36
  356. package/dist/server/node_modules/@opentelemetry/otlp-transformer/build/esm/generated/root.js.map +1 -1
  357. package/dist/server/node_modules/@opentelemetry/otlp-transformer/build/esm/trace/internal.js +0 -15
  358. package/dist/server/node_modules/@opentelemetry/otlp-transformer/build/esm/trace/internal.js.map +1 -1
  359. package/dist/server/node_modules/@opentelemetry/otlp-transformer/build/esnext/generated/root.js +6 -36
  360. package/dist/server/node_modules/@opentelemetry/otlp-transformer/build/esnext/generated/root.js.map +1 -1
  361. package/dist/server/node_modules/@opentelemetry/otlp-transformer/build/esnext/trace/internal.js +0 -15
  362. package/dist/server/node_modules/@opentelemetry/otlp-transformer/build/esnext/trace/internal.js.map +1 -1
  363. package/dist/server/node_modules/@opentelemetry/otlp-transformer/build/src/generated/root.js +6 -36
  364. package/dist/server/node_modules/@opentelemetry/otlp-transformer/build/src/generated/root.js.map +1 -1
  365. package/dist/server/node_modules/@opentelemetry/otlp-transformer/build/src/trace/internal.js +0 -15
  366. package/dist/server/node_modules/@opentelemetry/otlp-transformer/build/src/trace/internal.js.map +1 -1
  367. package/dist/server/node_modules/@opentelemetry/otlp-transformer/package.json +14 -12
  368. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/InstrumentDescriptor.js +1 -1
  369. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/InstrumentDescriptor.js.map +1 -1
  370. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/Instruments.d.ts +3 -3
  371. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/Instruments.js +6 -6
  372. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/Instruments.js.map +1 -1
  373. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/Meter.d.ts +1 -1
  374. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/Meter.js +2 -2
  375. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/Meter.js.map +1 -1
  376. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/ObservableResult.d.ts +3 -3
  377. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/ObservableResult.js +5 -5
  378. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/ObservableResult.js.map +1 -1
  379. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/aggregator/ExponentialHistogram.d.ts +3 -3
  380. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/aggregator/ExponentialHistogram.js +17 -17
  381. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/aggregator/ExponentialHistogram.js.map +1 -1
  382. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/aggregator/Histogram.d.ts +3 -3
  383. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/aggregator/Histogram.js +8 -8
  384. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/aggregator/Histogram.js.map +1 -1
  385. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/aggregator/LastValue.d.ts +1 -1
  386. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/aggregator/LastValue.js +2 -2
  387. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/aggregator/LastValue.js.map +1 -1
  388. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/aggregator/Sum.d.ts +2 -2
  389. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/aggregator/Sum.js +3 -3
  390. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/aggregator/Sum.js.map +1 -1
  391. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/aggregator/exponential-histogram/Buckets.d.ts +1 -1
  392. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/aggregator/exponential-histogram/Buckets.js +2 -2
  393. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/aggregator/exponential-histogram/Buckets.js.map +1 -1
  394. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/export/ConsoleMetricExporter.js +1 -1
  395. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/export/ConsoleMetricExporter.js.map +1 -1
  396. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/export/MetricReader.js +3 -3
  397. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/export/MetricReader.js.map +1 -1
  398. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/export/PeriodicExportingMetricReader.js +14 -21
  399. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/export/PeriodicExportingMetricReader.js.map +1 -1
  400. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/AsyncMetricStorage.d.ts +2 -2
  401. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/AsyncMetricStorage.js +4 -4
  402. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/AsyncMetricStorage.js.map +1 -1
  403. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/DeltaMetricProcessor.d.ts +2 -2
  404. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/DeltaMetricProcessor.js +3 -3
  405. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/DeltaMetricProcessor.js.map +1 -1
  406. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/HashMap.d.ts +2 -2
  407. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/HashMap.js +3 -3
  408. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/HashMap.js.map +1 -1
  409. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/MeterProviderSharedState.d.ts +1 -1
  410. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/MeterProviderSharedState.js +1 -1
  411. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/MeterProviderSharedState.js.map +1 -1
  412. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/MeterSharedState.d.ts +3 -3
  413. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/MeterSharedState.js +11 -12
  414. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/MeterSharedState.js.map +1 -1
  415. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/MetricCollector.d.ts +1 -1
  416. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/MetricCollector.js +3 -3
  417. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/MetricCollector.js.map +1 -1
  418. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/MetricStorage.d.ts +1 -1
  419. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/MetricStorage.js +2 -2
  420. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/MetricStorage.js.map +1 -1
  421. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/MultiWritableMetricStorage.d.ts +1 -1
  422. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/MultiWritableMetricStorage.js +2 -2
  423. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/MultiWritableMetricStorage.js.map +1 -1
  424. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/ObservableRegistry.js +4 -4
  425. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/ObservableRegistry.js.map +1 -1
  426. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/SyncMetricStorage.d.ts +2 -2
  427. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/SyncMetricStorage.js +4 -4
  428. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/SyncMetricStorage.js.map +1 -1
  429. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/TemporalMetricProcessor.d.ts +1 -1
  430. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/TemporalMetricProcessor.js +2 -2
  431. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/state/TemporalMetricProcessor.js.map +1 -1
  432. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/utils.d.ts +19 -0
  433. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/utils.js +36 -0
  434. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/utils.js.map +1 -1
  435. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/version.d.ts +1 -1
  436. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/version.js +1 -1
  437. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/version.js.map +1 -1
  438. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/view/Aggregation.d.ts +3 -3
  439. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/view/Aggregation.js +6 -6
  440. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/view/Aggregation.js.map +1 -1
  441. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/view/AttributesProcessor.js +12 -16
  442. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esm/view/AttributesProcessor.js.map +1 -1
  443. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/InstrumentDescriptor.js +1 -1
  444. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/InstrumentDescriptor.js.map +1 -1
  445. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/Instruments.d.ts +3 -3
  446. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/Instruments.js +6 -6
  447. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/Instruments.js.map +1 -1
  448. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/Meter.d.ts +1 -1
  449. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/Meter.js +2 -2
  450. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/Meter.js.map +1 -1
  451. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/ObservableResult.d.ts +3 -3
  452. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/ObservableResult.js +5 -5
  453. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/ObservableResult.js.map +1 -1
  454. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/aggregator/ExponentialHistogram.d.ts +3 -3
  455. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/aggregator/ExponentialHistogram.js +17 -17
  456. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/aggregator/ExponentialHistogram.js.map +1 -1
  457. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/aggregator/Histogram.d.ts +3 -3
  458. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/aggregator/Histogram.js +8 -8
  459. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/aggregator/Histogram.js.map +1 -1
  460. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/aggregator/LastValue.d.ts +1 -1
  461. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/aggregator/LastValue.js +2 -2
  462. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/aggregator/LastValue.js.map +1 -1
  463. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/aggregator/Sum.d.ts +2 -2
  464. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/aggregator/Sum.js +3 -3
  465. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/aggregator/Sum.js.map +1 -1
  466. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/aggregator/exponential-histogram/Buckets.d.ts +1 -1
  467. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/aggregator/exponential-histogram/Buckets.js +2 -2
  468. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/aggregator/exponential-histogram/Buckets.js.map +1 -1
  469. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/export/ConsoleMetricExporter.js +1 -1
  470. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/export/ConsoleMetricExporter.js.map +1 -1
  471. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/export/MetricReader.js +3 -3
  472. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/export/MetricReader.js.map +1 -1
  473. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/export/PeriodicExportingMetricReader.js +14 -21
  474. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/export/PeriodicExportingMetricReader.js.map +1 -1
  475. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/AsyncMetricStorage.d.ts +2 -2
  476. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/AsyncMetricStorage.js +4 -4
  477. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/AsyncMetricStorage.js.map +1 -1
  478. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/DeltaMetricProcessor.d.ts +2 -2
  479. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/DeltaMetricProcessor.js +3 -3
  480. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/DeltaMetricProcessor.js.map +1 -1
  481. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/HashMap.d.ts +2 -2
  482. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/HashMap.js +3 -3
  483. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/HashMap.js.map +1 -1
  484. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/MeterProviderSharedState.d.ts +1 -1
  485. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/MeterProviderSharedState.js +1 -1
  486. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/MeterProviderSharedState.js.map +1 -1
  487. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/MeterSharedState.d.ts +3 -3
  488. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/MeterSharedState.js +11 -12
  489. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/MeterSharedState.js.map +1 -1
  490. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/MetricCollector.d.ts +1 -1
  491. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/MetricCollector.js +3 -3
  492. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/MetricCollector.js.map +1 -1
  493. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/MetricStorage.d.ts +1 -1
  494. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/MetricStorage.js +2 -2
  495. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/MetricStorage.js.map +1 -1
  496. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/MultiWritableMetricStorage.d.ts +1 -1
  497. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/MultiWritableMetricStorage.js +2 -2
  498. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/MultiWritableMetricStorage.js.map +1 -1
  499. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/ObservableRegistry.js +4 -4
  500. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/ObservableRegistry.js.map +1 -1
  501. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/SyncMetricStorage.d.ts +2 -2
  502. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/SyncMetricStorage.js +4 -4
  503. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/SyncMetricStorage.js.map +1 -1
  504. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/TemporalMetricProcessor.d.ts +1 -1
  505. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/TemporalMetricProcessor.js +2 -2
  506. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/state/TemporalMetricProcessor.js.map +1 -1
  507. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/utils.d.ts +19 -0
  508. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/utils.js +36 -0
  509. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/utils.js.map +1 -1
  510. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/version.d.ts +1 -1
  511. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/version.js +1 -1
  512. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/version.js.map +1 -1
  513. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/view/Aggregation.d.ts +3 -3
  514. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/view/Aggregation.js +6 -6
  515. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/view/Aggregation.js.map +1 -1
  516. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/view/AttributesProcessor.js +12 -16
  517. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/esnext/view/AttributesProcessor.js.map +1 -1
  518. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/InstrumentDescriptor.js +1 -1
  519. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/InstrumentDescriptor.js.map +1 -1
  520. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/Instruments.d.ts +3 -3
  521. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/Instruments.js +6 -6
  522. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/Instruments.js.map +1 -1
  523. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/Meter.d.ts +1 -1
  524. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/Meter.js +2 -2
  525. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/Meter.js.map +1 -1
  526. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/ObservableResult.d.ts +3 -3
  527. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/ObservableResult.js +5 -5
  528. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/ObservableResult.js.map +1 -1
  529. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/ExponentialHistogram.d.ts +3 -3
  530. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/ExponentialHistogram.js +17 -17
  531. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/ExponentialHistogram.js.map +1 -1
  532. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/Histogram.d.ts +3 -3
  533. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/Histogram.js +8 -8
  534. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/Histogram.js.map +1 -1
  535. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/LastValue.d.ts +1 -1
  536. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/LastValue.js +2 -2
  537. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/LastValue.js.map +1 -1
  538. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/Sum.d.ts +2 -2
  539. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/Sum.js +3 -3
  540. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/Sum.js.map +1 -1
  541. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/exponential-histogram/Buckets.d.ts +1 -1
  542. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/exponential-histogram/Buckets.js +2 -2
  543. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/aggregator/exponential-histogram/Buckets.js.map +1 -1
  544. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/export/ConsoleMetricExporter.js +1 -1
  545. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/export/ConsoleMetricExporter.js.map +1 -1
  546. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/export/MetricReader.js +2 -2
  547. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/export/MetricReader.js.map +1 -1
  548. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/export/PeriodicExportingMetricReader.js +14 -21
  549. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/export/PeriodicExportingMetricReader.js.map +1 -1
  550. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/AsyncMetricStorage.d.ts +2 -2
  551. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/AsyncMetricStorage.js +4 -4
  552. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/AsyncMetricStorage.js.map +1 -1
  553. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/DeltaMetricProcessor.d.ts +2 -2
  554. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/DeltaMetricProcessor.js +3 -3
  555. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/DeltaMetricProcessor.js.map +1 -1
  556. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/HashMap.d.ts +2 -2
  557. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/HashMap.js +3 -3
  558. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/HashMap.js.map +1 -1
  559. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/MeterProviderSharedState.d.ts +1 -1
  560. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/MeterProviderSharedState.js +1 -1
  561. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/MeterProviderSharedState.js.map +1 -1
  562. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/MeterSharedState.d.ts +3 -3
  563. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/MeterSharedState.js +11 -12
  564. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/MeterSharedState.js.map +1 -1
  565. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/MetricCollector.d.ts +1 -1
  566. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/MetricCollector.js +3 -3
  567. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/MetricCollector.js.map +1 -1
  568. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/MetricStorage.d.ts +1 -1
  569. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/MetricStorage.js +2 -2
  570. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/MetricStorage.js.map +1 -1
  571. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/MultiWritableMetricStorage.d.ts +1 -1
  572. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/MultiWritableMetricStorage.js +2 -2
  573. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/MultiWritableMetricStorage.js.map +1 -1
  574. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/ObservableRegistry.js +3 -3
  575. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/ObservableRegistry.js.map +1 -1
  576. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/SyncMetricStorage.d.ts +2 -2
  577. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/SyncMetricStorage.js +4 -4
  578. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/SyncMetricStorage.js.map +1 -1
  579. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/TemporalMetricProcessor.d.ts +1 -1
  580. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/TemporalMetricProcessor.js +2 -2
  581. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/state/TemporalMetricProcessor.js.map +1 -1
  582. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/utils.d.ts +19 -0
  583. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/utils.js +41 -1
  584. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/utils.js.map +1 -1
  585. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/version.d.ts +1 -1
  586. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/version.js +1 -1
  587. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/version.js.map +1 -1
  588. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/view/Aggregation.d.ts +3 -3
  589. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/view/Aggregation.js +6 -6
  590. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/view/Aggregation.js.map +1 -1
  591. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/view/AttributesProcessor.js +12 -16
  592. package/dist/server/node_modules/@opentelemetry/sdk-metrics/build/src/view/AttributesProcessor.js.map +1 -1
  593. package/dist/server/node_modules/@opentelemetry/sdk-metrics/package.json +6 -6
  594. package/dist/server/node_modules/ansi-styles/index.d.ts +236 -0
  595. package/dist/server/node_modules/ansi-styles/index.js +223 -0
  596. package/dist/server/node_modules/ansi-styles/license +9 -0
  597. package/dist/server/node_modules/ansi-styles/package.json +54 -0
  598. package/dist/server/node_modules/ansi-styles/readme.md +173 -0
  599. package/dist/server/node_modules/pg-connection-string/LICENSE +21 -0
  600. package/dist/server/node_modules/pg-connection-string/README.md +105 -0
  601. package/dist/server/node_modules/pg-connection-string/esm/index.mjs +8 -0
  602. package/dist/server/node_modules/pg-connection-string/index.d.ts +36 -0
  603. package/dist/server/node_modules/pg-connection-string/index.js +231 -0
  604. package/dist/server/node_modules/pg-connection-string/package.json +52 -0
  605. package/dist/server/server.js +1 -1
  606. package/package.json +1 -1
  607. package/dist/client/assets/index-CZPd3hrs.js +0 -311
  608. package/dist/client/assets/index-CdAXbXCD.js +0 -1
  609. package/dist/client/assets/index-DsfxL555.js +0 -3
  610. package/dist/client/assets/index-DzRaXx8g.css +0 -1
  611. package/dist/client/assets/registry-a_Y0eqBG.js +0 -2
  612. package/dist/client/assets/store-registry-ClO-HCd4.js +0 -2
  613. package/dist/client/assets/useInfiniteQuery-Dn69KZzX.js +0 -1
  614. package/dist/client/assets/useSuspenseInfiniteQuery-CFbzjyFd.js +0 -1
  615. package/dist/client/assets/workflow-detail-CgGFXY1-.js +0 -1
  616. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/configuration/convert-legacy-http-options.d.ts +0 -4
  617. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/configuration/convert-legacy-http-options.js +0 -23
  618. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esm/configuration/convert-legacy-http-options.js.map +0 -1
  619. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/configuration/convert-legacy-http-options.d.ts +0 -4
  620. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/configuration/convert-legacy-http-options.js +0 -23
  621. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/esnext/configuration/convert-legacy-http-options.js.map +0 -1
  622. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/configuration/convert-legacy-http-options.d.ts +0 -4
  623. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/configuration/convert-legacy-http-options.js +0 -27
  624. package/dist/server/node_modules/@opentelemetry/otlp-exporter-base/build/src/configuration/convert-legacy-http-options.js.map +0 -1
@@ -17,12 +17,12 @@ import { Accumulation } from '../aggregator/types';
17
17
  * An internal record for shared meter provider states.
18
18
  */
19
19
  export declare class MeterSharedState {
20
+ private _meterProviderSharedState;
21
+ private _instrumentationScope;
20
22
  metricStorageRegistry: MetricStorageRegistry;
21
23
  observableRegistry: ObservableRegistry;
22
24
  meter: Meter;
23
- private _meterProviderSharedState;
24
- private _instrumentationScope;
25
- constructor(meterProviderSharedState: MeterProviderSharedState, instrumentationScope: InstrumentationScope);
25
+ constructor(_meterProviderSharedState: MeterProviderSharedState, _instrumentationScope: InstrumentationScope);
26
26
  registerMetricStorage(descriptor: InstrumentDescriptor): MultiMetricStorage | SyncMetricStorage<Maybe<Accumulation>>;
27
27
  registerAsyncMetricStorage(descriptor: InstrumentDescriptor): AsyncMetricStorage<Maybe<Accumulation>>[];
28
28
  /**
@@ -18,6 +18,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.MeterSharedState = void 0;
19
19
  const InstrumentDescriptor_1 = require("../InstrumentDescriptor");
20
20
  const Meter_1 = require("../Meter");
21
+ const utils_1 = require("../utils");
21
22
  const AsyncMetricStorage_1 = require("./AsyncMetricStorage");
22
23
  const MetricStorageRegistry_1 = require("./MetricStorageRegistry");
23
24
  const MultiWritableMetricStorage_1 = require("./MultiWritableMetricStorage");
@@ -28,15 +29,15 @@ const AttributesProcessor_1 = require("../view/AttributesProcessor");
28
29
  * An internal record for shared meter provider states.
29
30
  */
30
31
  class MeterSharedState {
32
+ _meterProviderSharedState;
33
+ _instrumentationScope;
31
34
  metricStorageRegistry = new MetricStorageRegistry_1.MetricStorageRegistry();
32
35
  observableRegistry = new ObservableRegistry_1.ObservableRegistry();
33
36
  meter;
34
- _meterProviderSharedState;
35
- _instrumentationScope;
36
- constructor(meterProviderSharedState, instrumentationScope) {
37
+ constructor(_meterProviderSharedState, _instrumentationScope) {
38
+ this._meterProviderSharedState = _meterProviderSharedState;
39
+ this._instrumentationScope = _instrumentationScope;
37
40
  this.meter = new Meter_1.Meter(this);
38
- this._meterProviderSharedState = meterProviderSharedState;
39
- this._instrumentationScope = instrumentationScope;
40
41
  }
41
42
  registerMetricStorage(descriptor) {
42
43
  const storages = this._registerMetricStorage(descriptor, SyncMetricStorage_1.SyncMetricStorage);
@@ -66,13 +67,11 @@ class MeterSharedState {
66
67
  if (storages.length === 0) {
67
68
  return null;
68
69
  }
69
- const metricDataList = [];
70
- storages.forEach(metricStorage => {
71
- const metricData = metricStorage.collect(collector, collectionTime);
72
- if (metricData != null) {
73
- metricDataList.push(metricData);
74
- }
75
- });
70
+ const metricDataList = storages
71
+ .map(metricStorage => {
72
+ return metricStorage.collect(collector, collectionTime);
73
+ })
74
+ .filter(utils_1.isNotNullish);
76
75
  // skip this scope if no data was collected (storage created, but no data observed)
77
76
  if (metricDataList.length === 0) {
78
77
  return { errors };
@@ -1 +1 @@
1
- {"version":3,"file":"MeterSharedState.js","sourceRoot":"","sources":["../../../src/state/MeterSharedState.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright The OpenTelemetry Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { HrTime } from '@opentelemetry/api';\nimport { InstrumentationScope } from '@opentelemetry/core';\nimport { MetricCollectOptions } from '../export/MetricProducer';\nimport { MetricData, ScopeMetrics } from '../export/MetricData';\nimport {\n createInstrumentDescriptorWithView,\n InstrumentDescriptor,\n} from '../InstrumentDescriptor';\nimport { Meter } from '../Meter';\nimport { Maybe } from '../utils';\nimport { AsyncMetricStorage } from './AsyncMetricStorage';\nimport { MeterProviderSharedState } from './MeterProviderSharedState';\nimport { MetricCollectorHandle } from './MetricCollector';\nimport { MetricStorageRegistry } from './MetricStorageRegistry';\nimport { MultiMetricStorage } from './MultiWritableMetricStorage';\nimport { ObservableRegistry } from './ObservableRegistry';\nimport { SyncMetricStorage } from './SyncMetricStorage';\nimport { Accumulation, Aggregator } from '../aggregator/types';\nimport {\n createNoopAttributesProcessor,\n IAttributesProcessor,\n} from '../view/AttributesProcessor';\nimport { MetricStorage } from './MetricStorage';\n\n/**\n * An internal record for shared meter provider states.\n */\nexport class MeterSharedState {\n metricStorageRegistry = new MetricStorageRegistry();\n observableRegistry = new ObservableRegistry();\n meter: Meter;\n private _meterProviderSharedState: MeterProviderSharedState;\n private _instrumentationScope: InstrumentationScope;\n\n constructor(\n meterProviderSharedState: MeterProviderSharedState,\n instrumentationScope: InstrumentationScope\n ) {\n this.meter = new Meter(this);\n this._meterProviderSharedState = meterProviderSharedState;\n this._instrumentationScope = instrumentationScope;\n }\n\n registerMetricStorage(descriptor: InstrumentDescriptor) {\n const storages = this._registerMetricStorage(descriptor, SyncMetricStorage);\n\n if (storages.length === 1) {\n return storages[0];\n }\n return new MultiMetricStorage(storages);\n }\n\n registerAsyncMetricStorage(descriptor: InstrumentDescriptor) {\n const storages = this._registerMetricStorage(\n descriptor,\n AsyncMetricStorage\n );\n\n return storages;\n }\n\n /**\n * @param collector opaque handle of {@link MetricCollector} which initiated the collection.\n * @param collectionTime the HrTime at which the collection was initiated.\n * @param options options for collection.\n * @returns the list of metric data collected.\n */\n async collect(\n collector: MetricCollectorHandle,\n collectionTime: HrTime,\n options?: MetricCollectOptions\n ): Promise<ScopeMetricsResult | null> {\n /**\n * 1. Call all observable callbacks first.\n * 2. Collect metric result for the collector.\n */\n const errors = await this.observableRegistry.observe(\n collectionTime,\n options?.timeoutMillis\n );\n const storages = this.metricStorageRegistry.getStorages(collector);\n\n // prevent more allocations if there are no storages.\n if (storages.length === 0) {\n return null;\n }\n\n const metricDataList: MetricData[] = [];\n storages.forEach(metricStorage => {\n const metricData = metricStorage.collect(collector, collectionTime);\n\n if (metricData != null) {\n metricDataList.push(metricData);\n }\n });\n\n // skip this scope if no data was collected (storage created, but no data observed)\n if (metricDataList.length === 0) {\n return { errors };\n }\n\n return {\n scopeMetrics: {\n scope: this._instrumentationScope,\n metrics: metricDataList,\n },\n errors,\n };\n }\n\n private _registerMetricStorage<\n MetricStorageType extends MetricStorageConstructor,\n R extends InstanceType<MetricStorageType>,\n >(\n descriptor: InstrumentDescriptor,\n MetricStorageType: MetricStorageType\n ): R[] {\n const views = this._meterProviderSharedState.viewRegistry.findViews(\n descriptor,\n this._instrumentationScope\n );\n let storages = views.map(view => {\n const viewDescriptor = createInstrumentDescriptorWithView(\n view,\n descriptor\n );\n const compatibleStorage =\n this.metricStorageRegistry.findOrUpdateCompatibleStorage<R>(\n viewDescriptor\n );\n if (compatibleStorage != null) {\n return compatibleStorage;\n }\n const aggregator = view.aggregation.createAggregator(viewDescriptor);\n const viewStorage = new MetricStorageType(\n viewDescriptor,\n aggregator,\n view.attributesProcessor,\n this._meterProviderSharedState.metricCollectors,\n view.aggregationCardinalityLimit\n ) as R;\n this.metricStorageRegistry.register(viewStorage);\n return viewStorage;\n });\n\n // Fallback to the per-collector aggregations if no view is configured for the instrument.\n if (storages.length === 0) {\n const perCollectorAggregations =\n this._meterProviderSharedState.selectAggregations(descriptor.type);\n const collectorStorages = perCollectorAggregations.map(\n ([collector, aggregation]) => {\n const compatibleStorage =\n this.metricStorageRegistry.findOrUpdateCompatibleCollectorStorage<R>(\n collector,\n descriptor\n );\n if (compatibleStorage != null) {\n return compatibleStorage;\n }\n\n const aggregator = aggregation.createAggregator(descriptor);\n const cardinalityLimit = collector.selectCardinalityLimit(\n descriptor.type\n );\n const storage = new MetricStorageType(\n descriptor,\n aggregator,\n createNoopAttributesProcessor(),\n [collector],\n cardinalityLimit\n ) as R;\n this.metricStorageRegistry.registerForCollector(collector, storage);\n return storage;\n }\n );\n storages = storages.concat(collectorStorages);\n }\n\n return storages;\n }\n}\n\ninterface ScopeMetricsResult {\n scopeMetrics?: ScopeMetrics;\n errors: unknown[];\n}\n\ninterface MetricStorageConstructor {\n new (\n instrumentDescriptor: InstrumentDescriptor,\n aggregator: Aggregator<Maybe<Accumulation>>,\n attributesProcessor: IAttributesProcessor,\n collectors: MetricCollectorHandle[],\n aggregationCardinalityLimit?: number\n ): MetricStorage;\n}\n"]}
1
+ {"version":3,"file":"MeterSharedState.js","sourceRoot":"","sources":["../../../src/state/MeterSharedState.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAMH,kEAGiC;AACjC,oCAAiC;AACjC,oCAA+C;AAC/C,6DAA0D;AAG1D,mEAAgE;AAChE,6EAAkE;AAClE,6DAA0D;AAC1D,2DAAwD;AAExD,qEAGqC;AAGrC;;GAEG;AACH,MAAa,gBAAgB;IAMjB;IACA;IANV,qBAAqB,GAAG,IAAI,6CAAqB,EAAE,CAAC;IACpD,kBAAkB,GAAG,IAAI,uCAAkB,EAAE,CAAC;IAC9C,KAAK,CAAQ;IAEb,YACU,yBAAmD,EACnD,qBAA2C;QAD3C,8BAAyB,GAAzB,yBAAyB,CAA0B;QACnD,0BAAqB,GAArB,qBAAqB,CAAsB;QAEnD,IAAI,CAAC,KAAK,GAAG,IAAI,aAAK,CAAC,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED,qBAAqB,CAAC,UAAgC;QACpD,MAAM,QAAQ,GAAG,IAAI,CAAC,sBAAsB,CAAC,UAAU,EAAE,qCAAiB,CAAC,CAAC;QAE5E,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YACzB,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC;SACpB;QACD,OAAO,IAAI,+CAAkB,CAAC,QAAQ,CAAC,CAAC;IAC1C,CAAC;IAED,0BAA0B,CAAC,UAAgC;QACzD,MAAM,QAAQ,GAAG,IAAI,CAAC,sBAAsB,CAC1C,UAAU,EACV,uCAAkB,CACnB,CAAC;QAEF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,OAAO,CACX,SAAgC,EAChC,cAAsB,EACtB,OAA8B;QAE9B;;;WAGG;QACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAClD,cAAc,EACd,OAAO,EAAE,aAAa,CACvB,CAAC;QACF,MAAM,QAAQ,GAAG,IAAI,CAAC,qBAAqB,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QAEnE,qDAAqD;QACrD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YACzB,OAAO,IAAI,CAAC;SACb;QAED,MAAM,cAAc,GAAG,QAAQ;aAC5B,GAAG,CAAC,aAAa,CAAC,EAAE;YACnB,OAAO,aAAa,CAAC,OAAO,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;QAC1D,CAAC,CAAC;aACD,MAAM,CAAC,oBAAY,CAAC,CAAC;QAExB,mFAAmF;QACnF,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE;YAC/B,OAAO,EAAE,MAAM,EAAE,CAAC;SACnB;QAED,OAAO;YACL,YAAY,EAAE;gBACZ,KAAK,EAAE,IAAI,CAAC,qBAAqB;gBACjC,OAAO,EAAE,cAAc;aACxB;YACD,MAAM;SACP,CAAC;IACJ,CAAC;IAEO,sBAAsB,CAI5B,UAAgC,EAChC,iBAAoC;QAEpC,MAAM,KAAK,GAAG,IAAI,CAAC,yBAAyB,CAAC,YAAY,CAAC,SAAS,CACjE,UAAU,EACV,IAAI,CAAC,qBAAqB,CAC3B,CAAC;QACF,IAAI,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YAC9B,MAAM,cAAc,GAAG,IAAA,yDAAkC,EACvD,IAAI,EACJ,UAAU,CACX,CAAC;YACF,MAAM,iBAAiB,GACrB,IAAI,CAAC,qBAAqB,CAAC,6BAA6B,CACtD,cAAc,CACf,CAAC;YACJ,IAAI,iBAAiB,IAAI,IAAI,EAAE;gBAC7B,OAAO,iBAAiB,CAAC;aAC1B;YACD,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,cAAc,CAAC,CAAC;YACrE,MAAM,WAAW,GAAG,IAAI,iBAAiB,CACvC,cAAc,EACd,UAAU,EACV,IAAI,CAAC,mBAAmB,EACxB,IAAI,CAAC,yBAAyB,CAAC,gBAAgB,EAC/C,IAAI,CAAC,2BAA2B,CAC5B,CAAC;YACP,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;YACjD,OAAO,WAAW,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH,0FAA0F;QAC1F,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YACzB,MAAM,wBAAwB,GAC5B,IAAI,CAAC,yBAAyB,CAAC,kBAAkB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACrE,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,GAAG,CACpD,CAAC,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE,EAAE;gBAC3B,MAAM,iBAAiB,GACrB,IAAI,CAAC,qBAAqB,CAAC,sCAAsC,CAC/D,SAAS,EACT,UAAU,CACX,CAAC;gBACJ,IAAI,iBAAiB,IAAI,IAAI,EAAE;oBAC7B,OAAO,iBAAiB,CAAC;iBAC1B;gBAED,MAAM,UAAU,GAAG,WAAW,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;gBAC5D,MAAM,gBAAgB,GAAG,SAAS,CAAC,sBAAsB,CACvD,UAAU,CAAC,IAAI,CAChB,CAAC;gBACF,MAAM,OAAO,GAAG,IAAI,iBAAiB,CACnC,UAAU,EACV,UAAU,EACV,IAAA,mDAA6B,GAAE,EAC/B,CAAC,SAAS,CAAC,EACX,gBAAgB,CACZ,CAAC;gBACP,IAAI,CAAC,qBAAqB,CAAC,oBAAoB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;gBACpE,OAAO,OAAO,CAAC;YACjB,CAAC,CACF,CAAC;YACF,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;SAC/C;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF;AAlJD,4CAkJC","sourcesContent":["/*\n * Copyright The OpenTelemetry Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { HrTime } from '@opentelemetry/api';\nimport { InstrumentationScope } from '@opentelemetry/core';\nimport { MetricCollectOptions } from '../export/MetricProducer';\nimport { ScopeMetrics } from '../export/MetricData';\nimport {\n createInstrumentDescriptorWithView,\n InstrumentDescriptor,\n} from '../InstrumentDescriptor';\nimport { Meter } from '../Meter';\nimport { isNotNullish, Maybe } from '../utils';\nimport { AsyncMetricStorage } from './AsyncMetricStorage';\nimport { MeterProviderSharedState } from './MeterProviderSharedState';\nimport { MetricCollectorHandle } from './MetricCollector';\nimport { MetricStorageRegistry } from './MetricStorageRegistry';\nimport { MultiMetricStorage } from './MultiWritableMetricStorage';\nimport { ObservableRegistry } from './ObservableRegistry';\nimport { SyncMetricStorage } from './SyncMetricStorage';\nimport { Accumulation, Aggregator } from '../aggregator/types';\nimport {\n createNoopAttributesProcessor,\n IAttributesProcessor,\n} from '../view/AttributesProcessor';\nimport { MetricStorage } from './MetricStorage';\n\n/**\n * An internal record for shared meter provider states.\n */\nexport class MeterSharedState {\n metricStorageRegistry = new MetricStorageRegistry();\n observableRegistry = new ObservableRegistry();\n meter: Meter;\n\n constructor(\n private _meterProviderSharedState: MeterProviderSharedState,\n private _instrumentationScope: InstrumentationScope\n ) {\n this.meter = new Meter(this);\n }\n\n registerMetricStorage(descriptor: InstrumentDescriptor) {\n const storages = this._registerMetricStorage(descriptor, SyncMetricStorage);\n\n if (storages.length === 1) {\n return storages[0];\n }\n return new MultiMetricStorage(storages);\n }\n\n registerAsyncMetricStorage(descriptor: InstrumentDescriptor) {\n const storages = this._registerMetricStorage(\n descriptor,\n AsyncMetricStorage\n );\n\n return storages;\n }\n\n /**\n * @param collector opaque handle of {@link MetricCollector} which initiated the collection.\n * @param collectionTime the HrTime at which the collection was initiated.\n * @param options options for collection.\n * @returns the list of metric data collected.\n */\n async collect(\n collector: MetricCollectorHandle,\n collectionTime: HrTime,\n options?: MetricCollectOptions\n ): Promise<ScopeMetricsResult | null> {\n /**\n * 1. Call all observable callbacks first.\n * 2. Collect metric result for the collector.\n */\n const errors = await this.observableRegistry.observe(\n collectionTime,\n options?.timeoutMillis\n );\n const storages = this.metricStorageRegistry.getStorages(collector);\n\n // prevent more allocations if there are no storages.\n if (storages.length === 0) {\n return null;\n }\n\n const metricDataList = storages\n .map(metricStorage => {\n return metricStorage.collect(collector, collectionTime);\n })\n .filter(isNotNullish);\n\n // skip this scope if no data was collected (storage created, but no data observed)\n if (metricDataList.length === 0) {\n return { errors };\n }\n\n return {\n scopeMetrics: {\n scope: this._instrumentationScope,\n metrics: metricDataList,\n },\n errors,\n };\n }\n\n private _registerMetricStorage<\n MetricStorageType extends MetricStorageConstructor,\n R extends InstanceType<MetricStorageType>,\n >(\n descriptor: InstrumentDescriptor,\n MetricStorageType: MetricStorageType\n ): R[] {\n const views = this._meterProviderSharedState.viewRegistry.findViews(\n descriptor,\n this._instrumentationScope\n );\n let storages = views.map(view => {\n const viewDescriptor = createInstrumentDescriptorWithView(\n view,\n descriptor\n );\n const compatibleStorage =\n this.metricStorageRegistry.findOrUpdateCompatibleStorage<R>(\n viewDescriptor\n );\n if (compatibleStorage != null) {\n return compatibleStorage;\n }\n const aggregator = view.aggregation.createAggregator(viewDescriptor);\n const viewStorage = new MetricStorageType(\n viewDescriptor,\n aggregator,\n view.attributesProcessor,\n this._meterProviderSharedState.metricCollectors,\n view.aggregationCardinalityLimit\n ) as R;\n this.metricStorageRegistry.register(viewStorage);\n return viewStorage;\n });\n\n // Fallback to the per-collector aggregations if no view is configured for the instrument.\n if (storages.length === 0) {\n const perCollectorAggregations =\n this._meterProviderSharedState.selectAggregations(descriptor.type);\n const collectorStorages = perCollectorAggregations.map(\n ([collector, aggregation]) => {\n const compatibleStorage =\n this.metricStorageRegistry.findOrUpdateCompatibleCollectorStorage<R>(\n collector,\n descriptor\n );\n if (compatibleStorage != null) {\n return compatibleStorage;\n }\n\n const aggregator = aggregation.createAggregator(descriptor);\n const cardinalityLimit = collector.selectCardinalityLimit(\n descriptor.type\n );\n const storage = new MetricStorageType(\n descriptor,\n aggregator,\n createNoopAttributesProcessor(),\n [collector],\n cardinalityLimit\n ) as R;\n this.metricStorageRegistry.registerForCollector(collector, storage);\n return storage;\n }\n );\n storages = storages.concat(collectorStorages);\n }\n\n return storages;\n }\n}\n\ninterface ScopeMetricsResult {\n scopeMetrics?: ScopeMetrics;\n errors: unknown[];\n}\n\ninterface MetricStorageConstructor {\n new (\n instrumentDescriptor: InstrumentDescriptor,\n aggregator: Aggregator<Maybe<Accumulation>>,\n attributesProcessor: IAttributesProcessor,\n collectors: MetricCollectorHandle[],\n aggregationCardinalityLimit?: number\n ): MetricStorage;\n}\n"]}
@@ -12,7 +12,7 @@ import { MeterProviderSharedState } from './MeterProviderSharedState';
12
12
  export declare class MetricCollector implements MetricProducer {
13
13
  private _sharedState;
14
14
  private _metricReader;
15
- constructor(sharedState: MeterProviderSharedState, metricReader: IMetricReader);
15
+ constructor(_sharedState: MeterProviderSharedState, _metricReader: IMetricReader);
16
16
  collect(options?: MetricCollectOptions): Promise<CollectionResult>;
17
17
  /**
18
18
  * Delegates for MetricReader.forceFlush.
@@ -25,9 +25,9 @@ const core_1 = require("@opentelemetry/core");
25
25
  class MetricCollector {
26
26
  _sharedState;
27
27
  _metricReader;
28
- constructor(sharedState, metricReader) {
29
- this._sharedState = sharedState;
30
- this._metricReader = metricReader;
28
+ constructor(_sharedState, _metricReader) {
29
+ this._sharedState = _sharedState;
30
+ this._metricReader = _metricReader;
31
31
  }
32
32
  async collect(options) {
33
33
  const collectionTime = (0, core_1.millisToHrTime)(Date.now());
@@ -1 +1 @@
1
- {"version":3,"file":"MetricCollector.js","sourceRoot":"","sources":["../../../src/state/MetricCollector.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAEH,8CAAqD;AAYrD;;;;GAIG;AACH,MAAa,eAAe;IAClB,YAAY,CAA2B;IACvC,aAAa,CAAgB;IAErC,YACE,WAAqC,EACrC,YAA2B;QAE3B,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAA8B;QAC1C,MAAM,cAAc,GAAG,IAAA,qBAAc,EAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QAClD,MAAM,YAAY,GAAmB,EAAE,CAAC;QACxC,MAAM,MAAM,GAAc,EAAE,CAAC;QAE7B,MAAM,uBAAuB,GAAG,KAAK,CAAC,IAAI,CACxC,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAC7C,CAAC,GAAG,CAAC,KAAK,EAAC,gBAAgB,EAAC,EAAE;YAC7B,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAC5C,IAAI,EACJ,cAAc,EACd,OAAO,CACR,CAAC;YAEF,sCAAsC;YACtC,IAAI,OAAO,EAAE,YAAY,IAAI,IAAI,EAAE;gBACjC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;aACzC;YAED,+BAA+B;YAC/B,IAAI,OAAO,EAAE,MAAM,IAAI,IAAI,EAAE;gBAC3B,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;aAChC;QACH,CAAC,CAAC,CAAC;QACH,MAAM,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QAE3C,OAAO;YACL,eAAe,EAAE;gBACf,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC,QAAQ;gBACpC,YAAY,EAAE,YAAY;aAC3B;YACD,MAAM,EAAE,MAAM;SACf,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,OAA2B;QAC1C,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAC/C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,OAAyB;QACtC,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED,4BAA4B,CAAC,cAA8B;QACzD,OAAO,IAAI,CAAC,aAAa,CAAC,4BAA4B,CAAC,cAAc,CAAC,CAAC;IACzE,CAAC;IAED,iBAAiB,CAAC,cAA8B;QAC9C,OAAO,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;IAC9D,CAAC;IAED;;;OAGG;IACH,sBAAsB,CAAC,cAA8B;QACnD,OAAO,IAAI,CAAC,aAAa,CAAC,sBAAsB,EAAE,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC;IAC7E,CAAC;CACF;AA5ED,0CA4EC","sourcesContent":["/*\n * Copyright The OpenTelemetry Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { millisToHrTime } from '@opentelemetry/core';\nimport { AggregationTemporalitySelector } from '../export/AggregationSelector';\nimport {\n CollectionResult,\n InstrumentType,\n ScopeMetrics,\n} from '../export/MetricData';\nimport { MetricCollectOptions, MetricProducer } from '../export/MetricProducer';\nimport { IMetricReader } from '../export/MetricReader';\nimport { ForceFlushOptions, ShutdownOptions } from '../types';\nimport { MeterProviderSharedState } from './MeterProviderSharedState';\n\n/**\n * An internal opaque interface that the MetricReader receives as\n * MetricProducer. It acts as the storage key to the internal metric stream\n * state for each MetricReader.\n */\nexport class MetricCollector implements MetricProducer {\n private _sharedState: MeterProviderSharedState;\n private _metricReader: IMetricReader;\n\n constructor(\n sharedState: MeterProviderSharedState,\n metricReader: IMetricReader\n ) {\n this._sharedState = sharedState;\n this._metricReader = metricReader;\n }\n\n async collect(options?: MetricCollectOptions): Promise<CollectionResult> {\n const collectionTime = millisToHrTime(Date.now());\n const scopeMetrics: ScopeMetrics[] = [];\n const errors: unknown[] = [];\n\n const meterCollectionPromises = Array.from(\n this._sharedState.meterSharedStates.values()\n ).map(async meterSharedState => {\n const current = await meterSharedState.collect(\n this,\n collectionTime,\n options\n );\n\n // only add scope metrics if available\n if (current?.scopeMetrics != null) {\n scopeMetrics.push(current.scopeMetrics);\n }\n\n // only add errors if available\n if (current?.errors != null) {\n errors.push(...current.errors);\n }\n });\n await Promise.all(meterCollectionPromises);\n\n return {\n resourceMetrics: {\n resource: this._sharedState.resource,\n scopeMetrics: scopeMetrics,\n },\n errors: errors,\n };\n }\n\n /**\n * Delegates for MetricReader.forceFlush.\n */\n async forceFlush(options?: ForceFlushOptions): Promise<void> {\n await this._metricReader.forceFlush(options);\n }\n\n /**\n * Delegates for MetricReader.shutdown.\n */\n async shutdown(options?: ShutdownOptions): Promise<void> {\n await this._metricReader.shutdown(options);\n }\n\n selectAggregationTemporality(instrumentType: InstrumentType) {\n return this._metricReader.selectAggregationTemporality(instrumentType);\n }\n\n selectAggregation(instrumentType: InstrumentType) {\n return this._metricReader.selectAggregation(instrumentType);\n }\n\n /**\n * Select the cardinality limit for the given {@link InstrumentType} for this\n * collector.\n */\n selectCardinalityLimit(instrumentType: InstrumentType): number {\n return this._metricReader.selectCardinalityLimit?.(instrumentType) ?? 2000;\n }\n}\n\n/**\n * An internal interface for MetricCollector. Exposes the necessary\n * information for metric collection.\n */\nexport interface MetricCollectorHandle {\n selectAggregationTemporality: AggregationTemporalitySelector;\n selectCardinalityLimit(instrumentType: InstrumentType): number;\n}\n"]}
1
+ {"version":3,"file":"MetricCollector.js","sourceRoot":"","sources":["../../../src/state/MetricCollector.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAEH,8CAAqD;AAYrD;;;;GAIG;AACH,MAAa,eAAe;IAEhB;IACA;IAFV,YACU,YAAsC,EACtC,aAA4B;QAD5B,iBAAY,GAAZ,YAAY,CAA0B;QACtC,kBAAa,GAAb,aAAa,CAAe;IACnC,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,OAA8B;QAC1C,MAAM,cAAc,GAAG,IAAA,qBAAc,EAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QAClD,MAAM,YAAY,GAAmB,EAAE,CAAC;QACxC,MAAM,MAAM,GAAc,EAAE,CAAC;QAE7B,MAAM,uBAAuB,GAAG,KAAK,CAAC,IAAI,CACxC,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAC7C,CAAC,GAAG,CAAC,KAAK,EAAC,gBAAgB,EAAC,EAAE;YAC7B,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAC5C,IAAI,EACJ,cAAc,EACd,OAAO,CACR,CAAC;YAEF,sCAAsC;YACtC,IAAI,OAAO,EAAE,YAAY,IAAI,IAAI,EAAE;gBACjC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;aACzC;YAED,+BAA+B;YAC/B,IAAI,OAAO,EAAE,MAAM,IAAI,IAAI,EAAE;gBAC3B,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;aAChC;QACH,CAAC,CAAC,CAAC;QACH,MAAM,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QAE3C,OAAO;YACL,eAAe,EAAE;gBACf,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC,QAAQ;gBACpC,YAAY,EAAE,YAAY;aAC3B;YACD,MAAM,EAAE,MAAM;SACf,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,UAAU,CAAC,OAA2B;QAC1C,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IAC/C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,OAAyB;QACtC,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC7C,CAAC;IAED,4BAA4B,CAAC,cAA8B;QACzD,OAAO,IAAI,CAAC,aAAa,CAAC,4BAA4B,CAAC,cAAc,CAAC,CAAC;IACzE,CAAC;IAED,iBAAiB,CAAC,cAA8B;QAC9C,OAAO,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;IAC9D,CAAC;IAED;;;OAGG;IACH,sBAAsB,CAAC,cAA8B;QACnD,OAAO,IAAI,CAAC,aAAa,CAAC,sBAAsB,EAAE,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC;IAC7E,CAAC;CACF;AAtED,0CAsEC","sourcesContent":["/*\n * Copyright The OpenTelemetry Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { millisToHrTime } from '@opentelemetry/core';\nimport { AggregationTemporalitySelector } from '../export/AggregationSelector';\nimport {\n CollectionResult,\n InstrumentType,\n ScopeMetrics,\n} from '../export/MetricData';\nimport { MetricCollectOptions, MetricProducer } from '../export/MetricProducer';\nimport { IMetricReader } from '../export/MetricReader';\nimport { ForceFlushOptions, ShutdownOptions } from '../types';\nimport { MeterProviderSharedState } from './MeterProviderSharedState';\n\n/**\n * An internal opaque interface that the MetricReader receives as\n * MetricProducer. It acts as the storage key to the internal metric stream\n * state for each MetricReader.\n */\nexport class MetricCollector implements MetricProducer {\n constructor(\n private _sharedState: MeterProviderSharedState,\n private _metricReader: IMetricReader\n ) {}\n\n async collect(options?: MetricCollectOptions): Promise<CollectionResult> {\n const collectionTime = millisToHrTime(Date.now());\n const scopeMetrics: ScopeMetrics[] = [];\n const errors: unknown[] = [];\n\n const meterCollectionPromises = Array.from(\n this._sharedState.meterSharedStates.values()\n ).map(async meterSharedState => {\n const current = await meterSharedState.collect(\n this,\n collectionTime,\n options\n );\n\n // only add scope metrics if available\n if (current?.scopeMetrics != null) {\n scopeMetrics.push(current.scopeMetrics);\n }\n\n // only add errors if available\n if (current?.errors != null) {\n errors.push(...current.errors);\n }\n });\n await Promise.all(meterCollectionPromises);\n\n return {\n resourceMetrics: {\n resource: this._sharedState.resource,\n scopeMetrics: scopeMetrics,\n },\n errors: errors,\n };\n }\n\n /**\n * Delegates for MetricReader.forceFlush.\n */\n async forceFlush(options?: ForceFlushOptions): Promise<void> {\n await this._metricReader.forceFlush(options);\n }\n\n /**\n * Delegates for MetricReader.shutdown.\n */\n async shutdown(options?: ShutdownOptions): Promise<void> {\n await this._metricReader.shutdown(options);\n }\n\n selectAggregationTemporality(instrumentType: InstrumentType) {\n return this._metricReader.selectAggregationTemporality(instrumentType);\n }\n\n selectAggregation(instrumentType: InstrumentType) {\n return this._metricReader.selectAggregation(instrumentType);\n }\n\n /**\n * Select the cardinality limit for the given {@link InstrumentType} for this\n * collector.\n */\n selectCardinalityLimit(instrumentType: InstrumentType): number {\n return this._metricReader.selectCardinalityLimit?.(instrumentType) ?? 2000;\n }\n}\n\n/**\n * An internal interface for MetricCollector. Exposes the necessary\n * information for metric collection.\n */\nexport interface MetricCollectorHandle {\n selectAggregationTemporality: AggregationTemporalitySelector;\n selectCardinalityLimit(instrumentType: InstrumentType): number;\n}\n"]}
@@ -10,7 +10,7 @@ import { InstrumentDescriptor } from '../InstrumentDescriptor';
10
10
  */
11
11
  export declare abstract class MetricStorage {
12
12
  protected _instrumentDescriptor: InstrumentDescriptor;
13
- constructor(instrumentDescriptor: InstrumentDescriptor);
13
+ constructor(_instrumentDescriptor: InstrumentDescriptor);
14
14
  /**
15
15
  * Collects the metrics from this storage.
16
16
  *
@@ -24,8 +24,8 @@ const InstrumentDescriptor_1 = require("../InstrumentDescriptor");
24
24
  */
25
25
  class MetricStorage {
26
26
  _instrumentDescriptor;
27
- constructor(instrumentDescriptor) {
28
- this._instrumentDescriptor = instrumentDescriptor;
27
+ constructor(_instrumentDescriptor) {
28
+ this._instrumentDescriptor = _instrumentDescriptor;
29
29
  }
30
30
  getInstrumentDescriptor() {
31
31
  return this._instrumentDescriptor;
@@ -1 +1 @@
1
- {"version":3,"file":"MetricStorage.js","sourceRoot":"","sources":["../../../src/state/MetricStorage.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAMH,kEAGiC;AAEjC;;;;GAIG;AACH,MAAsB,aAAa;IACvB,qBAAqB,CAAuB;IACtD,YAAY,oBAA0C;QACpD,IAAI,CAAC,qBAAqB,GAAG,oBAAoB,CAAC;IACpD,CAAC;IAaD,uBAAuB;QACrB,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACpC,CAAC;IAED,iBAAiB,CAAC,WAAmB;QACnC,IAAI,CAAC,qBAAqB,GAAG,IAAA,iDAA0B,EACrD,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAC/B,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAC/B;YACE,WAAW,EAAE,WAAW;YACxB,SAAS,EAAE,IAAI,CAAC,qBAAqB,CAAC,SAAS;YAC/C,IAAI,EAAE,IAAI,CAAC,qBAAqB,CAAC,IAAI;YACrC,MAAM,EAAE,IAAI,CAAC,qBAAqB,CAAC,MAAM;SAC1C,CACF,CAAC;IACJ,CAAC;CACF;AAjCD,sCAiCC","sourcesContent":["/*\n * Copyright The OpenTelemetry Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { HrTime } from '@opentelemetry/api';\nimport { MetricData } from '../export/MetricData';\nimport { Maybe } from '../utils';\nimport { MetricCollectorHandle } from './MetricCollector';\nimport {\n createInstrumentDescriptor,\n InstrumentDescriptor,\n} from '../InstrumentDescriptor';\n\n/**\n * Internal interface.\n *\n * Represents a storage from which we can collect metrics.\n */\nexport abstract class MetricStorage {\n protected _instrumentDescriptor: InstrumentDescriptor;\n constructor(instrumentDescriptor: InstrumentDescriptor) {\n this._instrumentDescriptor = instrumentDescriptor;\n }\n\n /**\n * Collects the metrics from this storage.\n *\n * Note: This is a stateful operation and may reset any interval-related\n * state for the MetricCollector.\n */\n abstract collect(\n collector: MetricCollectorHandle,\n collectionTime: HrTime\n ): Maybe<MetricData>;\n\n getInstrumentDescriptor(): Readonly<InstrumentDescriptor> {\n return this._instrumentDescriptor;\n }\n\n updateDescription(description: string): void {\n this._instrumentDescriptor = createInstrumentDescriptor(\n this._instrumentDescriptor.name,\n this._instrumentDescriptor.type,\n {\n description: description,\n valueType: this._instrumentDescriptor.valueType,\n unit: this._instrumentDescriptor.unit,\n advice: this._instrumentDescriptor.advice,\n }\n );\n }\n}\n"]}
1
+ {"version":3,"file":"MetricStorage.js","sourceRoot":"","sources":["../../../src/state/MetricStorage.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAMH,kEAGiC;AAEjC;;;;GAIG;AACH,MAAsB,aAAa;IACX;IAAtB,YAAsB,qBAA2C;QAA3C,0BAAqB,GAArB,qBAAqB,CAAsB;IAAG,CAAC;IAarE,uBAAuB;QACrB,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACpC,CAAC;IAED,iBAAiB,CAAC,WAAmB;QACnC,IAAI,CAAC,qBAAqB,GAAG,IAAA,iDAA0B,EACrD,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAC/B,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAC/B;YACE,WAAW,EAAE,WAAW;YACxB,SAAS,EAAE,IAAI,CAAC,qBAAqB,CAAC,SAAS;YAC/C,IAAI,EAAE,IAAI,CAAC,qBAAqB,CAAC,IAAI;YACrC,MAAM,EAAE,IAAI,CAAC,qBAAqB,CAAC,MAAM;SAC1C,CACF,CAAC;IACJ,CAAC;CACF;AA9BD,sCA8BC","sourcesContent":["/*\n * Copyright The OpenTelemetry Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { HrTime } from '@opentelemetry/api';\nimport { MetricData } from '../export/MetricData';\nimport { Maybe } from '../utils';\nimport { MetricCollectorHandle } from './MetricCollector';\nimport {\n createInstrumentDescriptor,\n InstrumentDescriptor,\n} from '../InstrumentDescriptor';\n\n/**\n * Internal interface.\n *\n * Represents a storage from which we can collect metrics.\n */\nexport abstract class MetricStorage {\n constructor(protected _instrumentDescriptor: InstrumentDescriptor) {}\n\n /**\n * Collects the metrics from this storage.\n *\n * Note: This is a stateful operation and may reset any interval-related\n * state for the MetricCollector.\n */\n abstract collect(\n collector: MetricCollectorHandle,\n collectionTime: HrTime\n ): Maybe<MetricData>;\n\n getInstrumentDescriptor(): Readonly<InstrumentDescriptor> {\n return this._instrumentDescriptor;\n }\n\n updateDescription(description: string): void {\n this._instrumentDescriptor = createInstrumentDescriptor(\n this._instrumentDescriptor.name,\n this._instrumentDescriptor.type,\n {\n description: description,\n valueType: this._instrumentDescriptor.valueType,\n unit: this._instrumentDescriptor.unit,\n advice: this._instrumentDescriptor.advice,\n }\n );\n }\n}\n"]}
@@ -5,7 +5,7 @@ import { WritableMetricStorage } from './WritableMetricStorage';
5
5
  */
6
6
  export declare class MultiMetricStorage implements WritableMetricStorage {
7
7
  private readonly _backingStorages;
8
- constructor(backingStorages: WritableMetricStorage[]);
8
+ constructor(_backingStorages: WritableMetricStorage[]);
9
9
  record(value: number, attributes: Attributes, context: Context, recordTime: HrTime): void;
10
10
  }
11
11
  //# sourceMappingURL=MultiWritableMetricStorage.d.ts.map
@@ -21,8 +21,8 @@ exports.MultiMetricStorage = void 0;
21
21
  */
22
22
  class MultiMetricStorage {
23
23
  _backingStorages;
24
- constructor(backingStorages) {
25
- this._backingStorages = backingStorages;
24
+ constructor(_backingStorages) {
25
+ this._backingStorages = _backingStorages;
26
26
  }
27
27
  record(value, attributes, context, recordTime) {
28
28
  this._backingStorages.forEach(it => {
@@ -1 +1 @@
1
- {"version":3,"file":"MultiWritableMetricStorage.js","sourceRoot":"","sources":["../../../src/state/MultiWritableMetricStorage.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAKH;;GAEG;AACH,MAAa,kBAAkB;IACZ,gBAAgB,CAA0B;IAC3D,YAAY,eAAwC;QAClD,IAAI,CAAC,gBAAgB,GAAG,eAAe,CAAC;IAC1C,CAAC;IAED,MAAM,CACJ,KAAa,EACb,UAAsB,EACtB,OAAgB,EAChB,UAAkB;QAElB,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;YACjC,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAhBD,gDAgBC","sourcesContent":["/*\n * Copyright The OpenTelemetry Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { Context, HrTime, Attributes } from '@opentelemetry/api';\nimport { WritableMetricStorage } from './WritableMetricStorage';\n\n/**\n * Internal interface.\n */\nexport class MultiMetricStorage implements WritableMetricStorage {\n private readonly _backingStorages: WritableMetricStorage[];\n constructor(backingStorages: WritableMetricStorage[]) {\n this._backingStorages = backingStorages;\n }\n\n record(\n value: number,\n attributes: Attributes,\n context: Context,\n recordTime: HrTime\n ) {\n this._backingStorages.forEach(it => {\n it.record(value, attributes, context, recordTime);\n });\n }\n}\n"]}
1
+ {"version":3,"file":"MultiWritableMetricStorage.js","sourceRoot":"","sources":["../../../src/state/MultiWritableMetricStorage.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAKH;;GAEG;AACH,MAAa,kBAAkB;IACA;IAA7B,YAA6B,gBAAyC;QAAzC,qBAAgB,GAAhB,gBAAgB,CAAyB;IAAG,CAAC;IAE1E,MAAM,CACJ,KAAa,EACb,UAAsB,EACtB,OAAgB,EAChB,UAAkB;QAElB,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;YACjC,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAbD,gDAaC","sourcesContent":["/*\n * Copyright The OpenTelemetry Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { Context, HrTime, Attributes } from '@opentelemetry/api';\nimport { WritableMetricStorage } from './WritableMetricStorage';\n\n/**\n * Internal interface.\n */\nexport class MultiMetricStorage implements WritableMetricStorage {\n constructor(private readonly _backingStorages: WritableMetricStorage[]) {}\n\n record(\n value: number,\n attributes: Attributes,\n context: Context,\n recordTime: HrTime\n ) {\n this._backingStorages.forEach(it => {\n it.record(value, attributes, context, recordTime);\n });\n }\n}\n"]}
@@ -71,13 +71,13 @@ class ObservableRegistry {
71
71
  async observe(collectionTime, timeoutMillis) {
72
72
  const callbackFutures = this._observeCallbacks(collectionTime, timeoutMillis);
73
73
  const batchCallbackFutures = this._observeBatchCallbacks(collectionTime, timeoutMillis);
74
- const results = await Promise.allSettled([
74
+ const results = await (0, utils_1.PromiseAllSettled)([
75
75
  ...callbackFutures,
76
76
  ...batchCallbackFutures,
77
77
  ]);
78
78
  const rejections = results
79
- .filter(result => result.status === 'rejected')
80
- .map(result => result.reason);
79
+ .filter(utils_1.isPromiseAllSettledRejectionResult)
80
+ .map(it => it.reason);
81
81
  return rejections;
82
82
  }
83
83
  _observeCallbacks(observationTime, timeoutMillis) {
@@ -1 +1 @@
1
- {"version":3,"file":"ObservableRegistry.js","sourceRoot":"","sources":["../../../src/state/ObservableRegistry.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright The OpenTelemetry Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {\n diag,\n HrTime,\n BatchObservableCallback,\n Observable,\n ObservableCallback,\n} from '@opentelemetry/api';\nimport { isObservableInstrument, ObservableInstrument } from '../Instruments';\nimport {\n BatchObservableResultImpl,\n ObservableResultImpl,\n} from '../ObservableResult';\nimport { callWithTimeout, setEquals } from '../utils';\n\n/**\n * Records for single instrument observable callback.\n */\ninterface ObservableCallbackRecord {\n callback: ObservableCallback;\n instrument: ObservableInstrument;\n}\n\n/**\n * Records for multiple instruments observable callback.\n */\ninterface BatchObservableCallbackRecord {\n callback: BatchObservableCallback;\n instruments: Set<ObservableInstrument>;\n}\n\n/**\n * An internal interface for managing ObservableCallbacks.\n *\n * Every registered callback associated with a set of instruments are be evaluated\n * exactly once during collection prior to reading data for that instrument.\n */\nexport class ObservableRegistry {\n private _callbacks: ObservableCallbackRecord[] = [];\n private _batchCallbacks: BatchObservableCallbackRecord[] = [];\n\n addCallback(callback: ObservableCallback, instrument: ObservableInstrument) {\n const idx = this._findCallback(callback, instrument);\n if (idx >= 0) {\n return;\n }\n this._callbacks.push({ callback, instrument });\n }\n\n removeCallback(\n callback: ObservableCallback,\n instrument: ObservableInstrument\n ) {\n const idx = this._findCallback(callback, instrument);\n if (idx < 0) {\n return;\n }\n this._callbacks.splice(idx, 1);\n }\n\n addBatchCallback(\n callback: BatchObservableCallback,\n instruments: Observable[]\n ) {\n // Create a set of unique instruments.\n const observableInstruments = new Set(\n instruments.filter(isObservableInstrument)\n );\n if (observableInstruments.size === 0) {\n diag.error(\n 'BatchObservableCallback is not associated with valid instruments',\n instruments\n );\n return;\n }\n const idx = this._findBatchCallback(callback, observableInstruments);\n if (idx >= 0) {\n return;\n }\n this._batchCallbacks.push({ callback, instruments: observableInstruments });\n }\n\n removeBatchCallback(\n callback: BatchObservableCallback,\n instruments: Observable[]\n ) {\n // Create a set of unique instruments.\n const observableInstruments = new Set(\n instruments.filter(isObservableInstrument)\n );\n const idx = this._findBatchCallback(callback, observableInstruments);\n if (idx < 0) {\n return;\n }\n this._batchCallbacks.splice(idx, 1);\n }\n\n /**\n * @returns a promise of rejected reasons for invoking callbacks.\n */\n async observe(\n collectionTime: HrTime,\n timeoutMillis?: number\n ): Promise<unknown[]> {\n const callbackFutures = this._observeCallbacks(\n collectionTime,\n timeoutMillis\n );\n const batchCallbackFutures = this._observeBatchCallbacks(\n collectionTime,\n timeoutMillis\n );\n\n const results = await Promise.allSettled([\n ...callbackFutures,\n ...batchCallbackFutures,\n ]);\n\n const rejections = results\n .filter(result => result.status === 'rejected')\n .map(result => (result as PromiseRejectedResult).reason);\n return rejections;\n }\n\n private _observeCallbacks(observationTime: HrTime, timeoutMillis?: number) {\n return this._callbacks.map(async ({ callback, instrument }) => {\n const observableResult = new ObservableResultImpl(\n instrument._descriptor.name,\n instrument._descriptor.valueType\n );\n let callPromise: Promise<void> = Promise.resolve(\n callback(observableResult)\n );\n if (timeoutMillis != null) {\n callPromise = callWithTimeout(callPromise, timeoutMillis);\n }\n await callPromise;\n instrument._metricStorages.forEach(metricStorage => {\n metricStorage.record(observableResult._buffer, observationTime);\n });\n });\n }\n\n private _observeBatchCallbacks(\n observationTime: HrTime,\n timeoutMillis?: number\n ) {\n return this._batchCallbacks.map(async ({ callback, instruments }) => {\n const observableResult = new BatchObservableResultImpl();\n let callPromise: Promise<void> = Promise.resolve(\n callback(observableResult)\n );\n if (timeoutMillis != null) {\n callPromise = callWithTimeout(callPromise, timeoutMillis);\n }\n await callPromise;\n instruments.forEach(instrument => {\n const buffer = observableResult._buffer.get(instrument);\n if (buffer == null) {\n return;\n }\n instrument._metricStorages.forEach(metricStorage => {\n metricStorage.record(buffer, observationTime);\n });\n });\n });\n }\n\n private _findCallback(\n callback: ObservableCallback,\n instrument: ObservableInstrument\n ) {\n return this._callbacks.findIndex(record => {\n return record.callback === callback && record.instrument === instrument;\n });\n }\n\n private _findBatchCallback(\n callback: BatchObservableCallback,\n instruments: Set<ObservableInstrument>\n ) {\n return this._batchCallbacks.findIndex(record => {\n return (\n record.callback === callback &&\n setEquals(record.instruments, instruments)\n );\n });\n }\n}\n"]}
1
+ {"version":3,"file":"ObservableRegistry.js","sourceRoot":"","sources":["../../../src/state/ObservableRegistry.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright The OpenTelemetry Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {\n diag,\n HrTime,\n BatchObservableCallback,\n Observable,\n ObservableCallback,\n} from '@opentelemetry/api';\nimport { isObservableInstrument, ObservableInstrument } from '../Instruments';\nimport {\n BatchObservableResultImpl,\n ObservableResultImpl,\n} from '../ObservableResult';\nimport {\n callWithTimeout,\n PromiseAllSettled,\n isPromiseAllSettledRejectionResult,\n setEquals,\n} from '../utils';\n\n/**\n * Records for single instrument observable callback.\n */\ninterface ObservableCallbackRecord {\n callback: ObservableCallback;\n instrument: ObservableInstrument;\n}\n\n/**\n * Records for multiple instruments observable callback.\n */\ninterface BatchObservableCallbackRecord {\n callback: BatchObservableCallback;\n instruments: Set<ObservableInstrument>;\n}\n\n/**\n * An internal interface for managing ObservableCallbacks.\n *\n * Every registered callback associated with a set of instruments are be evaluated\n * exactly once during collection prior to reading data for that instrument.\n */\nexport class ObservableRegistry {\n private _callbacks: ObservableCallbackRecord[] = [];\n private _batchCallbacks: BatchObservableCallbackRecord[] = [];\n\n addCallback(callback: ObservableCallback, instrument: ObservableInstrument) {\n const idx = this._findCallback(callback, instrument);\n if (idx >= 0) {\n return;\n }\n this._callbacks.push({ callback, instrument });\n }\n\n removeCallback(\n callback: ObservableCallback,\n instrument: ObservableInstrument\n ) {\n const idx = this._findCallback(callback, instrument);\n if (idx < 0) {\n return;\n }\n this._callbacks.splice(idx, 1);\n }\n\n addBatchCallback(\n callback: BatchObservableCallback,\n instruments: Observable[]\n ) {\n // Create a set of unique instruments.\n const observableInstruments = new Set(\n instruments.filter(isObservableInstrument)\n );\n if (observableInstruments.size === 0) {\n diag.error(\n 'BatchObservableCallback is not associated with valid instruments',\n instruments\n );\n return;\n }\n const idx = this._findBatchCallback(callback, observableInstruments);\n if (idx >= 0) {\n return;\n }\n this._batchCallbacks.push({ callback, instruments: observableInstruments });\n }\n\n removeBatchCallback(\n callback: BatchObservableCallback,\n instruments: Observable[]\n ) {\n // Create a set of unique instruments.\n const observableInstruments = new Set(\n instruments.filter(isObservableInstrument)\n );\n const idx = this._findBatchCallback(callback, observableInstruments);\n if (idx < 0) {\n return;\n }\n this._batchCallbacks.splice(idx, 1);\n }\n\n /**\n * @returns a promise of rejected reasons for invoking callbacks.\n */\n async observe(\n collectionTime: HrTime,\n timeoutMillis?: number\n ): Promise<unknown[]> {\n const callbackFutures = this._observeCallbacks(\n collectionTime,\n timeoutMillis\n );\n const batchCallbackFutures = this._observeBatchCallbacks(\n collectionTime,\n timeoutMillis\n );\n\n const results = await PromiseAllSettled([\n ...callbackFutures,\n ...batchCallbackFutures,\n ]);\n\n const rejections = results\n .filter(isPromiseAllSettledRejectionResult)\n .map(it => it.reason);\n return rejections;\n }\n\n private _observeCallbacks(observationTime: HrTime, timeoutMillis?: number) {\n return this._callbacks.map(async ({ callback, instrument }) => {\n const observableResult = new ObservableResultImpl(\n instrument._descriptor.name,\n instrument._descriptor.valueType\n );\n let callPromise: Promise<void> = Promise.resolve(\n callback(observableResult)\n );\n if (timeoutMillis != null) {\n callPromise = callWithTimeout(callPromise, timeoutMillis);\n }\n await callPromise;\n instrument._metricStorages.forEach(metricStorage => {\n metricStorage.record(observableResult._buffer, observationTime);\n });\n });\n }\n\n private _observeBatchCallbacks(\n observationTime: HrTime,\n timeoutMillis?: number\n ) {\n return this._batchCallbacks.map(async ({ callback, instruments }) => {\n const observableResult = new BatchObservableResultImpl();\n let callPromise: Promise<void> = Promise.resolve(\n callback(observableResult)\n );\n if (timeoutMillis != null) {\n callPromise = callWithTimeout(callPromise, timeoutMillis);\n }\n await callPromise;\n instruments.forEach(instrument => {\n const buffer = observableResult._buffer.get(instrument);\n if (buffer == null) {\n return;\n }\n instrument._metricStorages.forEach(metricStorage => {\n metricStorage.record(buffer, observationTime);\n });\n });\n });\n }\n\n private _findCallback(\n callback: ObservableCallback,\n instrument: ObservableInstrument\n ) {\n return this._callbacks.findIndex(record => {\n return record.callback === callback && record.instrument === instrument;\n });\n }\n\n private _findBatchCallback(\n callback: BatchObservableCallback,\n instruments: Set<ObservableInstrument>\n ) {\n return this._batchCallbacks.findIndex(record => {\n return (\n record.callback === callback &&\n setEquals(record.instruments, instruments)\n );\n });\n }\n}\n"]}
@@ -13,11 +13,11 @@ import { MetricCollectorHandle } from './MetricCollector';
13
13
  * Stores and aggregates {@link MetricData} for synchronous instruments.
14
14
  */
15
15
  export declare class SyncMetricStorage<T extends Maybe<Accumulation>> extends MetricStorage implements WritableMetricStorage {
16
+ private _attributesProcessor;
16
17
  private _aggregationCardinalityLimit?;
17
18
  private _deltaMetricStorage;
18
19
  private _temporalMetricStorage;
19
- private _attributesProcessor;
20
- constructor(instrumentDescriptor: InstrumentDescriptor, aggregator: Aggregator<T>, attributesProcessor: IAttributesProcessor, collectorHandles: MetricCollectorHandle[], aggregationCardinalityLimit?: number);
20
+ constructor(instrumentDescriptor: InstrumentDescriptor, aggregator: Aggregator<T>, _attributesProcessor: IAttributesProcessor, collectorHandles: MetricCollectorHandle[], _aggregationCardinalityLimit?: number | undefined);
21
21
  record(value: number, attributes: Attributes, context: Context, recordTime: HrTime): void;
22
22
  /**
23
23
  * Collects the metrics from this storage.
@@ -25,16 +25,16 @@ const TemporalMetricProcessor_1 = require("./TemporalMetricProcessor");
25
25
  * Stores and aggregates {@link MetricData} for synchronous instruments.
26
26
  */
27
27
  class SyncMetricStorage extends MetricStorage_1.MetricStorage {
28
+ _attributesProcessor;
28
29
  _aggregationCardinalityLimit;
29
30
  _deltaMetricStorage;
30
31
  _temporalMetricStorage;
31
- _attributesProcessor;
32
- constructor(instrumentDescriptor, aggregator, attributesProcessor, collectorHandles, aggregationCardinalityLimit) {
32
+ constructor(instrumentDescriptor, aggregator, _attributesProcessor, collectorHandles, _aggregationCardinalityLimit) {
33
33
  super(instrumentDescriptor);
34
- this._aggregationCardinalityLimit = aggregationCardinalityLimit;
34
+ this._attributesProcessor = _attributesProcessor;
35
+ this._aggregationCardinalityLimit = _aggregationCardinalityLimit;
35
36
  this._deltaMetricStorage = new DeltaMetricProcessor_1.DeltaMetricProcessor(aggregator, this._aggregationCardinalityLimit);
36
37
  this._temporalMetricStorage = new TemporalMetricProcessor_1.TemporalMetricProcessor(aggregator, collectorHandles);
37
- this._attributesProcessor = attributesProcessor;
38
38
  }
39
39
  record(value, attributes, context, recordTime) {
40
40
  attributes = this._attributesProcessor.process(attributes, context);
@@ -1 +1 @@
1
- {"version":3,"file":"SyncMetricStorage.js","sourceRoot":"","sources":["../../../src/state/SyncMetricStorage.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAOH,mDAAgD;AAEhD,iEAA8D;AAC9D,uEAAoE;AAIpE;;;;GAIG;AACH,MAAa,iBACX,SAAQ,6BAAa;IAGb,4BAA4B,CAAU;IACtC,mBAAmB,CAA0B;IAC7C,sBAAsB,CAA6B;IACnD,oBAAoB,CAAuB;IAEnD,YACE,oBAA0C,EAC1C,UAAyB,EACzB,mBAAyC,EACzC,gBAAyC,EACzC,2BAAoC;QAEpC,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAC5B,IAAI,CAAC,4BAA4B,GAAG,2BAA2B,CAAC;QAChE,IAAI,CAAC,mBAAmB,GAAG,IAAI,2CAAoB,CACjD,UAAU,EACV,IAAI,CAAC,4BAA4B,CAClC,CAAC;QACF,IAAI,CAAC,sBAAsB,GAAG,IAAI,iDAAuB,CACvD,UAAU,EACV,gBAAgB,CACjB,CAAC;QACF,IAAI,CAAC,oBAAoB,GAAG,mBAAmB,CAAC;IAClD,CAAC;IAED,MAAM,CACJ,KAAa,EACb,UAAsB,EACtB,OAAgB,EAChB,UAAkB;QAElB,UAAU,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QACpE,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;IAC1E,CAAC;IAED;;;;;OAKG;IACH,OAAO,CACL,SAAgC,EAChC,cAAsB;QAEtB,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,CAAC;QAEzD,OAAO,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAC7C,SAAS,EACT,IAAI,CAAC,qBAAqB,EAC1B,aAAa,EACb,cAAc,CACf,CAAC;IACJ,CAAC;CACF;AA1DD,8CA0DC","sourcesContent":["/*\n * Copyright The OpenTelemetry Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { Context, HrTime, Attributes } from '@opentelemetry/api';\nimport { WritableMetricStorage } from './WritableMetricStorage';\nimport { Accumulation, Aggregator } from '../aggregator/types';\nimport { InstrumentDescriptor } from '../InstrumentDescriptor';\nimport { IAttributesProcessor } from '../view/AttributesProcessor';\nimport { MetricStorage } from './MetricStorage';\nimport { MetricData } from '../export/MetricData';\nimport { DeltaMetricProcessor } from './DeltaMetricProcessor';\nimport { TemporalMetricProcessor } from './TemporalMetricProcessor';\nimport { Maybe } from '../utils';\nimport { MetricCollectorHandle } from './MetricCollector';\n\n/**\n * Internal interface.\n *\n * Stores and aggregates {@link MetricData} for synchronous instruments.\n */\nexport class SyncMetricStorage<T extends Maybe<Accumulation>>\n extends MetricStorage\n implements WritableMetricStorage\n{\n private _aggregationCardinalityLimit?: number;\n private _deltaMetricStorage: DeltaMetricProcessor<T>;\n private _temporalMetricStorage: TemporalMetricProcessor<T>;\n private _attributesProcessor: IAttributesProcessor;\n\n constructor(\n instrumentDescriptor: InstrumentDescriptor,\n aggregator: Aggregator<T>,\n attributesProcessor: IAttributesProcessor,\n collectorHandles: MetricCollectorHandle[],\n aggregationCardinalityLimit?: number\n ) {\n super(instrumentDescriptor);\n this._aggregationCardinalityLimit = aggregationCardinalityLimit;\n this._deltaMetricStorage = new DeltaMetricProcessor(\n aggregator,\n this._aggregationCardinalityLimit\n );\n this._temporalMetricStorage = new TemporalMetricProcessor(\n aggregator,\n collectorHandles\n );\n this._attributesProcessor = attributesProcessor;\n }\n\n record(\n value: number,\n attributes: Attributes,\n context: Context,\n recordTime: HrTime\n ) {\n attributes = this._attributesProcessor.process(attributes, context);\n this._deltaMetricStorage.record(value, attributes, context, recordTime);\n }\n\n /**\n * Collects the metrics from this storage.\n *\n * Note: This is a stateful operation and may reset any interval-related\n * state for the MetricCollector.\n */\n collect(\n collector: MetricCollectorHandle,\n collectionTime: HrTime\n ): Maybe<MetricData> {\n const accumulations = this._deltaMetricStorage.collect();\n\n return this._temporalMetricStorage.buildMetrics(\n collector,\n this._instrumentDescriptor,\n accumulations,\n collectionTime\n );\n }\n}\n"]}
1
+ {"version":3,"file":"SyncMetricStorage.js","sourceRoot":"","sources":["../../../src/state/SyncMetricStorage.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;AAOH,mDAAgD;AAEhD,iEAA8D;AAC9D,uEAAoE;AAIpE;;;;GAIG;AACH,MAAa,iBACX,SAAQ,6BAAa;IASX;IAEA;IARF,mBAAmB,CAA0B;IAC7C,sBAAsB,CAA6B;IAE3D,YACE,oBAA0C,EAC1C,UAAyB,EACjB,oBAA0C,EAClD,gBAAyC,EACjC,4BAAqC;QAE7C,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAJpB,yBAAoB,GAApB,oBAAoB,CAAsB;QAE1C,iCAA4B,GAA5B,4BAA4B,CAAS;QAG7C,IAAI,CAAC,mBAAmB,GAAG,IAAI,2CAAoB,CACjD,UAAU,EACV,IAAI,CAAC,4BAA4B,CAClC,CAAC;QACF,IAAI,CAAC,sBAAsB,GAAG,IAAI,iDAAuB,CACvD,UAAU,EACV,gBAAgB,CACjB,CAAC;IACJ,CAAC;IAED,MAAM,CACJ,KAAa,EACb,UAAsB,EACtB,OAAgB,EAChB,UAAkB;QAElB,UAAU,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QACpE,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;IAC1E,CAAC;IAED;;;;;OAKG;IACH,OAAO,CACL,SAAgC,EAChC,cAAsB;QAEtB,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,CAAC;QAEzD,OAAO,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAC7C,SAAS,EACT,IAAI,CAAC,qBAAqB,EAC1B,aAAa,EACb,cAAc,CACf,CAAC;IACJ,CAAC;CACF;AAtDD,8CAsDC","sourcesContent":["/*\n * Copyright The OpenTelemetry Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { Context, HrTime, Attributes } from '@opentelemetry/api';\nimport { WritableMetricStorage } from './WritableMetricStorage';\nimport { Accumulation, Aggregator } from '../aggregator/types';\nimport { InstrumentDescriptor } from '../InstrumentDescriptor';\nimport { IAttributesProcessor } from '../view/AttributesProcessor';\nimport { MetricStorage } from './MetricStorage';\nimport { MetricData } from '../export/MetricData';\nimport { DeltaMetricProcessor } from './DeltaMetricProcessor';\nimport { TemporalMetricProcessor } from './TemporalMetricProcessor';\nimport { Maybe } from '../utils';\nimport { MetricCollectorHandle } from './MetricCollector';\n\n/**\n * Internal interface.\n *\n * Stores and aggregates {@link MetricData} for synchronous instruments.\n */\nexport class SyncMetricStorage<T extends Maybe<Accumulation>>\n extends MetricStorage\n implements WritableMetricStorage\n{\n private _deltaMetricStorage: DeltaMetricProcessor<T>;\n private _temporalMetricStorage: TemporalMetricProcessor<T>;\n\n constructor(\n instrumentDescriptor: InstrumentDescriptor,\n aggregator: Aggregator<T>,\n private _attributesProcessor: IAttributesProcessor,\n collectorHandles: MetricCollectorHandle[],\n private _aggregationCardinalityLimit?: number\n ) {\n super(instrumentDescriptor);\n this._deltaMetricStorage = new DeltaMetricProcessor(\n aggregator,\n this._aggregationCardinalityLimit\n );\n this._temporalMetricStorage = new TemporalMetricProcessor(\n aggregator,\n collectorHandles\n );\n }\n\n record(\n value: number,\n attributes: Attributes,\n context: Context,\n recordTime: HrTime\n ) {\n attributes = this._attributesProcessor.process(attributes, context);\n this._deltaMetricStorage.record(value, attributes, context, recordTime);\n }\n\n /**\n * Collects the metrics from this storage.\n *\n * Note: This is a stateful operation and may reset any interval-related\n * state for the MetricCollector.\n */\n collect(\n collector: MetricCollectorHandle,\n collectionTime: HrTime\n ): Maybe<MetricData> {\n const accumulations = this._deltaMetricStorage.collect();\n\n return this._temporalMetricStorage.buildMetrics(\n collector,\n this._instrumentDescriptor,\n accumulations,\n collectionTime\n );\n }\n}\n"]}
@@ -15,7 +15,7 @@ export declare class TemporalMetricProcessor<T extends Maybe<Accumulation>> {
15
15
  private _aggregator;
16
16
  private _unreportedAccumulations;
17
17
  private _reportHistory;
18
- constructor(aggregator: Aggregator<T>, collectorHandles: MetricCollectorHandle[]);
18
+ constructor(_aggregator: Aggregator<T>, collectorHandles: MetricCollectorHandle[]);
19
19
  /**
20
20
  * Builds the {@link MetricData} streams to report against a specific MetricCollector.
21
21
  * @param collector The information of the MetricCollector.
@@ -28,8 +28,8 @@ class TemporalMetricProcessor {
28
28
  _aggregator;
29
29
  _unreportedAccumulations = new Map();
30
30
  _reportHistory = new Map();
31
- constructor(aggregator, collectorHandles) {
32
- this._aggregator = aggregator;
31
+ constructor(_aggregator, collectorHandles) {
32
+ this._aggregator = _aggregator;
33
33
  collectorHandles.forEach(handle => {
34
34
  this._unreportedAccumulations.set(handle, []);
35
35
  });
@@ -1 +1 @@
1
- {"version":3,"file":"TemporalMetricProcessor.js","sourceRoot":"","sources":["../../../src/state/TemporalMetricProcessor.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright The OpenTelemetry Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { HrTime } from '@opentelemetry/api';\nimport {\n Accumulation,\n AccumulationRecord,\n Aggregator,\n} from '../aggregator/types';\nimport { MetricData } from '../export/MetricData';\nimport { InstrumentDescriptor } from '../InstrumentDescriptor';\nimport { AggregationTemporality } from '../export/AggregationTemporality';\nimport { Maybe } from '../utils';\nimport { MetricCollectorHandle } from './MetricCollector';\nimport { AttributeHashMap } from './HashMap';\n\n/**\n * Remembers what was presented to a specific exporter.\n */\ninterface LastReportedHistory<T extends Maybe<Accumulation>> {\n /**\n * The last accumulation of metric data.\n */\n accumulations: AttributeHashMap<T>;\n /**\n * The timestamp the data was reported.\n */\n collectionTime: HrTime;\n /**\n * The AggregationTemporality used to aggregate reports.\n */\n aggregationTemporality: AggregationTemporality;\n}\n\n/**\n * Internal interface.\n *\n * Provides unique reporting for each collector. Allows synchronous collection\n * of metrics and reports given temporality values.\n */\nexport class TemporalMetricProcessor<T extends Maybe<Accumulation>> {\n private _aggregator: Aggregator<T>;\n private _unreportedAccumulations = new Map<\n MetricCollectorHandle,\n AttributeHashMap<T>[]\n >();\n private _reportHistory = new Map<\n MetricCollectorHandle,\n LastReportedHistory<T>\n >();\n\n constructor(\n aggregator: Aggregator<T>,\n collectorHandles: MetricCollectorHandle[]\n ) {\n this._aggregator = aggregator;\n collectorHandles.forEach(handle => {\n this._unreportedAccumulations.set(handle, []);\n });\n }\n\n /**\n * Builds the {@link MetricData} streams to report against a specific MetricCollector.\n * @param collector The information of the MetricCollector.\n * @param collectors The registered collectors.\n * @param instrumentDescriptor The instrumentation descriptor that these metrics generated with.\n * @param currentAccumulations The current accumulation of metric data from instruments.\n * @param collectionTime The current collection timestamp.\n * @returns The {@link MetricData} points or `null`.\n */\n buildMetrics(\n collector: MetricCollectorHandle,\n instrumentDescriptor: InstrumentDescriptor,\n currentAccumulations: AttributeHashMap<T>,\n collectionTime: HrTime\n ): Maybe<MetricData> {\n this._stashAccumulations(currentAccumulations);\n const unreportedAccumulations =\n this._getMergedUnreportedAccumulations(collector);\n\n let result = unreportedAccumulations;\n let aggregationTemporality: AggregationTemporality;\n // Check our last report time.\n if (this._reportHistory.has(collector)) {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n const last = this._reportHistory.get(collector)!;\n const lastCollectionTime = last.collectionTime;\n aggregationTemporality = last.aggregationTemporality;\n\n // Use aggregation temporality + instrument to determine if we do a merge or a diff of\n // previous. We have the following four scenarios:\n // 1. Cumulative Aggregation (temporality) + Delta recording (sync instrument).\n // Here we merge with our last record to get a cumulative aggregation.\n // 2. Cumulative Aggregation + Cumulative recording (async instrument).\n // Cumulative records are converted to delta recording with DeltaMetricProcessor.\n // Here we merge with our last record to get a cumulative aggregation.\n // 3. Delta Aggregation + Delta recording\n // Calibrate the startTime of metric streams to be the reader's lastCollectionTime.\n // 4. Delta Aggregation + Cumulative recording.\n // Cumulative records are converted to delta recording with DeltaMetricProcessor.\n // Calibrate the startTime of metric streams to be the reader's lastCollectionTime.\n if (aggregationTemporality === AggregationTemporality.CUMULATIVE) {\n // We need to make sure the current delta recording gets merged into the previous cumulative\n // for the next cumulative recording.\n result = TemporalMetricProcessor.merge(\n last.accumulations,\n unreportedAccumulations,\n this._aggregator\n );\n } else {\n result = TemporalMetricProcessor.calibrateStartTime(\n last.accumulations,\n unreportedAccumulations,\n lastCollectionTime\n );\n }\n } else {\n // Call into user code to select aggregation temporality for the instrument.\n aggregationTemporality = collector.selectAggregationTemporality(\n instrumentDescriptor.type\n );\n }\n\n // Update last reported (cumulative) accumulation.\n this._reportHistory.set(collector, {\n accumulations: result,\n collectionTime,\n aggregationTemporality,\n });\n\n const accumulationRecords = AttributesMapToAccumulationRecords(result);\n\n // do not convert to metric data if there is nothing to convert.\n if (accumulationRecords.length === 0) {\n return undefined;\n }\n\n return this._aggregator.toMetricData(\n instrumentDescriptor,\n aggregationTemporality,\n accumulationRecords,\n /* endTime */ collectionTime\n );\n }\n\n private _stashAccumulations(currentAccumulation: AttributeHashMap<T>) {\n const registeredCollectors = this._unreportedAccumulations.keys();\n for (const collector of registeredCollectors) {\n let stash = this._unreportedAccumulations.get(collector);\n if (stash === undefined) {\n stash = [];\n this._unreportedAccumulations.set(collector, stash);\n }\n stash.push(currentAccumulation);\n }\n }\n\n private _getMergedUnreportedAccumulations(collector: MetricCollectorHandle) {\n let result = new AttributeHashMap<T>();\n const unreportedList = this._unreportedAccumulations.get(collector);\n this._unreportedAccumulations.set(collector, []);\n if (unreportedList === undefined) {\n return result;\n }\n for (const it of unreportedList) {\n result = TemporalMetricProcessor.merge(result, it, this._aggregator);\n }\n return result;\n }\n\n static merge<T extends Maybe<Accumulation>>(\n last: AttributeHashMap<T>,\n current: AttributeHashMap<T>,\n aggregator: Aggregator<T>\n ) {\n const result = last;\n const iterator = current.entries();\n let next = iterator.next();\n while (next.done !== true) {\n const [key, record, hash] = next.value;\n if (last.has(key, hash)) {\n const lastAccumulation = last.get(key, hash);\n // last.has() returned true, lastAccumulation is present.\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n const accumulation = aggregator.merge(lastAccumulation!, record);\n result.set(key, accumulation, hash);\n } else {\n result.set(key, record, hash);\n }\n\n next = iterator.next();\n }\n return result;\n }\n\n /**\n * Calibrate the reported metric streams' startTime to lastCollectionTime. Leaves\n * the new stream to be the initial observation time unchanged.\n */\n static calibrateStartTime<T extends Maybe<Accumulation>>(\n last: AttributeHashMap<T>,\n current: AttributeHashMap<T>,\n lastCollectionTime: HrTime\n ) {\n for (const [key, hash] of last.keys()) {\n const currentAccumulation = current.get(key, hash);\n currentAccumulation?.setStartTime(lastCollectionTime);\n }\n return current;\n }\n}\n\n// TypeScript complains about converting 3 elements tuple to AccumulationRecord<T>.\nfunction AttributesMapToAccumulationRecords<T>(\n map: AttributeHashMap<T>\n): AccumulationRecord<T>[] {\n return Array.from(map.entries()) as unknown as AccumulationRecord<T>[];\n}\n"]}
1
+ {"version":3,"file":"TemporalMetricProcessor.js","sourceRoot":"","sources":["../../../src/state/TemporalMetricProcessor.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright The OpenTelemetry Authors\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { HrTime } from '@opentelemetry/api';\nimport {\n Accumulation,\n AccumulationRecord,\n Aggregator,\n} from '../aggregator/types';\nimport { MetricData } from '../export/MetricData';\nimport { InstrumentDescriptor } from '../InstrumentDescriptor';\nimport { AggregationTemporality } from '../export/AggregationTemporality';\nimport { Maybe } from '../utils';\nimport { MetricCollectorHandle } from './MetricCollector';\nimport { AttributeHashMap } from './HashMap';\n\n/**\n * Remembers what was presented to a specific exporter.\n */\ninterface LastReportedHistory<T extends Maybe<Accumulation>> {\n /**\n * The last accumulation of metric data.\n */\n accumulations: AttributeHashMap<T>;\n /**\n * The timestamp the data was reported.\n */\n collectionTime: HrTime;\n /**\n * The AggregationTemporality used to aggregate reports.\n */\n aggregationTemporality: AggregationTemporality;\n}\n\n/**\n * Internal interface.\n *\n * Provides unique reporting for each collector. Allows synchronous collection\n * of metrics and reports given temporality values.\n */\nexport class TemporalMetricProcessor<T extends Maybe<Accumulation>> {\n private _unreportedAccumulations = new Map<\n MetricCollectorHandle,\n AttributeHashMap<T>[]\n >();\n private _reportHistory = new Map<\n MetricCollectorHandle,\n LastReportedHistory<T>\n >();\n\n constructor(\n private _aggregator: Aggregator<T>,\n collectorHandles: MetricCollectorHandle[]\n ) {\n collectorHandles.forEach(handle => {\n this._unreportedAccumulations.set(handle, []);\n });\n }\n\n /**\n * Builds the {@link MetricData} streams to report against a specific MetricCollector.\n * @param collector The information of the MetricCollector.\n * @param collectors The registered collectors.\n * @param instrumentDescriptor The instrumentation descriptor that these metrics generated with.\n * @param currentAccumulations The current accumulation of metric data from instruments.\n * @param collectionTime The current collection timestamp.\n * @returns The {@link MetricData} points or `null`.\n */\n buildMetrics(\n collector: MetricCollectorHandle,\n instrumentDescriptor: InstrumentDescriptor,\n currentAccumulations: AttributeHashMap<T>,\n collectionTime: HrTime\n ): Maybe<MetricData> {\n this._stashAccumulations(currentAccumulations);\n const unreportedAccumulations =\n this._getMergedUnreportedAccumulations(collector);\n\n let result = unreportedAccumulations;\n let aggregationTemporality: AggregationTemporality;\n // Check our last report time.\n if (this._reportHistory.has(collector)) {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n const last = this._reportHistory.get(collector)!;\n const lastCollectionTime = last.collectionTime;\n aggregationTemporality = last.aggregationTemporality;\n\n // Use aggregation temporality + instrument to determine if we do a merge or a diff of\n // previous. We have the following four scenarios:\n // 1. Cumulative Aggregation (temporality) + Delta recording (sync instrument).\n // Here we merge with our last record to get a cumulative aggregation.\n // 2. Cumulative Aggregation + Cumulative recording (async instrument).\n // Cumulative records are converted to delta recording with DeltaMetricProcessor.\n // Here we merge with our last record to get a cumulative aggregation.\n // 3. Delta Aggregation + Delta recording\n // Calibrate the startTime of metric streams to be the reader's lastCollectionTime.\n // 4. Delta Aggregation + Cumulative recording.\n // Cumulative records are converted to delta recording with DeltaMetricProcessor.\n // Calibrate the startTime of metric streams to be the reader's lastCollectionTime.\n if (aggregationTemporality === AggregationTemporality.CUMULATIVE) {\n // We need to make sure the current delta recording gets merged into the previous cumulative\n // for the next cumulative recording.\n result = TemporalMetricProcessor.merge(\n last.accumulations,\n unreportedAccumulations,\n this._aggregator\n );\n } else {\n result = TemporalMetricProcessor.calibrateStartTime(\n last.accumulations,\n unreportedAccumulations,\n lastCollectionTime\n );\n }\n } else {\n // Call into user code to select aggregation temporality for the instrument.\n aggregationTemporality = collector.selectAggregationTemporality(\n instrumentDescriptor.type\n );\n }\n\n // Update last reported (cumulative) accumulation.\n this._reportHistory.set(collector, {\n accumulations: result,\n collectionTime,\n aggregationTemporality,\n });\n\n const accumulationRecords = AttributesMapToAccumulationRecords(result);\n\n // do not convert to metric data if there is nothing to convert.\n if (accumulationRecords.length === 0) {\n return undefined;\n }\n\n return this._aggregator.toMetricData(\n instrumentDescriptor,\n aggregationTemporality,\n accumulationRecords,\n /* endTime */ collectionTime\n );\n }\n\n private _stashAccumulations(currentAccumulation: AttributeHashMap<T>) {\n const registeredCollectors = this._unreportedAccumulations.keys();\n for (const collector of registeredCollectors) {\n let stash = this._unreportedAccumulations.get(collector);\n if (stash === undefined) {\n stash = [];\n this._unreportedAccumulations.set(collector, stash);\n }\n stash.push(currentAccumulation);\n }\n }\n\n private _getMergedUnreportedAccumulations(collector: MetricCollectorHandle) {\n let result = new AttributeHashMap<T>();\n const unreportedList = this._unreportedAccumulations.get(collector);\n this._unreportedAccumulations.set(collector, []);\n if (unreportedList === undefined) {\n return result;\n }\n for (const it of unreportedList) {\n result = TemporalMetricProcessor.merge(result, it, this._aggregator);\n }\n return result;\n }\n\n static merge<T extends Maybe<Accumulation>>(\n last: AttributeHashMap<T>,\n current: AttributeHashMap<T>,\n aggregator: Aggregator<T>\n ) {\n const result = last;\n const iterator = current.entries();\n let next = iterator.next();\n while (next.done !== true) {\n const [key, record, hash] = next.value;\n if (last.has(key, hash)) {\n const lastAccumulation = last.get(key, hash);\n // last.has() returned true, lastAccumulation is present.\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n const accumulation = aggregator.merge(lastAccumulation!, record);\n result.set(key, accumulation, hash);\n } else {\n result.set(key, record, hash);\n }\n\n next = iterator.next();\n }\n return result;\n }\n\n /**\n * Calibrate the reported metric streams' startTime to lastCollectionTime. Leaves\n * the new stream to be the initial observation time unchanged.\n */\n static calibrateStartTime<T extends Maybe<Accumulation>>(\n last: AttributeHashMap<T>,\n current: AttributeHashMap<T>,\n lastCollectionTime: HrTime\n ) {\n for (const [key, hash] of last.keys()) {\n const currentAccumulation = current.get(key, hash);\n currentAccumulation?.setStartTime(lastCollectionTime);\n }\n return current;\n }\n}\n\n// TypeScript complains about converting 3 elements tuple to AccumulationRecord<T>.\nfunction AttributesMapToAccumulationRecords<T>(\n map: AttributeHashMap<T>\n): AccumulationRecord<T>[] {\n return Array.from(map.entries()) as unknown as AccumulationRecord<T>[];\n}\n"]}
@@ -1,6 +1,7 @@
1
1
  import { Attributes } from '@opentelemetry/api';
2
2
  import { InstrumentationScope } from '@opentelemetry/core';
3
3
  export type Maybe<T> = T | undefined;
4
+ export declare function isNotNullish<T>(item: Maybe<T>): item is T;
4
5
  /**
5
6
  * Converting the unordered attributes into unique identifier string.
6
7
  * @param attributes user provided unordered Attributes.
@@ -27,6 +28,24 @@ export declare class TimeoutError extends Error {
27
28
  * @param timeout the timeout in milliseconds until the returned promise is rejected.
28
29
  */
29
30
  export declare function callWithTimeout<T>(promise: Promise<T>, timeout: number): Promise<T>;
31
+ export interface PromiseAllSettledFulfillResult<T> {
32
+ status: 'fulfilled';
33
+ value: T;
34
+ }
35
+ export interface PromiseAllSettledRejectionResult {
36
+ status: 'rejected';
37
+ reason: unknown;
38
+ }
39
+ export type PromiseAllSettledResult<T> = PromiseAllSettledFulfillResult<T> | PromiseAllSettledRejectionResult;
40
+ /**
41
+ * Node.js v12.9 lower and browser compatible `Promise.allSettled`.
42
+ */
43
+ export declare function PromiseAllSettled<T>(promises: Promise<T>[]): Promise<PromiseAllSettledResult<T>[]>;
44
+ export declare function isPromiseAllSettledRejectionResult(it: PromiseAllSettledResult<unknown>): it is PromiseAllSettledRejectionResult;
45
+ /**
46
+ * Node.js v11.0 lower and browser compatible `Array.prototype.flatMap`.
47
+ */
48
+ export declare function FlatMap<T, R>(arr: T[], fn: (it: T) => R[]): R[];
30
49
  export declare function setEquals(lhs: Set<unknown>, rhs: Set<unknown>): boolean;
31
50
  /**
32
51
  * Binary search the sorted array to the find upper bound for the value.
@@ -15,7 +15,11 @@
15
15
  * limitations under the License.
16
16
  */
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.equalsCaseInsensitive = exports.binarySearchUB = exports.setEquals = exports.callWithTimeout = exports.TimeoutError = exports.instrumentationScopeId = exports.hashAttributes = void 0;
18
+ exports.equalsCaseInsensitive = exports.binarySearchUB = exports.setEquals = exports.FlatMap = exports.isPromiseAllSettledRejectionResult = exports.PromiseAllSettled = exports.callWithTimeout = exports.TimeoutError = exports.instrumentationScopeId = exports.hashAttributes = exports.isNotNullish = void 0;
19
+ function isNotNullish(item) {
20
+ return item !== undefined && item !== null;
21
+ }
22
+ exports.isNotNullish = isNotNullish;
19
23
  /**
20
24
  * Converting the unordered attributes into unique identifier string.
21
25
  * @param attributes user provided unordered Attributes.
@@ -74,6 +78,42 @@ function callWithTimeout(promise, timeout) {
74
78
  });
75
79
  }
76
80
  exports.callWithTimeout = callWithTimeout;
81
+ /**
82
+ * Node.js v12.9 lower and browser compatible `Promise.allSettled`.
83
+ */
84
+ async function PromiseAllSettled(promises) {
85
+ return Promise.all(promises.map(async (p) => {
86
+ try {
87
+ const ret = await p;
88
+ return {
89
+ status: 'fulfilled',
90
+ value: ret,
91
+ };
92
+ }
93
+ catch (e) {
94
+ return {
95
+ status: 'rejected',
96
+ reason: e,
97
+ };
98
+ }
99
+ }));
100
+ }
101
+ exports.PromiseAllSettled = PromiseAllSettled;
102
+ function isPromiseAllSettledRejectionResult(it) {
103
+ return it.status === 'rejected';
104
+ }
105
+ exports.isPromiseAllSettledRejectionResult = isPromiseAllSettledRejectionResult;
106
+ /**
107
+ * Node.js v11.0 lower and browser compatible `Array.prototype.flatMap`.
108
+ */
109
+ function FlatMap(arr, fn) {
110
+ const result = [];
111
+ arr.forEach(it => {
112
+ result.push(...fn(it));
113
+ });
114
+ return result;
115
+ }
116
+ exports.FlatMap = FlatMap;
77
117
  function setEquals(lhs, rhs) {
78
118
  if (lhs.size !== rhs.size) {
79
119
  return false;
@@ -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 *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { Attributes } from '@opentelemetry/api';\nimport { InstrumentationScope } from '@opentelemetry/core';\n\nexport type Maybe<T> = T | undefined;\n\n/**\n * Converting the unordered attributes into unique identifier string.\n * @param attributes user provided unordered Attributes.\n */\nexport function hashAttributes(attributes: Attributes): string {\n let keys = Object.keys(attributes);\n if (keys.length === 0) return '';\n\n // Return a string that is stable on key orders.\n keys = keys.sort();\n return JSON.stringify(keys.map(key => [key, attributes[key]]));\n}\n\n/**\n * Converting the instrumentation scope object to a unique identifier string.\n * @param instrumentationScope\n */\nexport function instrumentationScopeId(\n instrumentationScope: InstrumentationScope\n): string {\n return `${instrumentationScope.name}:${instrumentationScope.version ?? ''}:${\n instrumentationScope.schemaUrl ?? ''\n }`;\n}\n\n/**\n * Error that is thrown on timeouts.\n */\nexport class TimeoutError extends Error {\n constructor(message?: string) {\n super(message);\n\n // manually adjust prototype to retain `instanceof` functionality when targeting ES5, see:\n // https://github.com/Microsoft/TypeScript-wiki/blob/main/Breaking-Changes.md#extending-built-ins-like-error-array-and-map-may-no-longer-work\n Object.setPrototypeOf(this, TimeoutError.prototype);\n }\n}\n\n/**\n * Adds a timeout to a promise and rejects if the specified timeout has elapsed. Also rejects if the specified promise\n * rejects, and resolves if the specified promise resolves.\n *\n * <p> NOTE: this operation will continue even after it throws a {@link TimeoutError}.\n *\n * @param promise promise to use with timeout.\n * @param timeout the timeout in milliseconds until the returned promise is rejected.\n */\nexport function callWithTimeout<T>(\n promise: Promise<T>,\n timeout: number\n): Promise<T> {\n let timeoutHandle: ReturnType<typeof setTimeout>;\n\n const timeoutPromise = new Promise<never>(function timeoutFunction(\n _resolve,\n reject\n ) {\n timeoutHandle = setTimeout(function timeoutHandler() {\n reject(new TimeoutError('Operation timed out.'));\n }, timeout);\n });\n\n return Promise.race([promise, timeoutPromise]).then(\n result => {\n clearTimeout(timeoutHandle);\n return result;\n },\n reason => {\n clearTimeout(timeoutHandle);\n throw reason;\n }\n );\n}\n\nexport function setEquals(lhs: Set<unknown>, rhs: Set<unknown>): boolean {\n if (lhs.size !== rhs.size) {\n return false;\n }\n for (const item of lhs) {\n if (!rhs.has(item)) {\n return false;\n }\n }\n return true;\n}\n\n/**\n * Binary search the sorted array to the find upper bound for the value.\n * @param arr\n * @param value\n * @returns\n */\nexport function binarySearchUB(arr: number[], value: number): number {\n let lo = 0;\n let hi = arr.length - 1;\n let ret = arr.length;\n\n while (hi >= lo) {\n const mid = lo + Math.trunc((hi - lo) / 2);\n if (arr[mid] < value) {\n lo = mid + 1;\n } else {\n ret = mid;\n hi = mid - 1;\n }\n }\n\n return ret;\n}\n\nexport function equalsCaseInsensitive(lhs: string, rhs: string): boolean {\n return lhs.toLowerCase() === rhs.toLowerCase();\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 *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { Attributes } from '@opentelemetry/api';\nimport { InstrumentationScope } from '@opentelemetry/core';\n\nexport type Maybe<T> = T | undefined;\n\nexport function isNotNullish<T>(item: Maybe<T>): item is T {\n return item !== undefined && item !== null;\n}\n\n/**\n * Converting the unordered attributes into unique identifier string.\n * @param attributes user provided unordered Attributes.\n */\nexport function hashAttributes(attributes: Attributes): string {\n let keys = Object.keys(attributes);\n if (keys.length === 0) return '';\n\n // Return a string that is stable on key orders.\n keys = keys.sort();\n return JSON.stringify(keys.map(key => [key, attributes[key]]));\n}\n\n/**\n * Converting the instrumentation scope object to a unique identifier string.\n * @param instrumentationScope\n */\nexport function instrumentationScopeId(\n instrumentationScope: InstrumentationScope\n): string {\n return `${instrumentationScope.name}:${instrumentationScope.version ?? ''}:${\n instrumentationScope.schemaUrl ?? ''\n }`;\n}\n\n/**\n * Error that is thrown on timeouts.\n */\nexport class TimeoutError extends Error {\n constructor(message?: string) {\n super(message);\n\n // manually adjust prototype to retain `instanceof` functionality when targeting ES5, see:\n // https://github.com/Microsoft/TypeScript-wiki/blob/main/Breaking-Changes.md#extending-built-ins-like-error-array-and-map-may-no-longer-work\n Object.setPrototypeOf(this, TimeoutError.prototype);\n }\n}\n\n/**\n * Adds a timeout to a promise and rejects if the specified timeout has elapsed. Also rejects if the specified promise\n * rejects, and resolves if the specified promise resolves.\n *\n * <p> NOTE: this operation will continue even after it throws a {@link TimeoutError}.\n *\n * @param promise promise to use with timeout.\n * @param timeout the timeout in milliseconds until the returned promise is rejected.\n */\nexport function callWithTimeout<T>(\n promise: Promise<T>,\n timeout: number\n): Promise<T> {\n let timeoutHandle: ReturnType<typeof setTimeout>;\n\n const timeoutPromise = new Promise<never>(function timeoutFunction(\n _resolve,\n reject\n ) {\n timeoutHandle = setTimeout(function timeoutHandler() {\n reject(new TimeoutError('Operation timed out.'));\n }, timeout);\n });\n\n return Promise.race([promise, timeoutPromise]).then(\n result => {\n clearTimeout(timeoutHandle);\n return result;\n },\n reason => {\n clearTimeout(timeoutHandle);\n throw reason;\n }\n );\n}\n\nexport interface PromiseAllSettledFulfillResult<T> {\n status: 'fulfilled';\n value: T;\n}\n\nexport interface PromiseAllSettledRejectionResult {\n status: 'rejected';\n reason: unknown;\n}\n\nexport type PromiseAllSettledResult<T> =\n | PromiseAllSettledFulfillResult<T>\n | PromiseAllSettledRejectionResult;\n\n/**\n * Node.js v12.9 lower and browser compatible `Promise.allSettled`.\n */\nexport async function PromiseAllSettled<T>(\n promises: Promise<T>[]\n): Promise<PromiseAllSettledResult<T>[]> {\n return Promise.all(\n promises.map<Promise<PromiseAllSettledResult<T>>>(async p => {\n try {\n const ret = await p;\n return {\n status: 'fulfilled',\n value: ret,\n };\n } catch (e) {\n return {\n status: 'rejected',\n reason: e,\n };\n }\n })\n );\n}\n\nexport function isPromiseAllSettledRejectionResult(\n it: PromiseAllSettledResult<unknown>\n): it is PromiseAllSettledRejectionResult {\n return it.status === 'rejected';\n}\n\n/**\n * Node.js v11.0 lower and browser compatible `Array.prototype.flatMap`.\n */\nexport function FlatMap<T, R>(arr: T[], fn: (it: T) => R[]): R[] {\n const result: R[] = [];\n arr.forEach(it => {\n result.push(...fn(it));\n });\n return result;\n}\n\nexport function setEquals(lhs: Set<unknown>, rhs: Set<unknown>): boolean {\n if (lhs.size !== rhs.size) {\n return false;\n }\n for (const item of lhs) {\n if (!rhs.has(item)) {\n return false;\n }\n }\n return true;\n}\n\n/**\n * Binary search the sorted array to the find upper bound for the value.\n * @param arr\n * @param value\n * @returns\n */\nexport function binarySearchUB(arr: number[], value: number): number {\n let lo = 0;\n let hi = arr.length - 1;\n let ret = arr.length;\n\n while (hi >= lo) {\n const mid = lo + Math.trunc((hi - lo) / 2);\n if (arr[mid] < value) {\n lo = mid + 1;\n } else {\n ret = mid;\n hi = mid - 1;\n }\n }\n\n return ret;\n}\n\nexport function equalsCaseInsensitive(lhs: string, rhs: string): boolean {\n return lhs.toLowerCase() === rhs.toLowerCase();\n}\n"]}
@@ -1,2 +1,2 @@
1
- export declare const VERSION = "2.5.0";
1
+ export declare const VERSION = "2.2.0";
2
2
  //# sourceMappingURL=version.d.ts.map