@obsunified/collector 2.0.1

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 (254) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +60 -0
  3. package/dist/auth.d.ts +2 -0
  4. package/dist/auth.js +9 -0
  5. package/dist/auth.js.map +1 -0
  6. package/dist/chunk-UGWDOGGH.js +319 -0
  7. package/dist/chunk-UGWDOGGH.js.map +1 -0
  8. package/dist/chunk-XKQTVIRE.js +671 -0
  9. package/dist/chunk-XKQTVIRE.js.map +1 -0
  10. package/dist/index.d.ts +1197 -0
  11. package/dist/index.js +17707 -0
  12. package/dist/index.js.map +1 -0
  13. package/dist/ingest-auth-HFVO1zIp.d.ts +165 -0
  14. package/dist/openai-FJYOQ7WO.js +384 -0
  15. package/dist/openai-FJYOQ7WO.js.map +1 -0
  16. package/package.json +73 -0
  17. package/src/ai-parity/ai-parity.acceptance.test.ts +449 -0
  18. package/src/analyses/derive.ts +642 -0
  19. package/src/analyses/index.ts +50 -0
  20. package/src/analyses/investigations.ts +277 -0
  21. package/src/analyses/tier0.ts +568 -0
  22. package/src/auth/dashboard-auth.ts +269 -0
  23. package/src/auth/ingest-auth.ts +147 -0
  24. package/src/durable-objects/tail-hub.test.ts +32 -0
  25. package/src/durable-objects/tail-hub.ts +158 -0
  26. package/src/framework/collector.ts +467 -0
  27. package/src/framework/env.ts +90 -0
  28. package/src/framework/logger.ts +81 -0
  29. package/src/index.ts +211 -0
  30. package/src/lib/action-aggregates.ts +1031 -0
  31. package/src/lib/action-identity.ts +106 -0
  32. package/src/lib/actions-store.ts +397 -0
  33. package/src/lib/ai-pricing.ts +80 -0
  34. package/src/lib/ai-store/calls.ts +148 -0
  35. package/src/lib/ai-store/evaluations.test.ts +47 -0
  36. package/src/lib/ai-store/evaluations.ts +125 -0
  37. package/src/lib/ai-store/helpers.ts +37 -0
  38. package/src/lib/ai-store/retention.ts +17 -0
  39. package/src/lib/ai-store/sessions.ts +277 -0
  40. package/src/lib/ai-store/spans.ts +109 -0
  41. package/src/lib/ai-store/types.ts +112 -0
  42. package/src/lib/ai-store.ts +76 -0
  43. package/src/lib/alerts-store.ts +458 -0
  44. package/src/lib/analyses-runner.ts +439 -0
  45. package/src/lib/analyses-store.test.ts +243 -0
  46. package/src/lib/analyses-store.ts +454 -0
  47. package/src/lib/ask.test.ts +302 -0
  48. package/src/lib/ask.ts +390 -0
  49. package/src/lib/blob-store-s3.ts +213 -0
  50. package/src/lib/blob-store.ts +366 -0
  51. package/src/lib/eval-cases-store.test.ts +171 -0
  52. package/src/lib/eval-cases-store.ts +1033 -0
  53. package/src/lib/evidence-references.test.ts +10 -0
  54. package/src/lib/evidence-references.ts +684 -0
  55. package/src/lib/hash.ts +26 -0
  56. package/src/lib/identity-index/action-lookups.ts +805 -0
  57. package/src/lib/identity-index/constants.ts +1 -0
  58. package/src/lib/identity-index/key-lookups.ts +199 -0
  59. package/src/lib/identity-index/mappers.ts +349 -0
  60. package/src/lib/identity-index/types.ts +196 -0
  61. package/src/lib/identity-index/user-lookup.ts +137 -0
  62. package/src/lib/identity-index.test.ts +624 -0
  63. package/src/lib/identity-index.ts +85 -0
  64. package/src/lib/json.ts +39 -0
  65. package/src/lib/llm.ts +263 -0
  66. package/src/lib/logs-store.ts +188 -0
  67. package/src/lib/metrics-store.test.ts +189 -0
  68. package/src/lib/metrics-store.ts +312 -0
  69. package/src/lib/narrate-gate.test.ts +260 -0
  70. package/src/lib/narrate-gate.ts +253 -0
  71. package/src/lib/openai.test.ts +300 -0
  72. package/src/lib/openai.ts +512 -0
  73. package/src/lib/otlp.ts +212 -0
  74. package/src/lib/parse-pprof.test.ts +64 -0
  75. package/src/lib/parse-pprof.ts +184 -0
  76. package/src/lib/payload-capture.ts +22 -0
  77. package/src/lib/projects-store.ts +207 -0
  78. package/src/lib/propagation-metric.test.ts +196 -0
  79. package/src/lib/propagation-metric.ts +175 -0
  80. package/src/lib/sql-db-dialect.test.ts +22 -0
  81. package/src/lib/sql-db-postgres.ts +229 -0
  82. package/src/lib/sql-db.ts +166 -0
  83. package/src/lib/stage6.test.ts +216 -0
  84. package/src/lib/store/export.ts +65 -0
  85. package/src/lib/store/helpers.ts +367 -0
  86. package/src/lib/store/ingest.ts +68 -0
  87. package/src/lib/store/issues.ts +158 -0
  88. package/src/lib/store/overview.ts +127 -0
  89. package/src/lib/store/retention.ts +10 -0
  90. package/src/lib/store/service-map.ts +384 -0
  91. package/src/lib/store/trace-detail.bench.ts +76 -0
  92. package/src/lib/store/trace-detail.test.ts +410 -0
  93. package/src/lib/store/trace-detail.ts +427 -0
  94. package/src/lib/store/trace-queries.test.ts +29 -0
  95. package/src/lib/store/trace-queries.ts +89 -0
  96. package/src/lib/store-overview.test.ts +77 -0
  97. package/src/lib/store.ts +96 -0
  98. package/src/lib/tail-publisher.ts +64 -0
  99. package/src/lib/test-utils/mem-sql-db.test.ts +93 -0
  100. package/src/lib/test-utils/mem-sql-db.ts +86 -0
  101. package/src/lib/ua-parser.ts +61 -0
  102. package/src/lib/usage-store.ts +567 -0
  103. package/src/migrations/001_telemetry_spans.sql +28 -0
  104. package/src/migrations/002_usage_events.sql +24 -0
  105. package/src/migrations/003_usage_analytics_columns.sql +13 -0
  106. package/src/migrations/004_logs.sql +19 -0
  107. package/src/migrations/005_ai_calls.sql +25 -0
  108. package/src/migrations/006_user_profiles.sql +11 -0
  109. package/src/migrations/007_session_replay_metadata.sql +10 -0
  110. package/src/migrations/008_session_replay_storage_bytes.sql +1 -0
  111. package/src/migrations/009_projects_and_keys.sql +22 -0
  112. package/src/migrations/010_signal_project_id.sql +15 -0
  113. package/src/migrations/011_default_project_seed.sql +3 -0
  114. package/src/migrations/012_alert_rules.sql +17 -0
  115. package/src/migrations/013_alert_evaluations.sql +13 -0
  116. package/src/migrations/014_alert_state.sql +9 -0
  117. package/src/migrations/015_metrics.sql +58 -0
  118. package/src/migrations/016_metrics_exp_histogram_summary.sql +5 -0
  119. package/src/migrations/017_span_dropped_counts.sql +11 -0
  120. package/src/migrations/018_log_flags.sql +8 -0
  121. package/src/migrations/019_ai_span_payloads.sql +30 -0
  122. package/src/migrations/020_ai_span_evaluations.sql +33 -0
  123. package/src/migrations/021_ai_span_session.sql +13 -0
  124. package/src/migrations/022_span_log_session_id.sql +13 -0
  125. package/src/migrations/023_service_map_indexes.sql +32 -0
  126. package/src/migrations/024_analysis_results.sql +49 -0
  127. package/src/migrations/025_stage6_autopinning_alerts.sql +38 -0
  128. package/src/migrations/026_obs_dashboard_project_seed.sql +18 -0
  129. package/src/migrations/027_identity_propagation.sql +50 -0
  130. package/src/migrations/028_profile_blobs.sql +57 -0
  131. package/src/migrations/029_telemetry_sdk_name.sql +20 -0
  132. package/src/migrations/030_analysis_claim.sql +18 -0
  133. package/src/migrations/031_agent_action_graph.sql +154 -0
  134. package/src/migrations/032_payload_capture_flags.sql +8 -0
  135. package/src/migrations/033_eval_cases.sql +52 -0
  136. package/src/migrations/034_eval_case_results.sql +23 -0
  137. package/src/migrations/035_metric_exemplars.sql +33 -0
  138. package/src/migrations/036_trace_instrumentation_gaps.sql +19 -0
  139. package/src/migrations/037_eval_runs.sql +37 -0
  140. package/src/migrations/038_tool_call_evidence.sql +11 -0
  141. package/src/migrations/039_drop_trace_instrumentation_gaps.sql +11 -0
  142. package/src/migrations/040_evidence_retrieval_refs.sql +50 -0
  143. package/src/migrations-postgres/001_telemetry_spans.sql +33 -0
  144. package/src/migrations-postgres/002_usage_events.sql +24 -0
  145. package/src/migrations-postgres/003_usage_analytics_columns.sql +13 -0
  146. package/src/migrations-postgres/004_logs.sql +19 -0
  147. package/src/migrations-postgres/005_ai_calls.sql +25 -0
  148. package/src/migrations-postgres/006_user_profiles.sql +11 -0
  149. package/src/migrations-postgres/007_session_replay_metadata.sql +10 -0
  150. package/src/migrations-postgres/008_session_replay_storage_bytes.sql +2 -0
  151. package/src/migrations-postgres/009_projects_and_keys.sql +25 -0
  152. package/src/migrations-postgres/010_signal_project_id.sql +18 -0
  153. package/src/migrations-postgres/011_default_project_seed.sql +5 -0
  154. package/src/migrations-postgres/012_alert_rules.sql +17 -0
  155. package/src/migrations-postgres/013_alert_evaluations.sql +13 -0
  156. package/src/migrations-postgres/014_alert_state.sql +9 -0
  157. package/src/migrations-postgres/015_metrics.sql +47 -0
  158. package/src/migrations-postgres/016_metrics_exp_histogram_summary.sql +1 -0
  159. package/src/migrations-postgres/017_span_dropped_counts.sql +4 -0
  160. package/src/migrations-postgres/018_log_flags.sql +2 -0
  161. package/src/migrations-postgres/019_ai_span_payloads.sql +18 -0
  162. package/src/migrations-postgres/020_ai_span_evaluations.sql +21 -0
  163. package/src/migrations-postgres/021_ai_span_session.sql +7 -0
  164. package/src/migrations-postgres/022_span_log_session_id.sql +7 -0
  165. package/src/migrations-postgres/023_service_map_indexes.sql +9 -0
  166. package/src/migrations-postgres/024_analysis_results.sql +41 -0
  167. package/src/migrations-postgres/025_stage6_autopinning_alerts.sql +17 -0
  168. package/src/migrations-postgres/026_obs_dashboard_project_seed.sql +14 -0
  169. package/src/migrations-postgres/027_identity_propagation.sql +27 -0
  170. package/src/migrations-postgres/028_profile_blobs.sql +48 -0
  171. package/src/migrations-postgres/029_telemetry_sdk_name.sql +5 -0
  172. package/src/migrations-postgres/030_analysis_claim.sql +5 -0
  173. package/src/migrations-postgres/031_agent_action_graph.sql +190 -0
  174. package/src/migrations-postgres/032_payload_capture_flags.sql +8 -0
  175. package/src/migrations-postgres/033_eval_cases.sql +55 -0
  176. package/src/migrations-postgres/034_eval_case_results.sql +26 -0
  177. package/src/migrations-postgres/035_metric_exemplars.sql +31 -0
  178. package/src/migrations-postgres/036_trace_instrumentation_gaps.sql +19 -0
  179. package/src/migrations-postgres/037_eval_runs.sql +40 -0
  180. package/src/migrations-postgres/038_tool_call_evidence.sql +11 -0
  181. package/src/migrations-postgres/039_drop_trace_instrumentation_gaps.sql +11 -0
  182. package/src/migrations-postgres/040_evidence_retrieval_refs.sql +47 -0
  183. package/src/migrations-postgres/README.md +40 -0
  184. package/src/otlp/acceptance.test.ts +373 -0
  185. package/src/otlp/decode/body.ts +127 -0
  186. package/src/otlp/decode/logs.ts +96 -0
  187. package/src/otlp/decode/metrics.ts +402 -0
  188. package/src/otlp/decode/traces.ts +92 -0
  189. package/src/otlp/decode/values.ts +150 -0
  190. package/src/otlp/decode.test.ts +800 -0
  191. package/src/otlp/decode.ts +11 -0
  192. package/src/otlp/gen/opentelemetry/proto/collector/logs/v1/logs_service_pb.ts +132 -0
  193. package/src/otlp/gen/opentelemetry/proto/collector/metrics/v1/metrics_service_pb.ts +158 -0
  194. package/src/otlp/gen/opentelemetry/proto/collector/trace/v1/trace_service_pb.ts +158 -0
  195. package/src/otlp/gen/opentelemetry/proto/common/v1/common_pb.ts +289 -0
  196. package/src/otlp/gen/opentelemetry/proto/logs/v1/logs_pb.ts +397 -0
  197. package/src/otlp/gen/opentelemetry/proto/metrics/v1/metrics_pb.ts +1329 -0
  198. package/src/otlp/gen/opentelemetry/proto/resource/v1/resource_pb.ts +86 -0
  199. package/src/otlp/gen/opentelemetry/proto/trace/v1/trace_pb.ts +710 -0
  200. package/src/otlp/response.test.ts +158 -0
  201. package/src/otlp/response.ts +129 -0
  202. package/src/plugins/_context.ts +15 -0
  203. package/src/plugins/action-graph-processor/enrichers.ts +45 -0
  204. package/src/plugins/action-graph-processor/redaction.ts +84 -0
  205. package/src/plugins/action-graph-processor.test.ts +1023 -0
  206. package/src/plugins/action-graph-processor.ts +1172 -0
  207. package/src/plugins/action-routes.test.ts +716 -0
  208. package/src/plugins/action-routes.ts +343 -0
  209. package/src/plugins/ai-receiver.ts +254 -0
  210. package/src/plugins/ai-span-payloads-processor.test.ts +90 -0
  211. package/src/plugins/ai-span-payloads-processor.ts +180 -0
  212. package/src/plugins/alerts-evaluator.test.ts +91 -0
  213. package/src/plugins/alerts-evaluator.ts +328 -0
  214. package/src/plugins/alerts-routes.ts +101 -0
  215. package/src/plugins/analyses-routes.ts +138 -0
  216. package/src/plugins/ask-routes.ts +182 -0
  217. package/src/plugins/bot-filter.ts +19 -0
  218. package/src/plugins/connected-routes/manifest.ts +531 -0
  219. package/src/plugins/connected-routes.test.ts +1791 -0
  220. package/src/plugins/connected-routes.ts +1103 -0
  221. package/src/plugins/dashboard-routes.ts +41 -0
  222. package/src/plugins/default-span-enrichment.ts +92 -0
  223. package/src/plugins/eval-cases-routes.test.ts +391 -0
  224. package/src/plugins/eval-cases-routes.ts +529 -0
  225. package/src/plugins/evidence-retrieval-routes.benchmark.test.ts +245 -0
  226. package/src/plugins/evidence-retrieval-routes.test.ts +932 -0
  227. package/src/plugins/evidence-retrieval-routes.ts +2179 -0
  228. package/src/plugins/gen-ai-normalizer.test.ts +680 -0
  229. package/src/plugins/gen-ai-normalizer.ts +302 -0
  230. package/src/plugins/identity-receiver.ts +96 -0
  231. package/src/plugins/issue-enrichment.ts +132 -0
  232. package/src/plugins/issue-insights.ts +81 -0
  233. package/src/plugins/logs-receiver.ts +160 -0
  234. package/src/plugins/metrics-receiver.ts +91 -0
  235. package/src/plugins/onboarding-routes.ts +54 -0
  236. package/src/plugins/otlp-receiver.ts +124 -0
  237. package/src/plugins/platform-routes.ts +165 -0
  238. package/src/plugins/profile-routes.ts +468 -0
  239. package/src/plugins/projects-routes.ts +92 -0
  240. package/src/plugins/query-routes.ts +220 -0
  241. package/src/plugins/redaction-processor.ts +132 -0
  242. package/src/plugins/replay-query-routes.test.ts +38 -0
  243. package/src/plugins/replay-query-routes.ts +199 -0
  244. package/src/plugins/replay-receiver.ts +81 -0
  245. package/src/plugins/tail-routes.test.ts +47 -0
  246. package/src/plugins/tail-routes.ts +42 -0
  247. package/src/plugins/timeline-routes.ts +244 -0
  248. package/src/plugins/ua-enrichment.ts +27 -0
  249. package/src/plugins/usage-normalization.ts +46 -0
  250. package/src/plugins/usage-privacy.ts +55 -0
  251. package/src/plugins/usage-query-routes.ts +102 -0
  252. package/src/plugins/usage-receiver.ts +129 -0
  253. package/src/plugins/users-query-routes.ts +78 -0
  254. package/src/plugins/utm-enrichment.ts +36 -0
@@ -0,0 +1,1329 @@
1
+ // Copyright 2019, OpenTelemetry Authors
2
+ //
3
+ // Licensed under the Apache License, Version 2.0 (the "License");
4
+ // you may not use this file except in compliance with the License.
5
+ // You may obtain a copy of the License at
6
+ //
7
+ // http://www.apache.org/licenses/LICENSE-2.0
8
+ //
9
+ // Unless required by applicable law or agreed to in writing, software
10
+ // distributed under the License is distributed on an "AS IS" BASIS,
11
+ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ // See the License for the specific language governing permissions and
13
+ // limitations under the License.
14
+
15
+ // @generated by protoc-gen-es v2.11.0 with parameter "target=ts,import_extension=js"
16
+ // @generated from file opentelemetry/proto/metrics/v1/metrics.proto (package opentelemetry.proto.metrics.v1, syntax proto3)
17
+ /* eslint-disable */
18
+
19
+ import type { Message } from "@bufbuild/protobuf";
20
+ import type {
21
+ GenEnum,
22
+ GenFile,
23
+ GenMessage,
24
+ } from "@bufbuild/protobuf/codegenv2";
25
+ import { enumDesc, fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv2";
26
+ import type {
27
+ InstrumentationScope,
28
+ KeyValue,
29
+ } from "../../common/v1/common_pb.js";
30
+ import { file_opentelemetry_proto_common_v1_common } from "../../common/v1/common_pb.js";
31
+ import type { Resource } from "../../resource/v1/resource_pb.js";
32
+ import { file_opentelemetry_proto_resource_v1_resource } from "../../resource/v1/resource_pb.js";
33
+
34
+ /**
35
+ * Describes the file opentelemetry/proto/metrics/v1/metrics.proto.
36
+ */
37
+ export const file_opentelemetry_proto_metrics_v1_metrics: GenFile =
38
+ /*@__PURE__*/
39
+ fileDesc(
40
+ "CixvcGVudGVsZW1ldHJ5L3Byb3RvL21ldHJpY3MvdjEvbWV0cmljcy5wcm90bxIeb3BlbnRlbGVtZXRyeS5wcm90by5tZXRyaWNzLnYxIlgKC01ldHJpY3NEYXRhEkkKEHJlc291cmNlX21ldHJpY3MYASADKAsyLy5vcGVudGVsZW1ldHJ5LnByb3RvLm1ldHJpY3MudjEuUmVzb3VyY2VNZXRyaWNzIq8BCg9SZXNvdXJjZU1ldHJpY3MSOwoIcmVzb3VyY2UYASABKAsyKS5vcGVudGVsZW1ldHJ5LnByb3RvLnJlc291cmNlLnYxLlJlc291cmNlEkMKDXNjb3BlX21ldHJpY3MYAiADKAsyLC5vcGVudGVsZW1ldHJ5LnByb3RvLm1ldHJpY3MudjEuU2NvcGVNZXRyaWNzEhIKCnNjaGVtYV91cmwYAyABKAlKBgjoBxDpByKfAQoMU2NvcGVNZXRyaWNzEkIKBXNjb3BlGAEgASgLMjMub3BlbnRlbGVtZXRyeS5wcm90by5jb21tb24udjEuSW5zdHJ1bWVudGF0aW9uU2NvcGUSNwoHbWV0cmljcxgCIAMoCzImLm9wZW50ZWxlbWV0cnkucHJvdG8ubWV0cmljcy52MS5NZXRyaWMSEgoKc2NoZW1hX3VybBgDIAEoCSLNAwoGTWV0cmljEgwKBG5hbWUYASABKAkSEwoLZGVzY3JpcHRpb24YAiABKAkSDAoEdW5pdBgDIAEoCRI2CgVnYXVnZRgFIAEoCzIlLm9wZW50ZWxlbWV0cnkucHJvdG8ubWV0cmljcy52MS5HYXVnZUgAEjIKA3N1bRgHIAEoCzIjLm9wZW50ZWxlbWV0cnkucHJvdG8ubWV0cmljcy52MS5TdW1IABI+CgloaXN0b2dyYW0YCSABKAsyKS5vcGVudGVsZW1ldHJ5LnByb3RvLm1ldHJpY3MudjEuSGlzdG9ncmFtSAASVQoVZXhwb25lbnRpYWxfaGlzdG9ncmFtGAogASgLMjQub3BlbnRlbGVtZXRyeS5wcm90by5tZXRyaWNzLnYxLkV4cG9uZW50aWFsSGlzdG9ncmFtSAASOgoHc3VtbWFyeRgLIAEoCzInLm9wZW50ZWxlbWV0cnkucHJvdG8ubWV0cmljcy52MS5TdW1tYXJ5SAASOQoIbWV0YWRhdGEYDCADKAsyJy5vcGVudGVsZW1ldHJ5LnByb3RvLmNvbW1vbi52MS5LZXlWYWx1ZUIGCgRkYXRhSgQIBBAFSgQIBhAHSgQICBAJIk0KBUdhdWdlEkQKC2RhdGFfcG9pbnRzGAEgAygLMi8ub3BlbnRlbGVtZXRyeS5wcm90by5tZXRyaWNzLnYxLk51bWJlckRhdGFQb2ludCK6AQoDU3VtEkQKC2RhdGFfcG9pbnRzGAEgAygLMi8ub3BlbnRlbGVtZXRyeS5wcm90by5tZXRyaWNzLnYxLk51bWJlckRhdGFQb2ludBJXChdhZ2dyZWdhdGlvbl90ZW1wb3JhbGl0eRgCIAEoDjI2Lm9wZW50ZWxlbWV0cnkucHJvdG8ubWV0cmljcy52MS5BZ2dyZWdhdGlvblRlbXBvcmFsaXR5EhQKDGlzX21vbm90b25pYxgDIAEoCCKtAQoJSGlzdG9ncmFtEkcKC2RhdGFfcG9pbnRzGAEgAygLMjIub3BlbnRlbGVtZXRyeS5wcm90by5tZXRyaWNzLnYxLkhpc3RvZ3JhbURhdGFQb2ludBJXChdhZ2dyZWdhdGlvbl90ZW1wb3JhbGl0eRgCIAEoDjI2Lm9wZW50ZWxlbWV0cnkucHJvdG8ubWV0cmljcy52MS5BZ2dyZWdhdGlvblRlbXBvcmFsaXR5IsMBChRFeHBvbmVudGlhbEhpc3RvZ3JhbRJSCgtkYXRhX3BvaW50cxgBIAMoCzI9Lm9wZW50ZWxlbWV0cnkucHJvdG8ubWV0cmljcy52MS5FeHBvbmVudGlhbEhpc3RvZ3JhbURhdGFQb2ludBJXChdhZ2dyZWdhdGlvbl90ZW1wb3JhbGl0eRgCIAEoDjI2Lm9wZW50ZWxlbWV0cnkucHJvdG8ubWV0cmljcy52MS5BZ2dyZWdhdGlvblRlbXBvcmFsaXR5IlAKB1N1bW1hcnkSRQoLZGF0YV9wb2ludHMYASADKAsyMC5vcGVudGVsZW1ldHJ5LnByb3RvLm1ldHJpY3MudjEuU3VtbWFyeURhdGFQb2ludCKGAgoPTnVtYmVyRGF0YVBvaW50EjsKCmF0dHJpYnV0ZXMYByADKAsyJy5vcGVudGVsZW1ldHJ5LnByb3RvLmNvbW1vbi52MS5LZXlWYWx1ZRIcChRzdGFydF90aW1lX3VuaXhfbmFubxgCIAEoBhIWCg50aW1lX3VuaXhfbmFubxgDIAEoBhITCglhc19kb3VibGUYBCABKAFIABIQCgZhc19pbnQYBiABKBBIABI7CglleGVtcGxhcnMYBSADKAsyKC5vcGVudGVsZW1ldHJ5LnByb3RvLm1ldHJpY3MudjEuRXhlbXBsYXISDQoFZmxhZ3MYCCABKA1CBwoFdmFsdWVKBAgBEAIi5gIKEkhpc3RvZ3JhbURhdGFQb2ludBI7CgphdHRyaWJ1dGVzGAkgAygLMicub3BlbnRlbGVtZXRyeS5wcm90by5jb21tb24udjEuS2V5VmFsdWUSHAoUc3RhcnRfdGltZV91bml4X25hbm8YAiABKAYSFgoOdGltZV91bml4X25hbm8YAyABKAYSDQoFY291bnQYBCABKAYSEAoDc3VtGAUgASgBSACIAQESFQoNYnVja2V0X2NvdW50cxgGIAMoBhIXCg9leHBsaWNpdF9ib3VuZHMYByADKAESOwoJZXhlbXBsYXJzGAggAygLMigub3BlbnRlbGVtZXRyeS5wcm90by5tZXRyaWNzLnYxLkV4ZW1wbGFyEg0KBWZsYWdzGAogASgNEhAKA21pbhgLIAEoAUgBiAEBEhAKA21heBgMIAEoAUgCiAEBQgYKBF9zdW1CBgoEX21pbkIGCgRfbWF4SgQIARACItoECh1FeHBvbmVudGlhbEhpc3RvZ3JhbURhdGFQb2ludBI7CgphdHRyaWJ1dGVzGAEgAygLMicub3BlbnRlbGVtZXRyeS5wcm90by5jb21tb24udjEuS2V5VmFsdWUSHAoUc3RhcnRfdGltZV91bml4X25hbm8YAiABKAYSFgoOdGltZV91bml4X25hbm8YAyABKAYSDQoFY291bnQYBCABKAYSEAoDc3VtGAUgASgBSACIAQESDQoFc2NhbGUYBiABKBESEgoKemVyb19jb3VudBgHIAEoBhJXCghwb3NpdGl2ZRgIIAEoCzJFLm9wZW50ZWxlbWV0cnkucHJvdG8ubWV0cmljcy52MS5FeHBvbmVudGlhbEhpc3RvZ3JhbURhdGFQb2ludC5CdWNrZXRzElcKCG5lZ2F0aXZlGAkgASgLMkUub3BlbnRlbGVtZXRyeS5wcm90by5tZXRyaWNzLnYxLkV4cG9uZW50aWFsSGlzdG9ncmFtRGF0YVBvaW50LkJ1Y2tldHMSDQoFZmxhZ3MYCiABKA0SOwoJZXhlbXBsYXJzGAsgAygLMigub3BlbnRlbGVtZXRyeS5wcm90by5tZXRyaWNzLnYxLkV4ZW1wbGFyEhAKA21pbhgMIAEoAUgBiAEBEhAKA21heBgNIAEoAUgCiAEBEhYKDnplcm9fdGhyZXNob2xkGA4gASgBGjAKB0J1Y2tldHMSDgoGb2Zmc2V0GAEgASgREhUKDWJ1Y2tldF9jb3VudHMYAiADKARCBgoEX3N1bUIGCgRfbWluQgYKBF9tYXgixQIKEFN1bW1hcnlEYXRhUG9pbnQSOwoKYXR0cmlidXRlcxgHIAMoCzInLm9wZW50ZWxlbWV0cnkucHJvdG8uY29tbW9uLnYxLktleVZhbHVlEhwKFHN0YXJ0X3RpbWVfdW5peF9uYW5vGAIgASgGEhYKDnRpbWVfdW5peF9uYW5vGAMgASgGEg0KBWNvdW50GAQgASgGEgsKA3N1bRgFIAEoARJZCg9xdWFudGlsZV92YWx1ZXMYBiADKAsyQC5vcGVudGVsZW1ldHJ5LnByb3RvLm1ldHJpY3MudjEuU3VtbWFyeURhdGFQb2ludC5WYWx1ZUF0UXVhbnRpbGUSDQoFZmxhZ3MYCCABKA0aMgoPVmFsdWVBdFF1YW50aWxlEhAKCHF1YW50aWxlGAEgASgBEg0KBXZhbHVlGAIgASgBSgQIARACIsEBCghFeGVtcGxhchJEChNmaWx0ZXJlZF9hdHRyaWJ1dGVzGAcgAygLMicub3BlbnRlbGVtZXRyeS5wcm90by5jb21tb24udjEuS2V5VmFsdWUSFgoOdGltZV91bml4X25hbm8YAiABKAYSEwoJYXNfZG91YmxlGAMgASgBSAASEAoGYXNfaW50GAYgASgQSAASDwoHc3Bhbl9pZBgEIAEoDBIQCgh0cmFjZV9pZBgFIAEoDEIHCgV2YWx1ZUoECAEQAiqMAQoWQWdncmVnYXRpb25UZW1wb3JhbGl0eRInCiNBR0dSRUdBVElPTl9URU1QT1JBTElUWV9VTlNQRUNJRklFRBAAEiEKHUFHR1JFR0FUSU9OX1RFTVBPUkFMSVRZX0RFTFRBEAESJgoiQUdHUkVHQVRJT05fVEVNUE9SQUxJVFlfQ1VNVUxBVElWRRACKl4KDkRhdGFQb2ludEZsYWdzEh8KG0RBVEFfUE9JTlRfRkxBR1NfRE9fTk9UX1VTRRAAEisKJ0RBVEFfUE9JTlRfRkxBR1NfTk9fUkVDT1JERURfVkFMVUVfTUFTSxABQn8KIWlvLm9wZW50ZWxlbWV0cnkucHJvdG8ubWV0cmljcy52MUIMTWV0cmljc1Byb3RvUAFaKWdvLm9wZW50ZWxlbWV0cnkuaW8vcHJvdG8vb3RscC9tZXRyaWNzL3YxqgIeT3BlblRlbGVtZXRyeS5Qcm90by5NZXRyaWNzLlYxYgZwcm90bzM",
41
+ [
42
+ file_opentelemetry_proto_common_v1_common,
43
+ file_opentelemetry_proto_resource_v1_resource,
44
+ ],
45
+ );
46
+
47
+ /**
48
+ * MetricsData represents the metrics data that can be stored in a persistent
49
+ * storage, OR can be embedded by other protocols that transfer OTLP metrics
50
+ * data but do not implement the OTLP protocol.
51
+ *
52
+ * MetricsData
53
+ * └─── ResourceMetrics
54
+ * ├── Resource
55
+ * ├── SchemaURL
56
+ * └── ScopeMetrics
57
+ * ├── Scope
58
+ * ├── SchemaURL
59
+ * └── Metric
60
+ * ├── Name
61
+ * ├── Description
62
+ * ├── Unit
63
+ * └── data
64
+ * ├── Gauge
65
+ * ├── Sum
66
+ * ├── Histogram
67
+ * ├── ExponentialHistogram
68
+ * └── Summary
69
+ *
70
+ * The main difference between this message and collector protocol is that
71
+ * in this message there will not be any "control" or "metadata" specific to
72
+ * OTLP protocol.
73
+ *
74
+ * When new fields are added into this message, the OTLP request MUST be updated
75
+ * as well.
76
+ *
77
+ * @generated from message opentelemetry.proto.metrics.v1.MetricsData
78
+ */
79
+ export type MetricsData =
80
+ Message<"opentelemetry.proto.metrics.v1.MetricsData"> & {
81
+ /**
82
+ * An array of ResourceMetrics.
83
+ * For data coming from a single resource this array will typically contain
84
+ * one element. Intermediary nodes that receive data from multiple origins
85
+ * typically batch the data before forwarding further and in that case this
86
+ * array will contain multiple elements.
87
+ *
88
+ * @generated from field: repeated opentelemetry.proto.metrics.v1.ResourceMetrics resource_metrics = 1;
89
+ */
90
+ resourceMetrics: ResourceMetrics[];
91
+ };
92
+
93
+ /**
94
+ * Describes the message opentelemetry.proto.metrics.v1.MetricsData.
95
+ * Use `create(MetricsDataSchema)` to create a new message.
96
+ */
97
+ export const MetricsDataSchema: GenMessage<MetricsData> =
98
+ /*@__PURE__*/
99
+ messageDesc(file_opentelemetry_proto_metrics_v1_metrics, 0);
100
+
101
+ /**
102
+ * A collection of ScopeMetrics from a Resource.
103
+ *
104
+ * @generated from message opentelemetry.proto.metrics.v1.ResourceMetrics
105
+ */
106
+ export type ResourceMetrics =
107
+ Message<"opentelemetry.proto.metrics.v1.ResourceMetrics"> & {
108
+ /**
109
+ * The resource for the metrics in this message.
110
+ * If this field is not set then no resource info is known.
111
+ *
112
+ * @generated from field: opentelemetry.proto.resource.v1.Resource resource = 1;
113
+ */
114
+ resource?: Resource;
115
+
116
+ /**
117
+ * A list of metrics that originate from a resource.
118
+ *
119
+ * @generated from field: repeated opentelemetry.proto.metrics.v1.ScopeMetrics scope_metrics = 2;
120
+ */
121
+ scopeMetrics: ScopeMetrics[];
122
+
123
+ /**
124
+ * The Schema URL, if known. This is the identifier of the Schema that the resource data
125
+ * is recorded in. Notably, the last part of the URL path is the version number of the
126
+ * schema: http[s]://server[:port]/path/<version>. To learn more about Schema URL see
127
+ * https://opentelemetry.io/docs/specs/otel/schemas/#schema-url
128
+ * This schema_url applies to the data in the "resource" field. It does not apply
129
+ * to the data in the "scope_metrics" field which have their own schema_url field.
130
+ *
131
+ * @generated from field: string schema_url = 3;
132
+ */
133
+ schemaUrl: string;
134
+ };
135
+
136
+ /**
137
+ * Describes the message opentelemetry.proto.metrics.v1.ResourceMetrics.
138
+ * Use `create(ResourceMetricsSchema)` to create a new message.
139
+ */
140
+ export const ResourceMetricsSchema: GenMessage<ResourceMetrics> =
141
+ /*@__PURE__*/
142
+ messageDesc(file_opentelemetry_proto_metrics_v1_metrics, 1);
143
+
144
+ /**
145
+ * A collection of Metrics produced by an Scope.
146
+ *
147
+ * @generated from message opentelemetry.proto.metrics.v1.ScopeMetrics
148
+ */
149
+ export type ScopeMetrics =
150
+ Message<"opentelemetry.proto.metrics.v1.ScopeMetrics"> & {
151
+ /**
152
+ * The instrumentation scope information for the metrics in this message.
153
+ * Semantically when InstrumentationScope isn't set, it is equivalent with
154
+ * an empty instrumentation scope name (unknown).
155
+ *
156
+ * @generated from field: opentelemetry.proto.common.v1.InstrumentationScope scope = 1;
157
+ */
158
+ scope?: InstrumentationScope;
159
+
160
+ /**
161
+ * A list of metrics that originate from an instrumentation library.
162
+ *
163
+ * @generated from field: repeated opentelemetry.proto.metrics.v1.Metric metrics = 2;
164
+ */
165
+ metrics: Metric[];
166
+
167
+ /**
168
+ * The Schema URL, if known. This is the identifier of the Schema that the metric data
169
+ * is recorded in. Notably, the last part of the URL path is the version number of the
170
+ * schema: http[s]://server[:port]/path/<version>. To learn more about Schema URL see
171
+ * https://opentelemetry.io/docs/specs/otel/schemas/#schema-url
172
+ * This schema_url applies to all metrics in the "metrics" field.
173
+ *
174
+ * @generated from field: string schema_url = 3;
175
+ */
176
+ schemaUrl: string;
177
+ };
178
+
179
+ /**
180
+ * Describes the message opentelemetry.proto.metrics.v1.ScopeMetrics.
181
+ * Use `create(ScopeMetricsSchema)` to create a new message.
182
+ */
183
+ export const ScopeMetricsSchema: GenMessage<ScopeMetrics> =
184
+ /*@__PURE__*/
185
+ messageDesc(file_opentelemetry_proto_metrics_v1_metrics, 2);
186
+
187
+ /**
188
+ * Defines a Metric which has one or more timeseries. The following is a
189
+ * brief summary of the Metric data model. For more details, see:
190
+ *
191
+ * https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/data-model.md
192
+ *
193
+ * The data model and relation between entities is shown in the
194
+ * diagram below. Here, "DataPoint" is the term used to refer to any
195
+ * one of the specific data point value types, and "points" is the term used
196
+ * to refer to any one of the lists of points contained in the Metric.
197
+ *
198
+ * - Metric is composed of a metadata and data.
199
+ * - Metadata part contains a name, description, unit.
200
+ * - Data is one of the possible types (Sum, Gauge, Histogram, Summary).
201
+ * - DataPoint contains timestamps, attributes, and one of the possible value type
202
+ * fields.
203
+ *
204
+ * Metric
205
+ * +------------+
206
+ * |name |
207
+ * |description |
208
+ * |unit | +------------------------------------+
209
+ * |data |---> |Gauge, Sum, Histogram, Summary, ... |
210
+ * +------------+ +------------------------------------+
211
+ *
212
+ * Data [One of Gauge, Sum, Histogram, Summary, ...]
213
+ * +-----------+
214
+ * |... | // Metadata about the Data.
215
+ * |points |--+
216
+ * +-----------+ |
217
+ * | +---------------------------+
218
+ * | |DataPoint 1 |
219
+ * v |+------+------+ +------+ |
220
+ * +-----+ ||label |label |...|label | |
221
+ * | 1 |-->||value1|value2|...|valueN| |
222
+ * +-----+ |+------+------+ +------+ |
223
+ * | . | |+-----+ |
224
+ * | . | ||value| |
225
+ * | . | |+-----+ |
226
+ * | . | +---------------------------+
227
+ * | . | .
228
+ * | . | .
229
+ * | . | .
230
+ * | . | +---------------------------+
231
+ * | . | |DataPoint M |
232
+ * +-----+ |+------+------+ +------+ |
233
+ * | M |-->||label |label |...|label | |
234
+ * +-----+ ||value1|value2|...|valueN| |
235
+ * |+------+------+ +------+ |
236
+ * |+-----+ |
237
+ * ||value| |
238
+ * |+-----+ |
239
+ * +---------------------------+
240
+ *
241
+ * Each distinct type of DataPoint represents the output of a specific
242
+ * aggregation function, the result of applying the DataPoint's
243
+ * associated function of to one or more measurements.
244
+ *
245
+ * All DataPoint types have three common fields:
246
+ * - Attributes includes key-value pairs associated with the data point
247
+ * - TimeUnixNano is required, set to the end time of the aggregation
248
+ * - StartTimeUnixNano is optional, but strongly encouraged for DataPoints
249
+ * having an AggregationTemporality field, as discussed below.
250
+ *
251
+ * Both TimeUnixNano and StartTimeUnixNano values are expressed as
252
+ * UNIX Epoch time in nanoseconds since 00:00:00 UTC on 1 January 1970.
253
+ *
254
+ * # TimeUnixNano
255
+ *
256
+ * This field is required, having consistent interpretation across
257
+ * DataPoint types. TimeUnixNano is the moment corresponding to when
258
+ * the data point's aggregate value was captured.
259
+ *
260
+ * Data points with the 0 value for TimeUnixNano SHOULD be rejected
261
+ * by consumers.
262
+ *
263
+ * # StartTimeUnixNano
264
+ *
265
+ * StartTimeUnixNano in general allows detecting when a sequence of
266
+ * observations is unbroken. This field indicates to consumers the
267
+ * start time for points with cumulative and delta
268
+ * AggregationTemporality, and it should be included whenever possible
269
+ * to support correct rate calculation. Although it may be omitted
270
+ * when the start time is truly unknown, setting StartTimeUnixNano is
271
+ * strongly encouraged.
272
+ *
273
+ * @generated from message opentelemetry.proto.metrics.v1.Metric
274
+ */
275
+ export type Metric = Message<"opentelemetry.proto.metrics.v1.Metric"> & {
276
+ /**
277
+ * name of the metric.
278
+ *
279
+ * @generated from field: string name = 1;
280
+ */
281
+ name: string;
282
+
283
+ /**
284
+ * description of the metric, which can be used in documentation.
285
+ *
286
+ * @generated from field: string description = 2;
287
+ */
288
+ description: string;
289
+
290
+ /**
291
+ * unit in which the metric value is reported. Follows the format
292
+ * described by https://unitsofmeasure.org/ucum.html.
293
+ *
294
+ * @generated from field: string unit = 3;
295
+ */
296
+ unit: string;
297
+
298
+ /**
299
+ * Data determines the aggregation type (if any) of the metric, what is the
300
+ * reported value type for the data points, as well as the relatationship to
301
+ * the time interval over which they are reported.
302
+ *
303
+ * @generated from oneof opentelemetry.proto.metrics.v1.Metric.data
304
+ */
305
+ data:
306
+ | {
307
+ /**
308
+ * @generated from field: opentelemetry.proto.metrics.v1.Gauge gauge = 5;
309
+ */
310
+ value: Gauge;
311
+ case: "gauge";
312
+ }
313
+ | {
314
+ /**
315
+ * @generated from field: opentelemetry.proto.metrics.v1.Sum sum = 7;
316
+ */
317
+ value: Sum;
318
+ case: "sum";
319
+ }
320
+ | {
321
+ /**
322
+ * @generated from field: opentelemetry.proto.metrics.v1.Histogram histogram = 9;
323
+ */
324
+ value: Histogram;
325
+ case: "histogram";
326
+ }
327
+ | {
328
+ /**
329
+ * @generated from field: opentelemetry.proto.metrics.v1.ExponentialHistogram exponential_histogram = 10;
330
+ */
331
+ value: ExponentialHistogram;
332
+ case: "exponentialHistogram";
333
+ }
334
+ | {
335
+ /**
336
+ * @generated from field: opentelemetry.proto.metrics.v1.Summary summary = 11;
337
+ */
338
+ value: Summary;
339
+ case: "summary";
340
+ }
341
+ | { case: undefined; value?: undefined };
342
+
343
+ /**
344
+ * Additional metadata attributes that describe the metric. [Optional].
345
+ * Attributes are non-identifying.
346
+ * Consumers SHOULD NOT need to be aware of these attributes.
347
+ * These attributes MAY be used to encode information allowing
348
+ * for lossless roundtrip translation to / from another data model.
349
+ * Attribute keys MUST be unique (it is not allowed to have more than one
350
+ * attribute with the same key).
351
+ *
352
+ * @generated from field: repeated opentelemetry.proto.common.v1.KeyValue metadata = 12;
353
+ */
354
+ metadata: KeyValue[];
355
+ };
356
+
357
+ /**
358
+ * Describes the message opentelemetry.proto.metrics.v1.Metric.
359
+ * Use `create(MetricSchema)` to create a new message.
360
+ */
361
+ export const MetricSchema: GenMessage<Metric> =
362
+ /*@__PURE__*/
363
+ messageDesc(file_opentelemetry_proto_metrics_v1_metrics, 3);
364
+
365
+ /**
366
+ * Gauge represents the type of a scalar metric that always exports the
367
+ * "current value" for every data point. It should be used for an "unknown"
368
+ * aggregation.
369
+ *
370
+ * A Gauge does not support different aggregation temporalities. Given the
371
+ * aggregation is unknown, points cannot be combined using the same
372
+ * aggregation, regardless of aggregation temporalities. Therefore,
373
+ * AggregationTemporality is not included. Consequently, this also means
374
+ * "StartTimeUnixNano" is ignored for all data points.
375
+ *
376
+ * @generated from message opentelemetry.proto.metrics.v1.Gauge
377
+ */
378
+ export type Gauge = Message<"opentelemetry.proto.metrics.v1.Gauge"> & {
379
+ /**
380
+ * @generated from field: repeated opentelemetry.proto.metrics.v1.NumberDataPoint data_points = 1;
381
+ */
382
+ dataPoints: NumberDataPoint[];
383
+ };
384
+
385
+ /**
386
+ * Describes the message opentelemetry.proto.metrics.v1.Gauge.
387
+ * Use `create(GaugeSchema)` to create a new message.
388
+ */
389
+ export const GaugeSchema: GenMessage<Gauge> =
390
+ /*@__PURE__*/
391
+ messageDesc(file_opentelemetry_proto_metrics_v1_metrics, 4);
392
+
393
+ /**
394
+ * Sum represents the type of a scalar metric that is calculated as a sum of all
395
+ * reported measurements over a time interval.
396
+ *
397
+ * @generated from message opentelemetry.proto.metrics.v1.Sum
398
+ */
399
+ export type Sum = Message<"opentelemetry.proto.metrics.v1.Sum"> & {
400
+ /**
401
+ * @generated from field: repeated opentelemetry.proto.metrics.v1.NumberDataPoint data_points = 1;
402
+ */
403
+ dataPoints: NumberDataPoint[];
404
+
405
+ /**
406
+ * aggregation_temporality describes if the aggregator reports delta changes
407
+ * since last report time, or cumulative changes since a fixed start time.
408
+ *
409
+ * @generated from field: opentelemetry.proto.metrics.v1.AggregationTemporality aggregation_temporality = 2;
410
+ */
411
+ aggregationTemporality: AggregationTemporality;
412
+
413
+ /**
414
+ * If "true" means that the sum is monotonic.
415
+ *
416
+ * @generated from field: bool is_monotonic = 3;
417
+ */
418
+ isMonotonic: boolean;
419
+ };
420
+
421
+ /**
422
+ * Describes the message opentelemetry.proto.metrics.v1.Sum.
423
+ * Use `create(SumSchema)` to create a new message.
424
+ */
425
+ export const SumSchema: GenMessage<Sum> =
426
+ /*@__PURE__*/
427
+ messageDesc(file_opentelemetry_proto_metrics_v1_metrics, 5);
428
+
429
+ /**
430
+ * Histogram represents the type of a metric that is calculated by aggregating
431
+ * as a Histogram of all reported measurements over a time interval.
432
+ *
433
+ * @generated from message opentelemetry.proto.metrics.v1.Histogram
434
+ */
435
+ export type Histogram = Message<"opentelemetry.proto.metrics.v1.Histogram"> & {
436
+ /**
437
+ * @generated from field: repeated opentelemetry.proto.metrics.v1.HistogramDataPoint data_points = 1;
438
+ */
439
+ dataPoints: HistogramDataPoint[];
440
+
441
+ /**
442
+ * aggregation_temporality describes if the aggregator reports delta changes
443
+ * since last report time, or cumulative changes since a fixed start time.
444
+ *
445
+ * @generated from field: opentelemetry.proto.metrics.v1.AggregationTemporality aggregation_temporality = 2;
446
+ */
447
+ aggregationTemporality: AggregationTemporality;
448
+ };
449
+
450
+ /**
451
+ * Describes the message opentelemetry.proto.metrics.v1.Histogram.
452
+ * Use `create(HistogramSchema)` to create a new message.
453
+ */
454
+ export const HistogramSchema: GenMessage<Histogram> =
455
+ /*@__PURE__*/
456
+ messageDesc(file_opentelemetry_proto_metrics_v1_metrics, 6);
457
+
458
+ /**
459
+ * ExponentialHistogram represents the type of a metric that is calculated by aggregating
460
+ * as a ExponentialHistogram of all reported double measurements over a time interval.
461
+ *
462
+ * @generated from message opentelemetry.proto.metrics.v1.ExponentialHistogram
463
+ */
464
+ export type ExponentialHistogram =
465
+ Message<"opentelemetry.proto.metrics.v1.ExponentialHistogram"> & {
466
+ /**
467
+ * @generated from field: repeated opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint data_points = 1;
468
+ */
469
+ dataPoints: ExponentialHistogramDataPoint[];
470
+
471
+ /**
472
+ * aggregation_temporality describes if the aggregator reports delta changes
473
+ * since last report time, or cumulative changes since a fixed start time.
474
+ *
475
+ * @generated from field: opentelemetry.proto.metrics.v1.AggregationTemporality aggregation_temporality = 2;
476
+ */
477
+ aggregationTemporality: AggregationTemporality;
478
+ };
479
+
480
+ /**
481
+ * Describes the message opentelemetry.proto.metrics.v1.ExponentialHistogram.
482
+ * Use `create(ExponentialHistogramSchema)` to create a new message.
483
+ */
484
+ export const ExponentialHistogramSchema: GenMessage<ExponentialHistogram> =
485
+ /*@__PURE__*/
486
+ messageDesc(file_opentelemetry_proto_metrics_v1_metrics, 7);
487
+
488
+ /**
489
+ * Summary metric data are used to convey quantile summaries,
490
+ * a Prometheus (see: https://prometheus.io/docs/concepts/metric_types/#summary)
491
+ * and OpenMetrics (see: https://github.com/prometheus/OpenMetrics/blob/4dbf6075567ab43296eed941037c12951faafb92/protos/prometheus.proto#L45)
492
+ * data type. These data points cannot always be merged in a meaningful way.
493
+ * While they can be useful in some applications, histogram data points are
494
+ * recommended for new applications.
495
+ * Summary metrics do not have an aggregation temporality field. This is
496
+ * because the count and sum fields of a SummaryDataPoint are assumed to be
497
+ * cumulative values.
498
+ *
499
+ * @generated from message opentelemetry.proto.metrics.v1.Summary
500
+ */
501
+ export type Summary = Message<"opentelemetry.proto.metrics.v1.Summary"> & {
502
+ /**
503
+ * @generated from field: repeated opentelemetry.proto.metrics.v1.SummaryDataPoint data_points = 1;
504
+ */
505
+ dataPoints: SummaryDataPoint[];
506
+ };
507
+
508
+ /**
509
+ * Describes the message opentelemetry.proto.metrics.v1.Summary.
510
+ * Use `create(SummarySchema)` to create a new message.
511
+ */
512
+ export const SummarySchema: GenMessage<Summary> =
513
+ /*@__PURE__*/
514
+ messageDesc(file_opentelemetry_proto_metrics_v1_metrics, 8);
515
+
516
+ /**
517
+ * NumberDataPoint is a single data point in a timeseries that describes the
518
+ * time-varying scalar value of a metric.
519
+ *
520
+ * @generated from message opentelemetry.proto.metrics.v1.NumberDataPoint
521
+ */
522
+ export type NumberDataPoint =
523
+ Message<"opentelemetry.proto.metrics.v1.NumberDataPoint"> & {
524
+ /**
525
+ * The set of key/value pairs that uniquely identify the timeseries from
526
+ * where this point belongs. The list may be empty (may contain 0 elements).
527
+ * Attribute keys MUST be unique (it is not allowed to have more than one
528
+ * attribute with the same key).
529
+ *
530
+ * The attribute values SHOULD NOT contain empty values.
531
+ * The attribute values SHOULD NOT contain bytes values.
532
+ * The attribute values SHOULD NOT contain array values different than array of string values, bool values, int values,
533
+ * double values.
534
+ * The attribute values SHOULD NOT contain kvlist values.
535
+ * The behavior of software that receives attributes containing such values can be unpredictable.
536
+ * These restrictions can change in a minor release.
537
+ * The restrictions take origin from the OpenTelemetry specification:
538
+ * https://github.com/open-telemetry/opentelemetry-specification/blob/v1.47.0/specification/common/README.md#attribute.
539
+ *
540
+ * @generated from field: repeated opentelemetry.proto.common.v1.KeyValue attributes = 7;
541
+ */
542
+ attributes: KeyValue[];
543
+
544
+ /**
545
+ * StartTimeUnixNano is optional but strongly encouraged, see the
546
+ * the detailed comments above Metric.
547
+ *
548
+ * Value is UNIX Epoch time in nanoseconds since 00:00:00 UTC on 1 January
549
+ * 1970.
550
+ *
551
+ * @generated from field: fixed64 start_time_unix_nano = 2;
552
+ */
553
+ startTimeUnixNano: bigint;
554
+
555
+ /**
556
+ * TimeUnixNano is required, see the detailed comments above Metric.
557
+ *
558
+ * Value is UNIX Epoch time in nanoseconds since 00:00:00 UTC on 1 January
559
+ * 1970.
560
+ *
561
+ * @generated from field: fixed64 time_unix_nano = 3;
562
+ */
563
+ timeUnixNano: bigint;
564
+
565
+ /**
566
+ * The value itself. A point is considered invalid when one of the recognized
567
+ * value fields is not present inside this oneof.
568
+ *
569
+ * @generated from oneof opentelemetry.proto.metrics.v1.NumberDataPoint.value
570
+ */
571
+ value:
572
+ | {
573
+ /**
574
+ * @generated from field: double as_double = 4;
575
+ */
576
+ value: number;
577
+ case: "asDouble";
578
+ }
579
+ | {
580
+ /**
581
+ * @generated from field: sfixed64 as_int = 6;
582
+ */
583
+ value: bigint;
584
+ case: "asInt";
585
+ }
586
+ | { case: undefined; value?: undefined };
587
+
588
+ /**
589
+ * (Optional) List of exemplars collected from
590
+ * measurements that were used to form the data point
591
+ *
592
+ * @generated from field: repeated opentelemetry.proto.metrics.v1.Exemplar exemplars = 5;
593
+ */
594
+ exemplars: Exemplar[];
595
+
596
+ /**
597
+ * Flags that apply to this specific data point. See DataPointFlags
598
+ * for the available flags and their meaning.
599
+ *
600
+ * @generated from field: uint32 flags = 8;
601
+ */
602
+ flags: number;
603
+ };
604
+
605
+ /**
606
+ * Describes the message opentelemetry.proto.metrics.v1.NumberDataPoint.
607
+ * Use `create(NumberDataPointSchema)` to create a new message.
608
+ */
609
+ export const NumberDataPointSchema: GenMessage<NumberDataPoint> =
610
+ /*@__PURE__*/
611
+ messageDesc(file_opentelemetry_proto_metrics_v1_metrics, 9);
612
+
613
+ /**
614
+ * HistogramDataPoint is a single data point in a timeseries that describes the
615
+ * time-varying values of a Histogram. A Histogram contains summary statistics
616
+ * for a population of values, it may optionally contain the distribution of
617
+ * those values across a set of buckets.
618
+ *
619
+ * If the histogram contains the distribution of values, then both
620
+ * "explicit_bounds" and "bucket counts" fields must be defined.
621
+ * If the histogram does not contain the distribution of values, then both
622
+ * "explicit_bounds" and "bucket_counts" must be omitted and only "count" and
623
+ * "sum" are known.
624
+ *
625
+ * @generated from message opentelemetry.proto.metrics.v1.HistogramDataPoint
626
+ */
627
+ export type HistogramDataPoint =
628
+ Message<"opentelemetry.proto.metrics.v1.HistogramDataPoint"> & {
629
+ /**
630
+ * The set of key/value pairs that uniquely identify the timeseries from
631
+ * where this point belongs. The list may be empty (may contain 0 elements).
632
+ * Attribute keys MUST be unique (it is not allowed to have more than one
633
+ * attribute with the same key).
634
+ *
635
+ * The attribute values SHOULD NOT contain empty values.
636
+ * The attribute values SHOULD NOT contain bytes values.
637
+ * The attribute values SHOULD NOT contain array values different than array of string values, bool values, int values,
638
+ * double values.
639
+ * The attribute values SHOULD NOT contain kvlist values.
640
+ * The behavior of software that receives attributes containing such values can be unpredictable.
641
+ * These restrictions can change in a minor release.
642
+ * The restrictions take origin from the OpenTelemetry specification:
643
+ * https://github.com/open-telemetry/opentelemetry-specification/blob/v1.47.0/specification/common/README.md#attribute.
644
+ *
645
+ * @generated from field: repeated opentelemetry.proto.common.v1.KeyValue attributes = 9;
646
+ */
647
+ attributes: KeyValue[];
648
+
649
+ /**
650
+ * StartTimeUnixNano is optional but strongly encouraged, see the
651
+ * the detailed comments above Metric.
652
+ *
653
+ * Value is UNIX Epoch time in nanoseconds since 00:00:00 UTC on 1 January
654
+ * 1970.
655
+ *
656
+ * @generated from field: fixed64 start_time_unix_nano = 2;
657
+ */
658
+ startTimeUnixNano: bigint;
659
+
660
+ /**
661
+ * TimeUnixNano is required, see the detailed comments above Metric.
662
+ *
663
+ * Value is UNIX Epoch time in nanoseconds since 00:00:00 UTC on 1 January
664
+ * 1970.
665
+ *
666
+ * @generated from field: fixed64 time_unix_nano = 3;
667
+ */
668
+ timeUnixNano: bigint;
669
+
670
+ /**
671
+ * count is the number of values in the population. Must be non-negative. This
672
+ * value must be equal to the sum of the "count" fields in buckets if a
673
+ * histogram is provided.
674
+ *
675
+ * @generated from field: fixed64 count = 4;
676
+ */
677
+ count: bigint;
678
+
679
+ /**
680
+ * sum of the values in the population. If count is zero then this field
681
+ * must be zero.
682
+ *
683
+ * Note: Sum should only be filled out when measuring non-negative discrete
684
+ * events, and is assumed to be monotonic over the values of these events.
685
+ * Negative events *can* be recorded, but sum should not be filled out when
686
+ * doing so. This is specifically to enforce compatibility w/ OpenMetrics,
687
+ * see: https://github.com/prometheus/OpenMetrics/blob/v1.0.0/specification/OpenMetrics.md#histogram
688
+ *
689
+ * @generated from field: optional double sum = 5;
690
+ */
691
+ sum?: number;
692
+
693
+ /**
694
+ * bucket_counts is an optional field contains the count values of histogram
695
+ * for each bucket.
696
+ *
697
+ * The sum of the bucket_counts must equal the value in the count field.
698
+ *
699
+ * The number of elements in bucket_counts array must be by one greater than
700
+ * the number of elements in explicit_bounds array. The exception to this rule
701
+ * is when the length of bucket_counts is 0, then the length of explicit_bounds
702
+ * must also be 0.
703
+ *
704
+ * @generated from field: repeated fixed64 bucket_counts = 6;
705
+ */
706
+ bucketCounts: bigint[];
707
+
708
+ /**
709
+ * explicit_bounds specifies buckets with explicitly defined bounds for values.
710
+ *
711
+ * The boundaries for bucket at index i are:
712
+ *
713
+ * (-infinity, explicit_bounds[i]] for i == 0
714
+ * (explicit_bounds[i-1], explicit_bounds[i]] for 0 < i < size(explicit_bounds)
715
+ * (explicit_bounds[i-1], +infinity) for i == size(explicit_bounds)
716
+ *
717
+ * The values in the explicit_bounds array must be strictly increasing.
718
+ *
719
+ * Histogram buckets are inclusive of their upper boundary, except the last
720
+ * bucket where the boundary is at infinity. This format is intentionally
721
+ * compatible with the OpenMetrics histogram definition.
722
+ *
723
+ * If bucket_counts length is 0 then explicit_bounds length must also be 0,
724
+ * otherwise the data point is invalid.
725
+ *
726
+ * @generated from field: repeated double explicit_bounds = 7;
727
+ */
728
+ explicitBounds: number[];
729
+
730
+ /**
731
+ * (Optional) List of exemplars collected from
732
+ * measurements that were used to form the data point
733
+ *
734
+ * @generated from field: repeated opentelemetry.proto.metrics.v1.Exemplar exemplars = 8;
735
+ */
736
+ exemplars: Exemplar[];
737
+
738
+ /**
739
+ * Flags that apply to this specific data point. See DataPointFlags
740
+ * for the available flags and their meaning.
741
+ *
742
+ * @generated from field: uint32 flags = 10;
743
+ */
744
+ flags: number;
745
+
746
+ /**
747
+ * min is the minimum value over (start_time, end_time].
748
+ *
749
+ * @generated from field: optional double min = 11;
750
+ */
751
+ min?: number;
752
+
753
+ /**
754
+ * max is the maximum value over (start_time, end_time].
755
+ *
756
+ * @generated from field: optional double max = 12;
757
+ */
758
+ max?: number;
759
+ };
760
+
761
+ /**
762
+ * Describes the message opentelemetry.proto.metrics.v1.HistogramDataPoint.
763
+ * Use `create(HistogramDataPointSchema)` to create a new message.
764
+ */
765
+ export const HistogramDataPointSchema: GenMessage<HistogramDataPoint> =
766
+ /*@__PURE__*/
767
+ messageDesc(file_opentelemetry_proto_metrics_v1_metrics, 10);
768
+
769
+ /**
770
+ * ExponentialHistogramDataPoint is a single data point in a timeseries that describes the
771
+ * time-varying values of a ExponentialHistogram of double values. A ExponentialHistogram contains
772
+ * summary statistics for a population of values, it may optionally contain the
773
+ * distribution of those values across a set of buckets.
774
+ *
775
+ *
776
+ * @generated from message opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint
777
+ */
778
+ export type ExponentialHistogramDataPoint =
779
+ Message<"opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint"> & {
780
+ /**
781
+ * The set of key/value pairs that uniquely identify the timeseries from
782
+ * where this point belongs. The list may be empty (may contain 0 elements).
783
+ * Attribute keys MUST be unique (it is not allowed to have more than one
784
+ * attribute with the same key).
785
+ *
786
+ * The attribute values SHOULD NOT contain empty values.
787
+ * The attribute values SHOULD NOT contain bytes values.
788
+ * The attribute values SHOULD NOT contain array values different than array of string values, bool values, int values,
789
+ * double values.
790
+ * The attribute values SHOULD NOT contain kvlist values.
791
+ * The behavior of software that receives attributes containing such values can be unpredictable.
792
+ * These restrictions can change in a minor release.
793
+ * The restrictions take origin from the OpenTelemetry specification:
794
+ * https://github.com/open-telemetry/opentelemetry-specification/blob/v1.47.0/specification/common/README.md#attribute.
795
+ *
796
+ * @generated from field: repeated opentelemetry.proto.common.v1.KeyValue attributes = 1;
797
+ */
798
+ attributes: KeyValue[];
799
+
800
+ /**
801
+ * StartTimeUnixNano is optional but strongly encouraged, see the
802
+ * the detailed comments above Metric.
803
+ *
804
+ * Value is UNIX Epoch time in nanoseconds since 00:00:00 UTC on 1 January
805
+ * 1970.
806
+ *
807
+ * @generated from field: fixed64 start_time_unix_nano = 2;
808
+ */
809
+ startTimeUnixNano: bigint;
810
+
811
+ /**
812
+ * TimeUnixNano is required, see the detailed comments above Metric.
813
+ *
814
+ * Value is UNIX Epoch time in nanoseconds since 00:00:00 UTC on 1 January
815
+ * 1970.
816
+ *
817
+ * @generated from field: fixed64 time_unix_nano = 3;
818
+ */
819
+ timeUnixNano: bigint;
820
+
821
+ /**
822
+ * count is the number of values in the population. Must be
823
+ * non-negative. This value must be equal to the sum of the "bucket_counts"
824
+ * values in the positive and negative Buckets plus the "zero_count" field.
825
+ *
826
+ * @generated from field: fixed64 count = 4;
827
+ */
828
+ count: bigint;
829
+
830
+ /**
831
+ * sum of the values in the population. If count is zero then this field
832
+ * must be zero.
833
+ *
834
+ * Note: Sum should only be filled out when measuring non-negative discrete
835
+ * events, and is assumed to be monotonic over the values of these events.
836
+ * Negative events *can* be recorded, but sum should not be filled out when
837
+ * doing so. This is specifically to enforce compatibility w/ OpenMetrics,
838
+ * see: https://github.com/prometheus/OpenMetrics/blob/v1.0.0/specification/OpenMetrics.md#histogram
839
+ *
840
+ * @generated from field: optional double sum = 5;
841
+ */
842
+ sum?: number;
843
+
844
+ /**
845
+ * scale describes the resolution of the histogram. Boundaries are
846
+ * located at powers of the base, where:
847
+ *
848
+ * base = (2^(2^-scale))
849
+ *
850
+ * The histogram bucket identified by `index`, a signed integer,
851
+ * contains values that are greater than (base^index) and
852
+ * less than or equal to (base^(index+1)).
853
+ *
854
+ * The positive and negative ranges of the histogram are expressed
855
+ * separately. Negative values are mapped by their absolute value
856
+ * into the negative range using the same scale as the positive range.
857
+ *
858
+ * scale is not restricted by the protocol, as the permissible
859
+ * values depend on the range of the data.
860
+ *
861
+ * @generated from field: sint32 scale = 6;
862
+ */
863
+ scale: number;
864
+
865
+ /**
866
+ * zero_count is the count of values that are either exactly zero or
867
+ * within the region considered zero by the instrumentation at the
868
+ * tolerated degree of precision. This bucket stores values that
869
+ * cannot be expressed using the standard exponential formula as
870
+ * well as values that have been rounded to zero.
871
+ *
872
+ * Implementations MAY consider the zero bucket to have probability
873
+ * mass equal to (zero_count / count).
874
+ *
875
+ * @generated from field: fixed64 zero_count = 7;
876
+ */
877
+ zeroCount: bigint;
878
+
879
+ /**
880
+ * positive carries the positive range of exponential bucket counts.
881
+ *
882
+ * @generated from field: opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets positive = 8;
883
+ */
884
+ positive?: ExponentialHistogramDataPoint_Buckets;
885
+
886
+ /**
887
+ * negative carries the negative range of exponential bucket counts.
888
+ *
889
+ * @generated from field: opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets negative = 9;
890
+ */
891
+ negative?: ExponentialHistogramDataPoint_Buckets;
892
+
893
+ /**
894
+ * Flags that apply to this specific data point. See DataPointFlags
895
+ * for the available flags and their meaning.
896
+ *
897
+ * @generated from field: uint32 flags = 10;
898
+ */
899
+ flags: number;
900
+
901
+ /**
902
+ * (Optional) List of exemplars collected from
903
+ * measurements that were used to form the data point
904
+ *
905
+ * @generated from field: repeated opentelemetry.proto.metrics.v1.Exemplar exemplars = 11;
906
+ */
907
+ exemplars: Exemplar[];
908
+
909
+ /**
910
+ * min is the minimum value over (start_time, end_time].
911
+ *
912
+ * @generated from field: optional double min = 12;
913
+ */
914
+ min?: number;
915
+
916
+ /**
917
+ * max is the maximum value over (start_time, end_time].
918
+ *
919
+ * @generated from field: optional double max = 13;
920
+ */
921
+ max?: number;
922
+
923
+ /**
924
+ * ZeroThreshold may be optionally set to convey the width of the zero
925
+ * region. Where the zero region is defined as the closed interval
926
+ * [-ZeroThreshold, ZeroThreshold].
927
+ * When ZeroThreshold is 0, zero count bucket stores values that cannot be
928
+ * expressed using the standard exponential formula as well as values that
929
+ * have been rounded to zero.
930
+ *
931
+ * @generated from field: double zero_threshold = 14;
932
+ */
933
+ zeroThreshold: number;
934
+ };
935
+
936
+ /**
937
+ * Describes the message opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.
938
+ * Use `create(ExponentialHistogramDataPointSchema)` to create a new message.
939
+ */
940
+ export const ExponentialHistogramDataPointSchema: GenMessage<ExponentialHistogramDataPoint> =
941
+ /*@__PURE__*/
942
+ messageDesc(file_opentelemetry_proto_metrics_v1_metrics, 11);
943
+
944
+ /**
945
+ * Buckets are a set of bucket counts, encoded in a contiguous array
946
+ * of counts.
947
+ *
948
+ * @generated from message opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets
949
+ */
950
+ export type ExponentialHistogramDataPoint_Buckets =
951
+ Message<"opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets"> & {
952
+ /**
953
+ * Offset is the bucket index of the first entry in the bucket_counts array.
954
+ *
955
+ * Note: This uses a varint encoding as a simple form of compression.
956
+ *
957
+ * @generated from field: sint32 offset = 1;
958
+ */
959
+ offset: number;
960
+
961
+ /**
962
+ * bucket_counts is an array of count values, where bucket_counts[i] carries
963
+ * the count of the bucket at index (offset+i). bucket_counts[i] is the count
964
+ * of values greater than base^(offset+i) and less than or equal to
965
+ * base^(offset+i+1).
966
+ *
967
+ * Note: By contrast, the explicit HistogramDataPoint uses
968
+ * fixed64. This field is expected to have many buckets,
969
+ * especially zeros, so uint64 has been selected to ensure
970
+ * varint encoding.
971
+ *
972
+ * @generated from field: repeated uint64 bucket_counts = 2;
973
+ */
974
+ bucketCounts: bigint[];
975
+ };
976
+
977
+ /**
978
+ * Describes the message opentelemetry.proto.metrics.v1.ExponentialHistogramDataPoint.Buckets.
979
+ * Use `create(ExponentialHistogramDataPoint_BucketsSchema)` to create a new message.
980
+ */
981
+ export const ExponentialHistogramDataPoint_BucketsSchema: GenMessage<ExponentialHistogramDataPoint_Buckets> =
982
+ /*@__PURE__*/
983
+ messageDesc(file_opentelemetry_proto_metrics_v1_metrics, 11, 0);
984
+
985
+ /**
986
+ * SummaryDataPoint is a single data point in a timeseries that describes the
987
+ * time-varying values of a Summary metric. The count and sum fields represent
988
+ * cumulative values.
989
+ *
990
+ * @generated from message opentelemetry.proto.metrics.v1.SummaryDataPoint
991
+ */
992
+ export type SummaryDataPoint =
993
+ Message<"opentelemetry.proto.metrics.v1.SummaryDataPoint"> & {
994
+ /**
995
+ * The set of key/value pairs that uniquely identify the timeseries from
996
+ * where this point belongs. The list may be empty (may contain 0 elements).
997
+ * Attribute keys MUST be unique (it is not allowed to have more than one
998
+ * attribute with the same key).
999
+ *
1000
+ * The attribute values SHOULD NOT contain empty values.
1001
+ * The attribute values SHOULD NOT contain bytes values.
1002
+ * The attribute values SHOULD NOT contain array values different than array of string values, bool values, int values,
1003
+ * double values.
1004
+ * The attribute values SHOULD NOT contain kvlist values.
1005
+ * The behavior of software that receives attributes containing such values can be unpredictable.
1006
+ * These restrictions can change in a minor release.
1007
+ * The restrictions take origin from the OpenTelemetry specification:
1008
+ * https://github.com/open-telemetry/opentelemetry-specification/blob/v1.47.0/specification/common/README.md#attribute.
1009
+ *
1010
+ * @generated from field: repeated opentelemetry.proto.common.v1.KeyValue attributes = 7;
1011
+ */
1012
+ attributes: KeyValue[];
1013
+
1014
+ /**
1015
+ * StartTimeUnixNano is optional but strongly encouraged, see the
1016
+ * the detailed comments above Metric.
1017
+ *
1018
+ * Value is UNIX Epoch time in nanoseconds since 00:00:00 UTC on 1 January
1019
+ * 1970.
1020
+ *
1021
+ * @generated from field: fixed64 start_time_unix_nano = 2;
1022
+ */
1023
+ startTimeUnixNano: bigint;
1024
+
1025
+ /**
1026
+ * TimeUnixNano is required, see the detailed comments above Metric.
1027
+ *
1028
+ * Value is UNIX Epoch time in nanoseconds since 00:00:00 UTC on 1 January
1029
+ * 1970.
1030
+ *
1031
+ * @generated from field: fixed64 time_unix_nano = 3;
1032
+ */
1033
+ timeUnixNano: bigint;
1034
+
1035
+ /**
1036
+ * count is the number of values in the population. Must be non-negative.
1037
+ *
1038
+ * @generated from field: fixed64 count = 4;
1039
+ */
1040
+ count: bigint;
1041
+
1042
+ /**
1043
+ * sum of the values in the population. If count is zero then this field
1044
+ * must be zero.
1045
+ *
1046
+ * Note: Sum should only be filled out when measuring non-negative discrete
1047
+ * events, and is assumed to be monotonic over the values of these events.
1048
+ * Negative events *can* be recorded, but sum should not be filled out when
1049
+ * doing so. This is specifically to enforce compatibility w/ OpenMetrics,
1050
+ * see: https://github.com/prometheus/OpenMetrics/blob/v1.0.0/specification/OpenMetrics.md#summary
1051
+ *
1052
+ * @generated from field: double sum = 5;
1053
+ */
1054
+ sum: number;
1055
+
1056
+ /**
1057
+ * (Optional) list of values at different quantiles of the distribution calculated
1058
+ * from the current snapshot. The quantiles must be strictly increasing.
1059
+ *
1060
+ * @generated from field: repeated opentelemetry.proto.metrics.v1.SummaryDataPoint.ValueAtQuantile quantile_values = 6;
1061
+ */
1062
+ quantileValues: SummaryDataPoint_ValueAtQuantile[];
1063
+
1064
+ /**
1065
+ * Flags that apply to this specific data point. See DataPointFlags
1066
+ * for the available flags and their meaning.
1067
+ *
1068
+ * @generated from field: uint32 flags = 8;
1069
+ */
1070
+ flags: number;
1071
+ };
1072
+
1073
+ /**
1074
+ * Describes the message opentelemetry.proto.metrics.v1.SummaryDataPoint.
1075
+ * Use `create(SummaryDataPointSchema)` to create a new message.
1076
+ */
1077
+ export const SummaryDataPointSchema: GenMessage<SummaryDataPoint> =
1078
+ /*@__PURE__*/
1079
+ messageDesc(file_opentelemetry_proto_metrics_v1_metrics, 12);
1080
+
1081
+ /**
1082
+ * Represents the value at a given quantile of a distribution.
1083
+ *
1084
+ * To record Min and Max values following conventions are used:
1085
+ * - The 1.0 quantile is equivalent to the maximum value observed.
1086
+ * - The 0.0 quantile is equivalent to the minimum value observed.
1087
+ *
1088
+ * See the following issue for more context:
1089
+ * https://github.com/open-telemetry/opentelemetry-proto/issues/125
1090
+ *
1091
+ * @generated from message opentelemetry.proto.metrics.v1.SummaryDataPoint.ValueAtQuantile
1092
+ */
1093
+ export type SummaryDataPoint_ValueAtQuantile =
1094
+ Message<"opentelemetry.proto.metrics.v1.SummaryDataPoint.ValueAtQuantile"> & {
1095
+ /**
1096
+ * The quantile of a distribution. Must be in the interval
1097
+ * [0.0, 1.0].
1098
+ *
1099
+ * @generated from field: double quantile = 1;
1100
+ */
1101
+ quantile: number;
1102
+
1103
+ /**
1104
+ * The value at the given quantile of a distribution.
1105
+ *
1106
+ * Quantile values must NOT be negative.
1107
+ *
1108
+ * @generated from field: double value = 2;
1109
+ */
1110
+ value: number;
1111
+ };
1112
+
1113
+ /**
1114
+ * Describes the message opentelemetry.proto.metrics.v1.SummaryDataPoint.ValueAtQuantile.
1115
+ * Use `create(SummaryDataPoint_ValueAtQuantileSchema)` to create a new message.
1116
+ */
1117
+ export const SummaryDataPoint_ValueAtQuantileSchema: GenMessage<SummaryDataPoint_ValueAtQuantile> =
1118
+ /*@__PURE__*/
1119
+ messageDesc(file_opentelemetry_proto_metrics_v1_metrics, 12, 0);
1120
+
1121
+ /**
1122
+ * A representation of an exemplar, which is a sample input measurement.
1123
+ * Exemplars also hold information about the environment when the measurement
1124
+ * was recorded, for example the span and trace ID of the active span when the
1125
+ * exemplar was recorded.
1126
+ *
1127
+ * @generated from message opentelemetry.proto.metrics.v1.Exemplar
1128
+ */
1129
+ export type Exemplar = Message<"opentelemetry.proto.metrics.v1.Exemplar"> & {
1130
+ /**
1131
+ * The set of key/value pairs that were filtered out by the aggregator, but
1132
+ * recorded alongside the original measurement. Only key/value pairs that were
1133
+ * filtered out by the aggregator should be included
1134
+ *
1135
+ * @generated from field: repeated opentelemetry.proto.common.v1.KeyValue filtered_attributes = 7;
1136
+ */
1137
+ filteredAttributes: KeyValue[];
1138
+
1139
+ /**
1140
+ * time_unix_nano is the exact time when this exemplar was recorded
1141
+ *
1142
+ * Value is UNIX Epoch time in nanoseconds since 00:00:00 UTC on 1 January
1143
+ * 1970.
1144
+ *
1145
+ * @generated from field: fixed64 time_unix_nano = 2;
1146
+ */
1147
+ timeUnixNano: bigint;
1148
+
1149
+ /**
1150
+ * The value of the measurement that was recorded. An exemplar is
1151
+ * considered invalid when one of the recognized value fields is not present
1152
+ * inside this oneof.
1153
+ *
1154
+ * @generated from oneof opentelemetry.proto.metrics.v1.Exemplar.value
1155
+ */
1156
+ value:
1157
+ | {
1158
+ /**
1159
+ * @generated from field: double as_double = 3;
1160
+ */
1161
+ value: number;
1162
+ case: "asDouble";
1163
+ }
1164
+ | {
1165
+ /**
1166
+ * @generated from field: sfixed64 as_int = 6;
1167
+ */
1168
+ value: bigint;
1169
+ case: "asInt";
1170
+ }
1171
+ | { case: undefined; value?: undefined };
1172
+
1173
+ /**
1174
+ * (Optional) Span ID of the exemplar trace.
1175
+ * span_id may be missing if the measurement is not recorded inside a trace
1176
+ * or if the trace is not sampled.
1177
+ *
1178
+ * @generated from field: bytes span_id = 4;
1179
+ */
1180
+ spanId: Uint8Array;
1181
+
1182
+ /**
1183
+ * (Optional) Trace ID of the exemplar trace.
1184
+ * trace_id may be missing if the measurement is not recorded inside a trace
1185
+ * or if the trace is not sampled.
1186
+ *
1187
+ * @generated from field: bytes trace_id = 5;
1188
+ */
1189
+ traceId: Uint8Array;
1190
+ };
1191
+
1192
+ /**
1193
+ * Describes the message opentelemetry.proto.metrics.v1.Exemplar.
1194
+ * Use `create(ExemplarSchema)` to create a new message.
1195
+ */
1196
+ export const ExemplarSchema: GenMessage<Exemplar> =
1197
+ /*@__PURE__*/
1198
+ messageDesc(file_opentelemetry_proto_metrics_v1_metrics, 13);
1199
+
1200
+ /**
1201
+ * AggregationTemporality defines how a metric aggregator reports aggregated
1202
+ * values. It describes how those values relate to the time interval over
1203
+ * which they are aggregated.
1204
+ *
1205
+ * @generated from enum opentelemetry.proto.metrics.v1.AggregationTemporality
1206
+ */
1207
+ export enum AggregationTemporality {
1208
+ /**
1209
+ * UNSPECIFIED is the default AggregationTemporality, it MUST not be used.
1210
+ *
1211
+ * @generated from enum value: AGGREGATION_TEMPORALITY_UNSPECIFIED = 0;
1212
+ */
1213
+ UNSPECIFIED = 0,
1214
+
1215
+ /**
1216
+ * DELTA is an AggregationTemporality for a metric aggregator which reports
1217
+ * changes since last report time. Successive metrics contain aggregation of
1218
+ * values from continuous and non-overlapping intervals.
1219
+ *
1220
+ * The values for a DELTA metric are based only on the time interval
1221
+ * associated with one measurement cycle. There is no dependency on
1222
+ * previous measurements like is the case for CUMULATIVE metrics.
1223
+ *
1224
+ * For example, consider a system measuring the number of requests that
1225
+ * it receives and reports the sum of these requests every second as a
1226
+ * DELTA metric:
1227
+ *
1228
+ * 1. The system starts receiving at time=t_0.
1229
+ * 2. A request is received, the system measures 1 request.
1230
+ * 3. A request is received, the system measures 1 request.
1231
+ * 4. A request is received, the system measures 1 request.
1232
+ * 5. The 1 second collection cycle ends. A metric is exported for the
1233
+ * number of requests received over the interval of time t_0 to
1234
+ * t_0+1 with a value of 3.
1235
+ * 6. A request is received, the system measures 1 request.
1236
+ * 7. A request is received, the system measures 1 request.
1237
+ * 8. The 1 second collection cycle ends. A metric is exported for the
1238
+ * number of requests received over the interval of time t_0+1 to
1239
+ * t_0+2 with a value of 2.
1240
+ *
1241
+ * @generated from enum value: AGGREGATION_TEMPORALITY_DELTA = 1;
1242
+ */
1243
+ DELTA = 1,
1244
+
1245
+ /**
1246
+ * CUMULATIVE is an AggregationTemporality for a metric aggregator which
1247
+ * reports changes since a fixed start time. This means that current values
1248
+ * of a CUMULATIVE metric depend on all previous measurements since the
1249
+ * start time. Because of this, the sender is required to retain this state
1250
+ * in some form. If this state is lost or invalidated, the CUMULATIVE metric
1251
+ * values MUST be reset and a new fixed start time following the last
1252
+ * reported measurement time sent MUST be used.
1253
+ *
1254
+ * For example, consider a system measuring the number of requests that
1255
+ * it receives and reports the sum of these requests every second as a
1256
+ * CUMULATIVE metric:
1257
+ *
1258
+ * 1. The system starts receiving at time=t_0.
1259
+ * 2. A request is received, the system measures 1 request.
1260
+ * 3. A request is received, the system measures 1 request.
1261
+ * 4. A request is received, the system measures 1 request.
1262
+ * 5. The 1 second collection cycle ends. A metric is exported for the
1263
+ * number of requests received over the interval of time t_0 to
1264
+ * t_0+1 with a value of 3.
1265
+ * 6. A request is received, the system measures 1 request.
1266
+ * 7. A request is received, the system measures 1 request.
1267
+ * 8. The 1 second collection cycle ends. A metric is exported for the
1268
+ * number of requests received over the interval of time t_0 to
1269
+ * t_0+2 with a value of 5.
1270
+ * 9. The system experiences a fault and loses state.
1271
+ * 10. The system recovers and resumes receiving at time=t_1.
1272
+ * 11. A request is received, the system measures 1 request.
1273
+ * 12. The 1 second collection cycle ends. A metric is exported for the
1274
+ * number of requests received over the interval of time t_1 to
1275
+ * t_0+1 with a value of 1.
1276
+ *
1277
+ * Note: Even though, when reporting changes since last report time, using
1278
+ * CUMULATIVE is valid, it is not recommended. This may cause problems for
1279
+ * systems that do not use start_time to determine when the aggregation
1280
+ * value was reset (e.g. Prometheus).
1281
+ *
1282
+ * @generated from enum value: AGGREGATION_TEMPORALITY_CUMULATIVE = 2;
1283
+ */
1284
+ CUMULATIVE = 2,
1285
+ }
1286
+
1287
+ /**
1288
+ * Describes the enum opentelemetry.proto.metrics.v1.AggregationTemporality.
1289
+ */
1290
+ export const AggregationTemporalitySchema: GenEnum<AggregationTemporality> =
1291
+ /*@__PURE__*/
1292
+ enumDesc(file_opentelemetry_proto_metrics_v1_metrics, 0);
1293
+
1294
+ /**
1295
+ * DataPointFlags is defined as a protobuf 'uint32' type and is to be used as a
1296
+ * bit-field representing 32 distinct boolean flags. Each flag defined in this
1297
+ * enum is a bit-mask. To test the presence of a single flag in the flags of
1298
+ * a data point, for example, use an expression like:
1299
+ *
1300
+ * (point.flags & DATA_POINT_FLAGS_NO_RECORDED_VALUE_MASK) == DATA_POINT_FLAGS_NO_RECORDED_VALUE_MASK
1301
+ *
1302
+ *
1303
+ * @generated from enum opentelemetry.proto.metrics.v1.DataPointFlags
1304
+ */
1305
+ export enum DataPointFlags {
1306
+ /**
1307
+ * The zero value for the enum. Should not be used for comparisons.
1308
+ * Instead use bitwise "and" with the appropriate mask as shown above.
1309
+ *
1310
+ * @generated from enum value: DATA_POINT_FLAGS_DO_NOT_USE = 0;
1311
+ */
1312
+ DO_NOT_USE = 0,
1313
+
1314
+ /**
1315
+ * This DataPoint is valid but has no recorded value. This value
1316
+ * SHOULD be used to reflect explicitly missing data in a series, as
1317
+ * for an equivalent to the Prometheus "staleness marker".
1318
+ *
1319
+ * @generated from enum value: DATA_POINT_FLAGS_NO_RECORDED_VALUE_MASK = 1;
1320
+ */
1321
+ NO_RECORDED_VALUE_MASK = 1,
1322
+ }
1323
+
1324
+ /**
1325
+ * Describes the enum opentelemetry.proto.metrics.v1.DataPointFlags.
1326
+ */
1327
+ export const DataPointFlagsSchema: GenEnum<DataPointFlags> =
1328
+ /*@__PURE__*/
1329
+ enumDesc(file_opentelemetry_proto_metrics_v1_metrics, 1);