@marinoscar/platform-api 0.0.0-stage → 0.1.0-next.3

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 (616) hide show
  1. package/CHANGELOG.md +54 -0
  2. package/LICENSE +21 -0
  3. package/README.md +106 -2
  4. package/dist/core/crypto/encryption-key-startup-check.d.ts +29 -0
  5. package/dist/core/crypto/encryption-key-startup-check.d.ts.map +1 -0
  6. package/dist/core/crypto/encryption-key-startup-check.js +221 -0
  7. package/dist/core/crypto/encryption-key-startup-check.js.map +1 -0
  8. package/dist/core/crypto/secret-cipher.d.ts +151 -0
  9. package/dist/core/crypto/secret-cipher.d.ts.map +1 -0
  10. package/dist/core/crypto/secret-cipher.js +452 -0
  11. package/dist/core/crypto/secret-cipher.js.map +1 -0
  12. package/dist/core/data-access/index.d.ts +6 -0
  13. package/dist/core/data-access/index.d.ts.map +1 -0
  14. package/dist/core/data-access/index.js +19 -0
  15. package/dist/core/data-access/index.js.map +1 -0
  16. package/dist/core/data-access/scoped-access.error.d.ts +35 -0
  17. package/dist/core/data-access/scoped-access.error.d.ts.map +1 -0
  18. package/dist/core/data-access/scoped-access.error.js +43 -0
  19. package/dist/core/data-access/scoped-access.error.js.map +1 -0
  20. package/dist/core/data-access/scoped-client.d.ts +104 -0
  21. package/dist/core/data-access/scoped-client.d.ts.map +1 -0
  22. package/dist/core/data-access/scoped-client.js +270 -0
  23. package/dist/core/data-access/scoped-client.js.map +1 -0
  24. package/dist/core/data-access/types.d.ts +85 -0
  25. package/dist/core/data-access/types.d.ts.map +1 -0
  26. package/dist/core/data-access/types.js +12 -0
  27. package/dist/core/data-access/types.js.map +1 -0
  28. package/dist/core/data-access/user-owned-data.registry.d.ts +60 -0
  29. package/dist/core/data-access/user-owned-data.registry.d.ts.map +1 -0
  30. package/dist/core/data-access/user-owned-data.registry.js +140 -0
  31. package/dist/core/data-access/user-owned-data.registry.js.map +1 -0
  32. package/dist/core/errors/database-seed.exception.d.ts +23 -0
  33. package/dist/core/errors/database-seed.exception.d.ts.map +1 -0
  34. package/dist/core/errors/database-seed.exception.js +49 -0
  35. package/dist/core/errors/database-seed.exception.js.map +1 -0
  36. package/dist/core/errors/error.dto.d.ts +47 -0
  37. package/dist/core/errors/error.dto.d.ts.map +1 -0
  38. package/dist/core/errors/error.dto.js +121 -0
  39. package/dist/core/errors/error.dto.js.map +1 -0
  40. package/dist/core/errors/http-exception.filter.d.ts +63 -0
  41. package/dist/core/errors/http-exception.filter.d.ts.map +1 -0
  42. package/dist/core/errors/http-exception.filter.js +234 -0
  43. package/dist/core/errors/http-exception.filter.js.map +1 -0
  44. package/dist/core/errors/verbatim-error-body.exception.d.ts +46 -0
  45. package/dist/core/errors/verbatim-error-body.exception.d.ts.map +1 -0
  46. package/dist/core/errors/verbatim-error-body.exception.js +135 -0
  47. package/dist/core/errors/verbatim-error-body.exception.js.map +1 -0
  48. package/dist/core/host/index.d.ts +7 -0
  49. package/dist/core/host/index.d.ts.map +1 -0
  50. package/dist/core/host/index.js +14 -0
  51. package/dist/core/host/index.js.map +1 -0
  52. package/dist/core/host/platform-host.d.ts +58 -0
  53. package/dist/core/host/platform-host.d.ts.map +1 -0
  54. package/dist/core/host/platform-host.js +104 -0
  55. package/dist/core/host/platform-host.js.map +1 -0
  56. package/dist/core/host/platform-host.module.d.ts +53 -0
  57. package/dist/core/host/platform-host.module.d.ts.map +1 -0
  58. package/dist/core/host/platform-host.module.js +90 -0
  59. package/dist/core/host/platform-host.module.js.map +1 -0
  60. package/dist/core/host/ports.d.ts +132 -0
  61. package/dist/core/host/ports.d.ts.map +1 -0
  62. package/dist/core/host/ports.js +48 -0
  63. package/dist/core/host/ports.js.map +1 -0
  64. package/dist/core/index.d.ts +15 -0
  65. package/dist/core/index.d.ts.map +1 -0
  66. package/dist/core/index.js +77 -0
  67. package/dist/core/index.js.map +1 -0
  68. package/dist/core/openapi/openapi-tag.registry.d.ts +80 -0
  69. package/dist/core/openapi/openapi-tag.registry.d.ts.map +1 -0
  70. package/dist/core/openapi/openapi-tag.registry.js +72 -0
  71. package/dist/core/openapi/openapi-tag.registry.js.map +1 -0
  72. package/dist/core/principal/index.d.ts +6 -0
  73. package/dist/core/principal/index.d.ts.map +1 -0
  74. package/dist/core/principal/index.js +3 -0
  75. package/dist/core/principal/index.js.map +1 -0
  76. package/dist/core/principal/principal.types.d.ts +222 -0
  77. package/dist/core/principal/principal.types.d.ts.map +1 -0
  78. package/dist/core/principal/principal.types.js +22 -0
  79. package/dist/core/principal/principal.types.js.map +1 -0
  80. package/dist/core/registry/index.d.ts +4 -0
  81. package/dist/core/registry/index.d.ts.map +1 -0
  82. package/dist/core/registry/index.js +19 -0
  83. package/dist/core/registry/index.js.map +1 -0
  84. package/dist/core/registry/registry-freeze.service.d.ts +14 -0
  85. package/dist/core/registry/registry-freeze.service.d.ts.map +1 -0
  86. package/dist/core/registry/registry-freeze.service.js +55 -0
  87. package/dist/core/registry/registry-freeze.service.js.map +1 -0
  88. package/dist/core/registry/registry.d.ts +268 -0
  89. package/dist/core/registry/registry.d.ts.map +1 -0
  90. package/dist/core/registry/registry.js +351 -0
  91. package/dist/core/registry/registry.js.map +1 -0
  92. package/dist/core/registry/testing.d.ts +29 -0
  93. package/dist/core/registry/testing.d.ts.map +1 -0
  94. package/dist/core/registry/testing.js +63 -0
  95. package/dist/core/registry/testing.js.map +1 -0
  96. package/dist/doctor/doctor-check.interface.d.ts +100 -0
  97. package/dist/doctor/doctor-check.interface.d.ts.map +1 -0
  98. package/dist/doctor/doctor-check.interface.js +95 -0
  99. package/dist/doctor/doctor-check.interface.js.map +1 -0
  100. package/dist/doctor/doctor-check.registry.d.ts +37 -0
  101. package/dist/doctor/doctor-check.registry.d.ts.map +1 -0
  102. package/dist/doctor/doctor-check.registry.js +96 -0
  103. package/dist/doctor/doctor-check.registry.js.map +1 -0
  104. package/dist/doctor/doctor.controller.factory.d.ts +29 -0
  105. package/dist/doctor/doctor.controller.factory.d.ts.map +1 -0
  106. package/dist/doctor/doctor.controller.factory.js +121 -0
  107. package/dist/doctor/doctor.controller.factory.js.map +1 -0
  108. package/dist/doctor/doctor.module.d.ts +78 -0
  109. package/dist/doctor/doctor.module.d.ts.map +1 -0
  110. package/dist/doctor/doctor.module.js +158 -0
  111. package/dist/doctor/doctor.module.js.map +1 -0
  112. package/dist/doctor/doctor.options.d.ts +39 -0
  113. package/dist/doctor/doctor.options.d.ts.map +1 -0
  114. package/dist/doctor/doctor.options.js +21 -0
  115. package/dist/doctor/doctor.options.js.map +1 -0
  116. package/dist/doctor/doctor.service.d.ts +80 -0
  117. package/dist/doctor/doctor.service.d.ts.map +1 -0
  118. package/dist/doctor/doctor.service.js +301 -0
  119. package/dist/doctor/doctor.service.js.map +1 -0
  120. package/dist/doctor/dto/doctor-query.dto.d.ts +15 -0
  121. package/dist/doctor/dto/doctor-query.dto.d.ts.map +1 -0
  122. package/dist/doctor/dto/doctor-query.dto.js +16 -0
  123. package/dist/doctor/dto/doctor-query.dto.js.map +1 -0
  124. package/dist/doctor/dto/doctor-report.dto.d.ts +27 -0
  125. package/dist/doctor/dto/doctor-report.dto.d.ts.map +1 -0
  126. package/dist/doctor/dto/doctor-report.dto.js +23 -0
  127. package/dist/doctor/dto/doctor-report.dto.js.map +1 -0
  128. package/dist/doctor/egress/classify-host.d.ts +73 -0
  129. package/dist/doctor/egress/classify-host.d.ts.map +1 -0
  130. package/dist/doctor/egress/classify-host.js +210 -0
  131. package/dist/doctor/egress/classify-host.js.map +1 -0
  132. package/dist/doctor/egress/egress.registry.d.ts +34 -0
  133. package/dist/doctor/egress/egress.registry.d.ts.map +1 -0
  134. package/dist/doctor/egress/egress.registry.js +70 -0
  135. package/dist/doctor/egress/egress.registry.js.map +1 -0
  136. package/dist/doctor/egress/egress.types.d.ts +135 -0
  137. package/dist/doctor/egress/egress.types.d.ts.map +1 -0
  138. package/dist/doctor/egress/egress.types.js +42 -0
  139. package/dist/doctor/egress/egress.types.js.map +1 -0
  140. package/dist/doctor/egress/index.d.ts +6 -0
  141. package/dist/doctor/egress/index.d.ts.map +1 -0
  142. package/dist/doctor/egress/index.js +23 -0
  143. package/dist/doctor/egress/index.js.map +1 -0
  144. package/dist/doctor/egress/network-egress.doctor-check.d.ts +78 -0
  145. package/dist/doctor/egress/network-egress.doctor-check.d.ts.map +1 -0
  146. package/dist/doctor/egress/network-egress.doctor-check.js +226 -0
  147. package/dist/doctor/egress/network-egress.doctor-check.js.map +1 -0
  148. package/dist/doctor/index.d.ts +19 -0
  149. package/dist/doctor/index.d.ts.map +1 -0
  150. package/dist/doctor/index.js +66 -0
  151. package/dist/doctor/index.js.map +1 -0
  152. package/dist/doctor/support-bundle/index.d.ts +12 -0
  153. package/dist/doctor/support-bundle/index.d.ts.map +1 -0
  154. package/dist/doctor/support-bundle/index.js +32 -0
  155. package/dist/doctor/support-bundle/index.js.map +1 -0
  156. package/dist/doctor/support-bundle/redact.d.ts +76 -0
  157. package/dist/doctor/support-bundle/redact.d.ts.map +1 -0
  158. package/dist/doctor/support-bundle/redact.js +236 -0
  159. package/dist/doctor/support-bundle/redact.js.map +1 -0
  160. package/dist/doctor/support-bundle/sections/doctor.section.d.ts +81 -0
  161. package/dist/doctor/support-bundle/sections/doctor.section.d.ts.map +1 -0
  162. package/dist/doctor/support-bundle/sections/doctor.section.js +83 -0
  163. package/dist/doctor/support-bundle/sections/doctor.section.js.map +1 -0
  164. package/dist/doctor/support-bundle/sections/egress.section.d.ts +73 -0
  165. package/dist/doctor/support-bundle/sections/egress.section.d.ts.map +1 -0
  166. package/dist/doctor/support-bundle/sections/egress.section.js +97 -0
  167. package/dist/doctor/support-bundle/sections/egress.section.js.map +1 -0
  168. package/dist/doctor/support-bundle/sections/meta.section.d.ts +39 -0
  169. package/dist/doctor/support-bundle/sections/meta.section.d.ts.map +1 -0
  170. package/dist/doctor/support-bundle/sections/meta.section.js +89 -0
  171. package/dist/doctor/support-bundle/sections/meta.section.js.map +1 -0
  172. package/dist/doctor/support-bundle/support-bundle-section.interface.d.ts +100 -0
  173. package/dist/doctor/support-bundle/support-bundle-section.interface.d.ts.map +1 -0
  174. package/dist/doctor/support-bundle/support-bundle-section.interface.js +59 -0
  175. package/dist/doctor/support-bundle/support-bundle-section.interface.js.map +1 -0
  176. package/dist/doctor/support-bundle/support-bundle.controller.d.ts +57 -0
  177. package/dist/doctor/support-bundle/support-bundle.controller.d.ts.map +1 -0
  178. package/dist/doctor/support-bundle/support-bundle.controller.js +141 -0
  179. package/dist/doctor/support-bundle/support-bundle.controller.js.map +1 -0
  180. package/dist/doctor/support-bundle/support-bundle.options.d.ts +92 -0
  181. package/dist/doctor/support-bundle/support-bundle.options.d.ts.map +1 -0
  182. package/dist/doctor/support-bundle/support-bundle.options.js +100 -0
  183. package/dist/doctor/support-bundle/support-bundle.options.js.map +1 -0
  184. package/dist/doctor/support-bundle/support-bundle.registry.d.ts +38 -0
  185. package/dist/doctor/support-bundle/support-bundle.registry.d.ts.map +1 -0
  186. package/dist/doctor/support-bundle/support-bundle.registry.js +90 -0
  187. package/dist/doctor/support-bundle/support-bundle.registry.js.map +1 -0
  188. package/dist/doctor/support-bundle/support-bundle.service.d.ts +63 -0
  189. package/dist/doctor/support-bundle/support-bundle.service.d.ts.map +1 -0
  190. package/dist/doctor/support-bundle/support-bundle.service.js +244 -0
  191. package/dist/doctor/support-bundle/support-bundle.service.js.map +1 -0
  192. package/dist/index.d.ts +11 -0
  193. package/dist/index.d.ts.map +1 -0
  194. package/dist/index.js +14 -0
  195. package/dist/index.js.map +1 -0
  196. package/dist/otel-core/index.d.ts +9 -0
  197. package/dist/otel-core/index.d.ts.map +1 -0
  198. package/dist/otel-core/index.js +58 -0
  199. package/dist/otel-core/index.js.map +1 -0
  200. package/dist/otel-core/metrics/gauge-provider.d.ts +44 -0
  201. package/dist/otel-core/metrics/gauge-provider.d.ts.map +1 -0
  202. package/dist/otel-core/metrics/gauge-provider.js +37 -0
  203. package/dist/otel-core/metrics/gauge-provider.js.map +1 -0
  204. package/dist/otel-core/metrics/labels.d.ts +79 -0
  205. package/dist/otel-core/metrics/labels.d.ts.map +1 -0
  206. package/dist/otel-core/metrics/labels.js +135 -0
  207. package/dist/otel-core/metrics/labels.js.map +1 -0
  208. package/dist/otel-core/metrics/metric-name.registry.d.ts +130 -0
  209. package/dist/otel-core/metrics/metric-name.registry.d.ts.map +1 -0
  210. package/dist/otel-core/metrics/metric-name.registry.js +134 -0
  211. package/dist/otel-core/metrics/metric-name.registry.js.map +1 -0
  212. package/dist/otel-core/metrics/metrics-host.service.d.ts +163 -0
  213. package/dist/otel-core/metrics/metrics-host.service.d.ts.map +1 -0
  214. package/dist/otel-core/metrics/metrics-host.service.js +344 -0
  215. package/dist/otel-core/metrics/metrics-host.service.js.map +1 -0
  216. package/dist/otel-core/metrics/otel-metrics.module.d.ts +54 -0
  217. package/dist/otel-core/metrics/otel-metrics.module.d.ts.map +1 -0
  218. package/dist/otel-core/metrics/otel-metrics.module.js +83 -0
  219. package/dist/otel-core/metrics/otel-metrics.module.js.map +1 -0
  220. package/dist/otel-core/sdk/index.d.ts +5 -0
  221. package/dist/otel-core/sdk/index.d.ts.map +1 -0
  222. package/dist/otel-core/sdk/index.js +27 -0
  223. package/dist/otel-core/sdk/index.js.map +1 -0
  224. package/dist/otel-core/sdk/initialize-otel.d.ts +126 -0
  225. package/dist/otel-core/sdk/initialize-otel.d.ts.map +1 -0
  226. package/dist/otel-core/sdk/initialize-otel.js +204 -0
  227. package/dist/otel-core/sdk/initialize-otel.js.map +1 -0
  228. package/dist/otel-core/sdk/instance-id.d.ts +29 -0
  229. package/dist/otel-core/sdk/instance-id.d.ts.map +1 -0
  230. package/dist/otel-core/sdk/instance-id.js +65 -0
  231. package/dist/otel-core/sdk/instance-id.js.map +1 -0
  232. package/dist/otel-core/sdk/service-name.d.ts +28 -0
  233. package/dist/otel-core/sdk/service-name.d.ts.map +1 -0
  234. package/dist/otel-core/sdk/service-name.js +63 -0
  235. package/dist/otel-core/sdk/service-name.js.map +1 -0
  236. package/dist/otel-core/sdk/telemetry-gate.d.ts +116 -0
  237. package/dist/otel-core/sdk/telemetry-gate.d.ts.map +1 -0
  238. package/dist/otel-core/sdk/telemetry-gate.js +297 -0
  239. package/dist/otel-core/sdk/telemetry-gate.js.map +1 -0
  240. package/dist/otel-core/spans/request-span-attributes.d.ts +58 -0
  241. package/dist/otel-core/spans/request-span-attributes.d.ts.map +1 -0
  242. package/dist/otel-core/spans/request-span-attributes.js +155 -0
  243. package/dist/otel-core/spans/request-span-attributes.js.map +1 -0
  244. package/dist/otel-core/spans/trace.decorator.d.ts +36 -0
  245. package/dist/otel-core/spans/trace.decorator.d.ts.map +1 -0
  246. package/dist/otel-core/spans/trace.decorator.js +74 -0
  247. package/dist/otel-core/spans/trace.decorator.js.map +1 -0
  248. package/dist/telemetry/assistant/telemetry-ai-enabled.guard.d.ts +15 -0
  249. package/dist/telemetry/assistant/telemetry-ai-enabled.guard.d.ts.map +1 -0
  250. package/dist/telemetry/assistant/telemetry-ai-enabled.guard.js +50 -0
  251. package/dist/telemetry/assistant/telemetry-ai-enabled.guard.js.map +1 -0
  252. package/dist/telemetry/assistant/telemetry-assistant.controller.d.ts +14 -0
  253. package/dist/telemetry/assistant/telemetry-assistant.controller.d.ts.map +1 -0
  254. package/dist/telemetry/assistant/telemetry-assistant.controller.js +178 -0
  255. package/dist/telemetry/assistant/telemetry-assistant.controller.js.map +1 -0
  256. package/dist/telemetry/assistant/telemetry-assistant.metrics.d.ts +147 -0
  257. package/dist/telemetry/assistant/telemetry-assistant.metrics.d.ts.map +1 -0
  258. package/dist/telemetry/assistant/telemetry-assistant.metrics.js +495 -0
  259. package/dist/telemetry/assistant/telemetry-assistant.metrics.js.map +1 -0
  260. package/dist/telemetry/assistant/telemetry-assistant.service.d.ts +216 -0
  261. package/dist/telemetry/assistant/telemetry-assistant.service.d.ts.map +1 -0
  262. package/dist/telemetry/assistant/telemetry-assistant.service.js +1256 -0
  263. package/dist/telemetry/assistant/telemetry-assistant.service.js.map +1 -0
  264. package/dist/telemetry/assistant/telemetry-assistant.sql.d.ts +69 -0
  265. package/dist/telemetry/assistant/telemetry-assistant.sql.d.ts.map +1 -0
  266. package/dist/telemetry/assistant/telemetry-assistant.sql.js +471 -0
  267. package/dist/telemetry/assistant/telemetry-assistant.sql.js.map +1 -0
  268. package/dist/telemetry/assistant/telemetry-assistant.sse.d.ts +15 -0
  269. package/dist/telemetry/assistant/telemetry-assistant.sse.d.ts.map +1 -0
  270. package/dist/telemetry/assistant/telemetry-assistant.sse.js +68 -0
  271. package/dist/telemetry/assistant/telemetry-assistant.sse.js.map +1 -0
  272. package/dist/telemetry/connection/dto/telemetry-connection.dto.d.ts +92 -0
  273. package/dist/telemetry/connection/dto/telemetry-connection.dto.d.ts.map +1 -0
  274. package/dist/telemetry/connection/dto/telemetry-connection.dto.js +41 -0
  275. package/dist/telemetry/connection/dto/telemetry-connection.dto.js.map +1 -0
  276. package/dist/telemetry/connection/telemetry-connection-admin.service.d.ts +45 -0
  277. package/dist/telemetry/connection/telemetry-connection-admin.service.d.ts.map +1 -0
  278. package/dist/telemetry/connection/telemetry-connection-admin.service.js +303 -0
  279. package/dist/telemetry/connection/telemetry-connection-admin.service.js.map +1 -0
  280. package/dist/telemetry/connection/telemetry-connection-test.service.d.ts +41 -0
  281. package/dist/telemetry/connection/telemetry-connection-test.service.d.ts.map +1 -0
  282. package/dist/telemetry/connection/telemetry-connection-test.service.js +187 -0
  283. package/dist/telemetry/connection/telemetry-connection-test.service.js.map +1 -0
  284. package/dist/telemetry/connection/telemetry-connection.controller.d.ts +14 -0
  285. package/dist/telemetry/connection/telemetry-connection.controller.d.ts.map +1 -0
  286. package/dist/telemetry/connection/telemetry-connection.controller.js +192 -0
  287. package/dist/telemetry/connection/telemetry-connection.controller.js.map +1 -0
  288. package/dist/telemetry/connection/telemetry-connection.schema.d.ts +28 -0
  289. package/dist/telemetry/connection/telemetry-connection.schema.d.ts.map +1 -0
  290. package/dist/telemetry/connection/telemetry-connection.schema.js +106 -0
  291. package/dist/telemetry/connection/telemetry-connection.schema.js.map +1 -0
  292. package/dist/telemetry/connection/telemetry-connection.service.d.ts +197 -0
  293. package/dist/telemetry/connection/telemetry-connection.service.d.ts.map +1 -0
  294. package/dist/telemetry/connection/telemetry-connection.service.js +461 -0
  295. package/dist/telemetry/connection/telemetry-connection.service.js.map +1 -0
  296. package/dist/telemetry/dashboard/sql-literals.d.ts +19 -0
  297. package/dist/telemetry/dashboard/sql-literals.d.ts.map +1 -0
  298. package/dist/telemetry/dashboard/sql-literals.js +75 -0
  299. package/dist/telemetry/dashboard/sql-literals.js.map +1 -0
  300. package/dist/telemetry/dashboard/telemetry-dashboard.controller.d.ts +14 -0
  301. package/dist/telemetry/dashboard/telemetry-dashboard.controller.d.ts.map +1 -0
  302. package/dist/telemetry/dashboard/telemetry-dashboard.controller.js +277 -0
  303. package/dist/telemetry/dashboard/telemetry-dashboard.controller.js.map +1 -0
  304. package/dist/telemetry/dashboard/telemetry-dashboard.service.d.ts +112 -0
  305. package/dist/telemetry/dashboard/telemetry-dashboard.service.d.ts.map +1 -0
  306. package/dist/telemetry/dashboard/telemetry-dashboard.service.js +904 -0
  307. package/dist/telemetry/dashboard/telemetry-dashboard.service.js.map +1 -0
  308. package/dist/telemetry/dashboard/telemetry-dashboard.sql.d.ts +212 -0
  309. package/dist/telemetry/dashboard/telemetry-dashboard.sql.d.ts.map +1 -0
  310. package/dist/telemetry/dashboard/telemetry-dashboard.sql.js +486 -0
  311. package/dist/telemetry/dashboard/telemetry-dashboard.sql.js.map +1 -0
  312. package/dist/telemetry/dashboard/telemetry-dashboard.verdict.d.ts +235 -0
  313. package/dist/telemetry/dashboard/telemetry-dashboard.verdict.d.ts.map +1 -0
  314. package/dist/telemetry/dashboard/telemetry-dashboard.verdict.js +269 -0
  315. package/dist/telemetry/dashboard/telemetry-dashboard.verdict.js.map +1 -0
  316. package/dist/telemetry/dashboard/verdict-policy.d.ts +51 -0
  317. package/dist/telemetry/dashboard/verdict-policy.d.ts.map +1 -0
  318. package/dist/telemetry/dashboard/verdict-policy.js +77 -0
  319. package/dist/telemetry/dashboard/verdict-policy.js.map +1 -0
  320. package/dist/telemetry/doctor/egress/greptimedb.egress.contributor.d.ts +21 -0
  321. package/dist/telemetry/doctor/egress/greptimedb.egress.contributor.d.ts.map +1 -0
  322. package/dist/telemetry/doctor/egress/greptimedb.egress.contributor.js +59 -0
  323. package/dist/telemetry/doctor/egress/greptimedb.egress.contributor.js.map +1 -0
  324. package/dist/telemetry/doctor/telemetry-connection.doctor-check.d.ts +23 -0
  325. package/dist/telemetry/doctor/telemetry-connection.doctor-check.d.ts.map +1 -0
  326. package/dist/telemetry/doctor/telemetry-connection.doctor-check.js +69 -0
  327. package/dist/telemetry/doctor/telemetry-connection.doctor-check.js.map +1 -0
  328. package/dist/telemetry/doctor/telemetry-export.doctor-check.d.ts +33 -0
  329. package/dist/telemetry/doctor/telemetry-export.doctor-check.d.ts.map +1 -0
  330. package/dist/telemetry/doctor/telemetry-export.doctor-check.js +105 -0
  331. package/dist/telemetry/doctor/telemetry-export.doctor-check.js.map +1 -0
  332. package/dist/telemetry/doctor/telemetry-freshness.doctor-check.d.ts +38 -0
  333. package/dist/telemetry/doctor/telemetry-freshness.doctor-check.d.ts.map +1 -0
  334. package/dist/telemetry/doctor/telemetry-freshness.doctor-check.js +104 -0
  335. package/dist/telemetry/doctor/telemetry-freshness.doctor-check.js.map +1 -0
  336. package/dist/telemetry/doctor/telemetry-reachable.doctor-check.d.ts +23 -0
  337. package/dist/telemetry/doctor/telemetry-reachable.doctor-check.d.ts.map +1 -0
  338. package/dist/telemetry/doctor/telemetry-reachable.doctor-check.js +65 -0
  339. package/dist/telemetry/doctor/telemetry-reachable.doctor-check.js.map +1 -0
  340. package/dist/telemetry/doctor/telemetry-tables.doctor-check.d.ts +23 -0
  341. package/dist/telemetry/doctor/telemetry-tables.doctor-check.d.ts.map +1 -0
  342. package/dist/telemetry/doctor/telemetry-tables.doctor-check.js +91 -0
  343. package/dist/telemetry/doctor/telemetry-tables.doctor-check.js.map +1 -0
  344. package/dist/telemetry/dto/telemetry-assistant.dto.d.ts +14 -0
  345. package/dist/telemetry/dto/telemetry-assistant.dto.d.ts.map +1 -0
  346. package/dist/telemetry/dto/telemetry-assistant.dto.js +29 -0
  347. package/dist/telemetry/dto/telemetry-assistant.dto.js.map +1 -0
  348. package/dist/telemetry/dto/telemetry-config.dto.d.ts +59 -0
  349. package/dist/telemetry/dto/telemetry-config.dto.d.ts.map +1 -0
  350. package/dist/telemetry/dto/telemetry-config.dto.js +18 -0
  351. package/dist/telemetry/dto/telemetry-config.dto.js.map +1 -0
  352. package/dist/telemetry/dto/telemetry-dashboard.dto.d.ts +397 -0
  353. package/dist/telemetry/dto/telemetry-dashboard.dto.d.ts.map +1 -0
  354. package/dist/telemetry/dto/telemetry-dashboard.dto.js +118 -0
  355. package/dist/telemetry/dto/telemetry-dashboard.dto.js.map +1 -0
  356. package/dist/telemetry/dto/telemetry-query.dto.d.ts +44 -0
  357. package/dist/telemetry/dto/telemetry-query.dto.d.ts.map +1 -0
  358. package/dist/telemetry/dto/telemetry-query.dto.js +42 -0
  359. package/dist/telemetry/dto/telemetry-query.dto.js.map +1 -0
  360. package/dist/telemetry/dto/telemetry-status.dto.d.ts +22 -0
  361. package/dist/telemetry/dto/telemetry-status.dto.d.ts.map +1 -0
  362. package/dist/telemetry/dto/telemetry-status.dto.js +12 -0
  363. package/dist/telemetry/dto/telemetry-status.dto.js.map +1 -0
  364. package/dist/telemetry/export/parquet-writer.loader.d.ts +13 -0
  365. package/dist/telemetry/export/parquet-writer.loader.d.ts.map +1 -0
  366. package/dist/telemetry/export/parquet-writer.loader.js +29 -0
  367. package/dist/telemetry/export/parquet-writer.loader.js.map +1 -0
  368. package/dist/telemetry/export/telemetry-export.service.d.ts +39 -0
  369. package/dist/telemetry/export/telemetry-export.service.d.ts.map +1 -0
  370. package/dist/telemetry/export/telemetry-export.service.js +185 -0
  371. package/dist/telemetry/export/telemetry-export.service.js.map +1 -0
  372. package/dist/telemetry/greptime/greptime-host.d.ts +44 -0
  373. package/dist/telemetry/greptime/greptime-host.d.ts.map +1 -0
  374. package/dist/telemetry/greptime/greptime-host.js +114 -0
  375. package/dist/telemetry/greptime/greptime-host.js.map +1 -0
  376. package/dist/telemetry/greptime/greptime.client.d.ts +171 -0
  377. package/dist/telemetry/greptime/greptime.client.d.ts.map +1 -0
  378. package/dist/telemetry/greptime/greptime.client.js +352 -0
  379. package/dist/telemetry/greptime/greptime.client.js.map +1 -0
  380. package/dist/telemetry/greptime/greptime.errors.d.ts +59 -0
  381. package/dist/telemetry/greptime/greptime.errors.d.ts.map +1 -0
  382. package/dist/telemetry/greptime/greptime.errors.js +100 -0
  383. package/dist/telemetry/greptime/greptime.errors.js.map +1 -0
  384. package/dist/telemetry/handlers/telemetry-retention.handler.d.ts +27 -0
  385. package/dist/telemetry/handlers/telemetry-retention.handler.d.ts.map +1 -0
  386. package/dist/telemetry/handlers/telemetry-retention.handler.js +123 -0
  387. package/dist/telemetry/handlers/telemetry-retention.handler.js.map +1 -0
  388. package/dist/telemetry/index.d.ts +37 -0
  389. package/dist/telemetry/index.d.ts.map +1 -0
  390. package/dist/telemetry/index.js +97 -0
  391. package/dist/telemetry/index.js.map +1 -0
  392. package/dist/telemetry/internal/blank-secret.d.ts +3 -0
  393. package/dist/telemetry/internal/blank-secret.d.ts.map +1 -0
  394. package/dist/telemetry/internal/blank-secret.js +14 -0
  395. package/dist/telemetry/internal/blank-secret.js.map +1 -0
  396. package/dist/telemetry/internal/csv.d.ts +9 -0
  397. package/dist/telemetry/internal/csv.d.ts.map +1 -0
  398. package/dist/telemetry/internal/csv.js +23 -0
  399. package/dist/telemetry/internal/csv.js.map +1 -0
  400. package/dist/telemetry/internal/sse.d.ts +23 -0
  401. package/dist/telemetry/internal/sse.d.ts.map +1 -0
  402. package/dist/telemetry/internal/sse.js +43 -0
  403. package/dist/telemetry/internal/sse.js.map +1 -0
  404. package/dist/telemetry/metrics/groups/database.metric-group.d.ts +7 -0
  405. package/dist/telemetry/metrics/groups/database.metric-group.d.ts.map +1 -0
  406. package/dist/telemetry/metrics/groups/database.metric-group.js +159 -0
  407. package/dist/telemetry/metrics/groups/database.metric-group.js.map +1 -0
  408. package/dist/telemetry/metrics/groups/host.metric-group.d.ts +7 -0
  409. package/dist/telemetry/metrics/groups/host.metric-group.d.ts.map +1 -0
  410. package/dist/telemetry/metrics/groups/host.metric-group.js +146 -0
  411. package/dist/telemetry/metrics/groups/host.metric-group.js.map +1 -0
  412. package/dist/telemetry/metrics/groups/nodes.metric-group.d.ts +7 -0
  413. package/dist/telemetry/metrics/groups/nodes.metric-group.d.ts.map +1 -0
  414. package/dist/telemetry/metrics/groups/nodes.metric-group.js +159 -0
  415. package/dist/telemetry/metrics/groups/nodes.metric-group.js.map +1 -0
  416. package/dist/telemetry/metrics/groups/pipeline.metric-group.d.ts +7 -0
  417. package/dist/telemetry/metrics/groups/pipeline.metric-group.d.ts.map +1 -0
  418. package/dist/telemetry/metrics/groups/pipeline.metric-group.js +144 -0
  419. package/dist/telemetry/metrics/groups/pipeline.metric-group.js.map +1 -0
  420. package/dist/telemetry/metrics/groups/queue.metric-group.d.ts +7 -0
  421. package/dist/telemetry/metrics/groups/queue.metric-group.d.ts.map +1 -0
  422. package/dist/telemetry/metrics/groups/queue.metric-group.js +163 -0
  423. package/dist/telemetry/metrics/groups/queue.metric-group.js.map +1 -0
  424. package/dist/telemetry/metrics/groups/uptime.metric-group.d.ts +7 -0
  425. package/dist/telemetry/metrics/groups/uptime.metric-group.d.ts.map +1 -0
  426. package/dist/telemetry/metrics/groups/uptime.metric-group.js +103 -0
  427. package/dist/telemetry/metrics/groups/uptime.metric-group.js.map +1 -0
  428. package/dist/telemetry/metrics/metric-catalog.d.ts +324 -0
  429. package/dist/telemetry/metrics/metric-catalog.d.ts.map +1 -0
  430. package/dist/telemetry/metrics/metric-catalog.helpers.d.ts +30 -0
  431. package/dist/telemetry/metrics/metric-catalog.helpers.d.ts.map +1 -0
  432. package/dist/telemetry/metrics/metric-catalog.helpers.js +37 -0
  433. package/dist/telemetry/metrics/metric-catalog.helpers.js.map +1 -0
  434. package/dist/telemetry/metrics/metric-catalog.js +180 -0
  435. package/dist/telemetry/metrics/metric-catalog.js.map +1 -0
  436. package/dist/telemetry/metrics/metric-group-registry.service.d.ts +59 -0
  437. package/dist/telemetry/metrics/metric-group-registry.service.d.ts.map +1 -0
  438. package/dist/telemetry/metrics/metric-group-registry.service.js +99 -0
  439. package/dist/telemetry/metrics/metric-group-registry.service.js.map +1 -0
  440. package/dist/telemetry/metrics/metric-group.d.ts +113 -0
  441. package/dist/telemetry/metrics/metric-group.d.ts.map +1 -0
  442. package/dist/telemetry/metrics/metric-group.js +647 -0
  443. package/dist/telemetry/metrics/metric-group.js.map +1 -0
  444. package/dist/telemetry/metrics/metric-group.manifest.d.ts +2 -0
  445. package/dist/telemetry/metrics/metric-group.manifest.d.ts.map +1 -0
  446. package/dist/telemetry/metrics/metric-group.manifest.js +30 -0
  447. package/dist/telemetry/metrics/metric-group.manifest.js.map +1 -0
  448. package/dist/telemetry/metrics/metric-group.registry.d.ts +109 -0
  449. package/dist/telemetry/metrics/metric-group.registry.d.ts.map +1 -0
  450. package/dist/telemetry/metrics/metric-group.registry.js +181 -0
  451. package/dist/telemetry/metrics/metric-group.registry.js.map +1 -0
  452. package/dist/telemetry/metrics/metric-sql.d.ts +98 -0
  453. package/dist/telemetry/metrics/metric-sql.d.ts.map +1 -0
  454. package/dist/telemetry/metrics/metric-sql.js +259 -0
  455. package/dist/telemetry/metrics/metric-sql.js.map +1 -0
  456. package/dist/telemetry/metrics/metric-values.d.ts +19 -0
  457. package/dist/telemetry/metrics/metric-values.d.ts.map +1 -0
  458. package/dist/telemetry/metrics/metric-values.js +97 -0
  459. package/dist/telemetry/metrics/metric-values.js.map +1 -0
  460. package/dist/telemetry/metrics/metric-verdict.d.ts +20 -0
  461. package/dist/telemetry/metrics/metric-verdict.d.ts.map +1 -0
  462. package/dist/telemetry/metrics/metric-verdict.js +218 -0
  463. package/dist/telemetry/metrics/metric-verdict.js.map +1 -0
  464. package/dist/telemetry/ports.d.ts +575 -0
  465. package/dist/telemetry/ports.d.ts.map +1 -0
  466. package/dist/telemetry/ports.js +78 -0
  467. package/dist/telemetry/ports.js.map +1 -0
  468. package/dist/telemetry/query/sql-guard.d.ts +71 -0
  469. package/dist/telemetry/query/sql-guard.d.ts.map +1 -0
  470. package/dist/telemetry/query/sql-guard.js +258 -0
  471. package/dist/telemetry/query/sql-guard.js.map +1 -0
  472. package/dist/telemetry/query/telemetry-availability.d.ts +11 -0
  473. package/dist/telemetry/query/telemetry-availability.d.ts.map +1 -0
  474. package/dist/telemetry/query/telemetry-availability.js +55 -0
  475. package/dist/telemetry/query/telemetry-availability.js.map +1 -0
  476. package/dist/telemetry/query/telemetry-query.errors.d.ts +48 -0
  477. package/dist/telemetry/query/telemetry-query.errors.d.ts.map +1 -0
  478. package/dist/telemetry/query/telemetry-query.errors.js +100 -0
  479. package/dist/telemetry/query/telemetry-query.errors.js.map +1 -0
  480. package/dist/telemetry/query/telemetry-query.service.d.ts +57 -0
  481. package/dist/telemetry/query/telemetry-query.service.d.ts.map +1 -0
  482. package/dist/telemetry/query/telemetry-query.service.js +194 -0
  483. package/dist/telemetry/query/telemetry-query.service.js.map +1 -0
  484. package/dist/telemetry/query/telemetry-schema.service.d.ts +36 -0
  485. package/dist/telemetry/query/telemetry-schema.service.d.ts.map +1 -0
  486. package/dist/telemetry/query/telemetry-schema.service.js +154 -0
  487. package/dist/telemetry/query/telemetry-schema.service.js.map +1 -0
  488. package/dist/telemetry/stack/dto/telemetry-stack.dto.d.ts +29 -0
  489. package/dist/telemetry/stack/dto/telemetry-stack.dto.d.ts.map +1 -0
  490. package/dist/telemetry/stack/dto/telemetry-stack.dto.js +27 -0
  491. package/dist/telemetry/stack/dto/telemetry-stack.dto.js.map +1 -0
  492. package/dist/telemetry/stack/stack-agent.client.d.ts +76 -0
  493. package/dist/telemetry/stack/stack-agent.client.d.ts.map +1 -0
  494. package/dist/telemetry/stack/stack-agent.client.js +208 -0
  495. package/dist/telemetry/stack/stack-agent.client.js.map +1 -0
  496. package/dist/telemetry/stack/telemetry-stack-deploy.handler.d.ts +43 -0
  497. package/dist/telemetry/stack/telemetry-stack-deploy.handler.d.ts.map +1 -0
  498. package/dist/telemetry/stack/telemetry-stack-deploy.handler.js +159 -0
  499. package/dist/telemetry/stack/telemetry-stack-deploy.handler.js.map +1 -0
  500. package/dist/telemetry/stack/telemetry-stack.controller.d.ts +14 -0
  501. package/dist/telemetry/stack/telemetry-stack.controller.d.ts.map +1 -0
  502. package/dist/telemetry/stack/telemetry-stack.controller.js +107 -0
  503. package/dist/telemetry/stack/telemetry-stack.controller.js.map +1 -0
  504. package/dist/telemetry/stack/telemetry-stack.service.d.ts +19 -0
  505. package/dist/telemetry/stack/telemetry-stack.service.d.ts.map +1 -0
  506. package/dist/telemetry/stack/telemetry-stack.service.js +122 -0
  507. package/dist/telemetry/stack/telemetry-stack.service.js.map +1 -0
  508. package/dist/telemetry/tasks/telemetry-retention.task.d.ts +8 -0
  509. package/dist/telemetry/tasks/telemetry-retention.task.d.ts.map +1 -0
  510. package/dist/telemetry/tasks/telemetry-retention.task.js +61 -0
  511. package/dist/telemetry/tasks/telemetry-retention.task.js.map +1 -0
  512. package/dist/telemetry/telemetry-admin.controller.d.ts +14 -0
  513. package/dist/telemetry/telemetry-admin.controller.d.ts.map +1 -0
  514. package/dist/telemetry/telemetry-admin.controller.js +148 -0
  515. package/dist/telemetry/telemetry-admin.controller.js.map +1 -0
  516. package/dist/telemetry/telemetry-config.controller.d.ts +14 -0
  517. package/dist/telemetry/telemetry-config.controller.d.ts.map +1 -0
  518. package/dist/telemetry/telemetry-config.controller.js +73 -0
  519. package/dist/telemetry/telemetry-config.controller.js.map +1 -0
  520. package/dist/telemetry/telemetry-explorer.controller.d.ts +14 -0
  521. package/dist/telemetry/telemetry-explorer.controller.d.ts.map +1 -0
  522. package/dist/telemetry/telemetry-explorer.controller.js +193 -0
  523. package/dist/telemetry/telemetry-explorer.controller.js.map +1 -0
  524. package/dist/telemetry/telemetry-settings.service.d.ts +85 -0
  525. package/dist/telemetry/telemetry-settings.service.d.ts.map +1 -0
  526. package/dist/telemetry/telemetry-settings.service.js +278 -0
  527. package/dist/telemetry/telemetry-settings.service.js.map +1 -0
  528. package/dist/telemetry/telemetry-status.service.d.ts +28 -0
  529. package/dist/telemetry/telemetry-status.service.d.ts.map +1 -0
  530. package/dist/telemetry/telemetry-status.service.js +185 -0
  531. package/dist/telemetry/telemetry-status.service.js.map +1 -0
  532. package/dist/telemetry/telemetry-support-bundle.section.d.ts +163 -0
  533. package/dist/telemetry/telemetry-support-bundle.section.d.ts.map +1 -0
  534. package/dist/telemetry/telemetry-support-bundle.section.js +187 -0
  535. package/dist/telemetry/telemetry-support-bundle.section.js.map +1 -0
  536. package/dist/telemetry/telemetry.module.d.ts +35 -0
  537. package/dist/telemetry/telemetry.module.d.ts.map +1 -0
  538. package/dist/telemetry/telemetry.module.js +210 -0
  539. package/dist/telemetry/telemetry.module.js.map +1 -0
  540. package/dist/telemetry/telemetry.options.d.ts +176 -0
  541. package/dist/telemetry/telemetry.options.d.ts.map +1 -0
  542. package/dist/telemetry/telemetry.options.js +246 -0
  543. package/dist/telemetry/telemetry.options.js.map +1 -0
  544. package/dist/telemetry/telemetry.permissions.d.ts +76 -0
  545. package/dist/telemetry/telemetry.permissions.d.ts.map +1 -0
  546. package/dist/telemetry/telemetry.permissions.js +85 -0
  547. package/dist/telemetry/telemetry.permissions.js.map +1 -0
  548. package/dist/telemetry/telemetry.settings.d.ts +79 -0
  549. package/dist/telemetry/telemetry.settings.d.ts.map +1 -0
  550. package/dist/telemetry/telemetry.settings.js +92 -0
  551. package/dist/telemetry/telemetry.settings.js.map +1 -0
  552. package/dist/telemetry/testing/coach-metric-group.fixture.d.ts +17 -0
  553. package/dist/telemetry/testing/coach-metric-group.fixture.d.ts.map +1 -0
  554. package/dist/telemetry/testing/coach-metric-group.fixture.js +128 -0
  555. package/dist/telemetry/testing/coach-metric-group.fixture.js.map +1 -0
  556. package/dist/telemetry/testing/conformance.d.ts +257 -0
  557. package/dist/telemetry/testing/conformance.d.ts.map +1 -0
  558. package/dist/telemetry/testing/conformance.js +626 -0
  559. package/dist/telemetry/testing/conformance.js.map +1 -0
  560. package/dist/telemetry/testing/index.d.ts +10 -0
  561. package/dist/telemetry/testing/index.d.ts.map +1 -0
  562. package/dist/telemetry/testing/index.js +41 -0
  563. package/dist/telemetry/testing/index.js.map +1 -0
  564. package/dist/telemetry/testing/metric-schema.fixture.d.ts +73 -0
  565. package/dist/telemetry/testing/metric-schema.fixture.d.ts.map +1 -0
  566. package/dist/telemetry/testing/metric-schema.fixture.js +362 -0
  567. package/dist/telemetry/testing/metric-schema.fixture.js.map +1 -0
  568. package/dist/telemetry/testing/stub-ports.d.ts +46 -0
  569. package/dist/telemetry/testing/stub-ports.d.ts.map +1 -0
  570. package/dist/telemetry/testing/stub-ports.js +119 -0
  571. package/dist/telemetry/testing/stub-ports.js.map +1 -0
  572. package/dist/testing/conformance-suite.d.ts +106 -0
  573. package/dist/testing/conformance-suite.d.ts.map +1 -0
  574. package/dist/testing/conformance-suite.js +8 -0
  575. package/dist/testing/conformance-suite.js.map +1 -0
  576. package/dist/testing/conformance-suites.d.ts +14 -0
  577. package/dist/testing/conformance-suites.d.ts.map +1 -0
  578. package/dist/testing/conformance-suites.js +27 -0
  579. package/dist/testing/conformance-suites.js.map +1 -0
  580. package/dist/testing/host/in-memory-audit-sink.d.ts +23 -0
  581. package/dist/testing/host/in-memory-audit-sink.d.ts.map +1 -0
  582. package/dist/testing/host/in-memory-audit-sink.js +30 -0
  583. package/dist/testing/host/in-memory-audit-sink.js.map +1 -0
  584. package/dist/testing/host/in-memory-system-settings-store.d.ts +31 -0
  585. package/dist/testing/host/in-memory-system-settings-store.d.ts.map +1 -0
  586. package/dist/testing/host/in-memory-system-settings-store.js +54 -0
  587. package/dist/testing/host/in-memory-system-settings-store.js.map +1 -0
  588. package/dist/testing/host/index.d.ts +4 -0
  589. package/dist/testing/host/index.d.ts.map +1 -0
  590. package/dist/testing/host/index.js +13 -0
  591. package/dist/testing/host/index.js.map +1 -0
  592. package/dist/testing/host/test-platform-host.d.ts +35 -0
  593. package/dist/testing/host/test-platform-host.d.ts.map +1 -0
  594. package/dist/testing/host/test-platform-host.js +81 -0
  595. package/dist/testing/host/test-platform-host.js.map +1 -0
  596. package/dist/testing/index.d.ts +12 -0
  597. package/dist/testing/index.d.ts.map +1 -0
  598. package/dist/testing/index.js +32 -0
  599. package/dist/testing/index.js.map +1 -0
  600. package/dist/testing/prisma-schema.d.ts +99 -0
  601. package/dist/testing/prisma-schema.d.ts.map +1 -0
  602. package/dist/testing/prisma-schema.js +175 -0
  603. package/dist/testing/prisma-schema.js.map +1 -0
  604. package/dist/testing/run-platform-conformance.d.ts +70 -0
  605. package/dist/testing/run-platform-conformance.d.ts.map +1 -0
  606. package/dist/testing/run-platform-conformance.js +77 -0
  607. package/dist/testing/run-platform-conformance.js.map +1 -0
  608. package/dist/testing/suites/cron-enqueue-only.d.ts +46 -0
  609. package/dist/testing/suites/cron-enqueue-only.d.ts.map +1 -0
  610. package/dist/testing/suites/cron-enqueue-only.js +177 -0
  611. package/dist/testing/suites/cron-enqueue-only.js.map +1 -0
  612. package/dist/testing/suites/user-owned-data.d.ts +86 -0
  613. package/dist/testing/suites/user-owned-data.d.ts.map +1 -0
  614. package/dist/testing/suites/user-owned-data.js +329 -0
  615. package/dist/testing/suites/user-owned-data.js.map +1 -0
  616. package/package.json +129 -4
@@ -0,0 +1,486 @@
1
+ "use strict";
2
+ // =============================================================================
3
+ // SQL the telemetry dashboard runs (issue #577, epic #576)
4
+ // =============================================================================
5
+ //
6
+ // PURE TEMPLATE FUNCTIONS. Every statement the dashboard sends is authored
7
+ // here, by the server, from:
8
+ //
9
+ // - fixed identifiers (the constants below), quoted with doubled `"`;
10
+ // - `Date` objects the request validation produced, rendered as ISO
11
+ // literals (`'2026-09-27T22:00:00.000Z'`);
12
+ // - `service` / `instance` values the SERVICE has already matched against
13
+ // the distinct values seen in the range (cached list), then single-quoted
14
+ // with doubled `'`;
15
+ // - the event search text `q`, reduced by `likeContainsPattern` (control
16
+ // characters stripped, capped at 200, `\` `%` `_` escaped, `'` doubled)
17
+ // and used ONLY as `body ILIKE '%…%' ESCAPE '\'`;
18
+ // - a pagination cursor whose timestamp and span id matched strict patterns.
19
+ //
20
+ // NO BIND PARAMETERS: GreptimeDB's Postgres wire refuses `$1` (spike #529).
21
+ // Every statement carries a literal top-level LIMIT (never a subquery wrapper
22
+ // for a row cap: GreptimeDB drops an inner ORDER BY through one, #554).
23
+ //
24
+ // -----------------------------------------------------------------------------
25
+ // STEP 0 FINDINGS (verified live on GreptimeDB v1.2.1, 2026-09-27)
26
+ // -----------------------------------------------------------------------------
27
+ // These override the issue text where they differ.
28
+ //
29
+ // Traces (`opentelemetry_traces`)
30
+ // - Server spans: `span_kind = 'SPAN_KIND_SERVER'` (span_name is only the
31
+ // method, e.g. `GET`).
32
+ // - Status: `"span_attributes.http.response.status_code"` (bigint, no cast).
33
+ // `"span_attributes.http.status_code"` does NOT exist. span_status_code is
34
+ // STATUS_CODE_UNSET for 4xx, so classes come from the numeric column.
35
+ // - Method: `"span_attributes.http.request.method"`.
36
+ // - ROUTE: `"span_attributes.http.route"` is EMPTY on server spans (the
37
+ // Fastify http instrumentation does not set it; only NestJS INTERNAL
38
+ // spans carry it, and those are missing for requests rejected before the
39
+ // handler). => routes are grouped by a NORMALIZED `"span_attributes.url.path"`
40
+ // of the server span (always present; the collector already redacts the
41
+ // query string): numeric, UUID and 24+ hex segments become `:id`
42
+ // (`ROUTE_NORMALIZE_PATTERN`). The API field stays `route`, documented as
43
+ // the normalized path.
44
+ // Since #650 the API's own `onRequest` hook (`common/otel/request-span-
45
+ // attributes.ts`) writes `http.route` on matched requests going forward,
46
+ // but the dashboard keeps grouping by the normalized path: old spans have
47
+ // no route, and an UNKNOWN route has none by definition.
48
+ // - Unknown routes (#650): the same hook writes `app.route.matched = false`
49
+ // when Fastify's not-found handler answered, and `app.request.bearer`
50
+ // (an `Authorization: Bearer` header was present — never the token) on
51
+ // every request. Flattened to `"span_attributes.app.route.matched"` and
52
+ // `"span_attributes.app.request.bearer"` (booleans), like every span
53
+ // attribute. Both columns exist only once written, so every statement that
54
+ // reads them is built only when `catalogOf` saw them; without the matched
55
+ // column there is NO unknown-route figure at all (a 404 alone cannot tell
56
+ // an unknown route from a missing row, so the dashboard does not guess).
57
+ // - Service: `service_name`; instance: `"resource_attributes.app.instance.id"`.
58
+ // - duration_nano: bigint unsigned (ns).
59
+ //
60
+ // Logs (`opentelemetry_logs`)
61
+ // - Severity by `severity_number` (OTel standard / pino mapping), not by
62
+ // `severity_text` (lower-case pino labels): error >= 17 (error 17,
63
+ // fatal 21), warn 13..16, info 9..12, other < 9 (or NULL).
64
+ // - Service and instance are NOT flattened columns: keys of the JSON column
65
+ // `resource_attributes`, read with
66
+ // `json_get_string(resource_attributes, '["service.name"]')` /
67
+ // `'["app.instance.id"]'` (a bare 'service.name' path is NULL: `.` is a
68
+ // path separator).
69
+ // - Search: `body ILIKE '%<q>%' ESCAPE '\'` (predictable substring
70
+ // semantics; `matches()` has query-language semantics — OR, quotes, `-`).
71
+ // GreptimeDB string literals are standard SQL: `\` is not an escape
72
+ // character in a literal, only `''` is.
73
+ // - trace_id / span_id may be '' for a log outside a request.
74
+ // - Timestamps arrive over the wire with microsecond text; the events query
75
+ // selects `CAST("timestamp" AS STRING)` so a cursor keeps full precision.
76
+ //
77
+ // Runtime metrics (Prometheus-style tables, present when the runtime-node
78
+ // instrumentation is on)
79
+ // - Columns: `greptime_timestamp` (time index), `greptime_value`,
80
+ // `service_name`, … — NO instance column, so the instance filter does not
81
+ // apply to runtime tiles.
82
+ // - Heap used: `v8js_memory_heap_used_bytes` has one row per heap space per
83
+ // export => SUM per `greptime_timestamp` first, then average per bucket.
84
+ // - Event-loop delay: `nodejs_eventloop_delay_p99_seconds` (seconds; max per
85
+ // bucket, converted to ms).
86
+ // - Exported every 60 s, so runtime sparklines have 1-minute resolution.
87
+ //
88
+ // SQL verified on v1.2.1: `date_bin(INTERVAL 'n seconds', ts)`,
89
+ // `approx_percentile_cont(0.95) WITHIN GROUP (ORDER BY duration_nano)` (ns),
90
+ // ISO timestamp literals, `regexp_replace(…, 'g')`, `ILIKE … ESCAPE '\'`,
91
+ // `UNION` + top-level `ORDER BY … LIMIT`, scalar subqueries, GROUP BY alias.
92
+ // =============================================================================
93
+ Object.defineProperty(exports, "__esModule", { value: true });
94
+ exports.EVENT_CURSOR_SPAN_PATTERN = exports.EVENT_CURSOR_TS_PATTERN = exports.CLIENT_ERROR_PREDICATE = exports.UNKNOWN_ROUTE_PREDICATE = exports.LATENCY_P95_NS = exports.STREAM_SPAN_PREDICATE = exports.STREAM_PATH_SUFFIX = exports.ERROR_MESSAGE_CHARS = exports.SEARCH_MAX_LENGTH = exports.DISTINCT_VALUES_MAX = exports.EVENTS_PAGE_SIZE = exports.TOP_N = exports.EVENT_SEVERITIES = exports.SEVERITY_BANDS = exports.ROUTE_NORMALIZE_REPLACEMENT = exports.ROUTE_NORMALIZE_PATTERN = exports.SERVER_SPAN_KIND = exports.REQUIRED_LOG_COLUMNS = exports.REQUIRED_TRACE_COLUMNS = exports.TRACE_COLUMNS = exports.EVENT_LOOP_P99_TABLE = exports.HEAP_USED_TABLE = exports.LOGS_TABLE = exports.TRACES_TABLE = exports.timestampLiteral = exports.literal = exports.ident = exports.bucketSecondsFor = exports.bucketRowLimit = exports.bucketInterval = exports.BUCKET_SIZES_SECONDS = void 0;
95
+ exports.likeContainsPattern = likeContainsPattern;
96
+ exports.isStreamingRoute = isStreamingRoute;
97
+ exports.apiTimeseriesSql = apiTimeseriesSql;
98
+ exports.apiTotalsSql = apiTotalsSql;
99
+ exports.topRoutesSql = topRoutesSql;
100
+ exports.unknownRoutesTotalsSql = unknownRoutesTotalsSql;
101
+ exports.topUnknownRoutesSql = topUnknownRoutesSql;
102
+ exports.logsTimeseriesSql = logsTimeseriesSql;
103
+ exports.logsTotalsSql = logsTotalsSql;
104
+ exports.topErrorsSql = topErrorsSql;
105
+ exports.eventsSql = eventsSql;
106
+ exports.lastDataSql = lastDataSql;
107
+ exports.distinctServicesSql = distinctServicesSql;
108
+ exports.distinctInstancesSql = distinctInstancesSql;
109
+ exports.heapUsedSql = heapUsedSql;
110
+ exports.eventLoopDelayP99Sql = eventLoopDelayP99Sql;
111
+ const telemetry_1 = require("@marinoscar/platform-contract/telemetry");
112
+ const sql_literals_1 = require("./sql-literals");
113
+ var sql_literals_2 = require("./sql-literals");
114
+ Object.defineProperty(exports, "BUCKET_SIZES_SECONDS", { enumerable: true, get: function () { return sql_literals_2.BUCKET_SIZES_SECONDS; } });
115
+ Object.defineProperty(exports, "bucketInterval", { enumerable: true, get: function () { return sql_literals_2.bucketInterval; } });
116
+ Object.defineProperty(exports, "bucketRowLimit", { enumerable: true, get: function () { return sql_literals_2.bucketRowLimit; } });
117
+ Object.defineProperty(exports, "bucketSecondsFor", { enumerable: true, get: function () { return sql_literals_2.bucketSecondsFor; } });
118
+ Object.defineProperty(exports, "ident", { enumerable: true, get: function () { return sql_literals_2.ident; } });
119
+ Object.defineProperty(exports, "literal", { enumerable: true, get: function () { return sql_literals_2.literal; } });
120
+ Object.defineProperty(exports, "timestampLiteral", { enumerable: true, get: function () { return sql_literals_2.timestampLiteral; } });
121
+ /**
122
+ * The store's span table.
123
+ *
124
+ * @stability stable
125
+ */
126
+ exports.TRACES_TABLE = 'opentelemetry_traces';
127
+ /**
128
+ * The store's log table.
129
+ *
130
+ * @stability stable
131
+ */
132
+ exports.LOGS_TABLE = 'opentelemetry_logs';
133
+ exports.HEAP_USED_TABLE = 'v8js_memory_heap_used_bytes';
134
+ exports.EVENT_LOOP_P99_TABLE = 'nodejs_eventloop_delay_p99_seconds';
135
+ /** Trace columns the dashboard reads. Attribute columns exist only once an attribute was written. */
136
+ exports.TRACE_COLUMNS = {
137
+ timestamp: 'timestamp',
138
+ kind: 'span_kind',
139
+ service: 'service_name',
140
+ instance: 'resource_attributes.app.instance.id',
141
+ status: 'span_attributes.http.response.status_code',
142
+ method: 'span_attributes.http.request.method',
143
+ path: 'span_attributes.url.path',
144
+ duration: 'duration_nano',
145
+ /** `false` when no route matched (#650). Absent on old data and on stores that never saw an unknown route. */
146
+ routeMatched: 'span_attributes.app.route.matched',
147
+ /** Whether an `Authorization: Bearer` header was present (#650). Never the token. */
148
+ bearer: 'span_attributes.app.request.bearer',
149
+ };
150
+ /**
151
+ * The trace columns without which no API panel can be computed.
152
+ *
153
+ * @stability stable
154
+ */
155
+ exports.REQUIRED_TRACE_COLUMNS = [
156
+ exports.TRACE_COLUMNS.timestamp,
157
+ exports.TRACE_COLUMNS.kind,
158
+ exports.TRACE_COLUMNS.service,
159
+ exports.TRACE_COLUMNS.status,
160
+ exports.TRACE_COLUMNS.method,
161
+ exports.TRACE_COLUMNS.path,
162
+ exports.TRACE_COLUMNS.duration,
163
+ ];
164
+ /**
165
+ * The log columns without which no log panel can be computed.
166
+ *
167
+ * @stability stable
168
+ */
169
+ exports.REQUIRED_LOG_COLUMNS = [
170
+ 'timestamp',
171
+ 'severity_number',
172
+ 'body',
173
+ 'resource_attributes',
174
+ 'trace_id',
175
+ 'span_id',
176
+ ];
177
+ exports.SERVER_SPAN_KIND = 'SPAN_KIND_SERVER';
178
+ /** Numeric, UUID and long-hex path segments → `:id`. Applied with the `g` flag. */
179
+ exports.ROUTE_NORMALIZE_PATTERN = '/([0-9]+|[0-9a-fA-F]{8}-[0-9a-fA-F-]{27,}|[0-9a-fA-F]{24,})(/|$)';
180
+ exports.ROUTE_NORMALIZE_REPLACEMENT = '/:id$2';
181
+ /** Severity bands by `severity_number`. */
182
+ exports.SEVERITY_BANDS = {
183
+ error: 'severity_number >= 17',
184
+ warn: '(severity_number >= 13 AND severity_number < 17)',
185
+ info: '(severity_number >= 9 AND severity_number < 13)',
186
+ other: '(severity_number IS NULL OR severity_number < 9)',
187
+ };
188
+ /** The severities `events` filters on (`DASHBOARD_EVENT_SEVERITIES` in the contract, #702). */
189
+ exports.EVENT_SEVERITIES = telemetry_1.DASHBOARD_EVENT_SEVERITIES;
190
+ /** Top-N lists. */
191
+ exports.TOP_N = 10;
192
+ /** Events page size. */
193
+ exports.EVENTS_PAGE_SIZE = 50;
194
+ /** Distinct services / instances returned by `/filters`. */
195
+ exports.DISTINCT_VALUES_MAX = 200;
196
+ /** Longest search text, after control characters are stripped (`DASHBOARD_SEARCH_MAX_LENGTH` in the contract, #702). */
197
+ exports.SEARCH_MAX_LENGTH = telemetry_1.DASHBOARD_SEARCH_MAX_LENGTH;
198
+ /** Characters of a log body a grouped error message keeps. */
199
+ exports.ERROR_MESSAGE_CHARS = 200;
200
+ // ---- literals ----------------------------------------------------------------
201
+ //
202
+ // Shared with the metric catalog builders (`../metrics/metric-sql.ts`, #601);
203
+ // re-exported so existing imports keep working.
204
+ /**
205
+ * The search text as the inside of an `ILIKE '%…%' ESCAPE '\'` literal:
206
+ * control characters stripped, capped at `SEARCH_MAX_LENGTH`, LIKE
207
+ * metacharacters (`\`, `%`, `_`) escaped with `\`, then `'` doubled.
208
+ * Returns '' when nothing searchable remains.
209
+ */
210
+ function likeContainsPattern(q) {
211
+ const cleaned = q.replace(/[\u0000-\u001f\u007f-\u009f\u2028\u2029]/g, '').slice(0, exports.SEARCH_MAX_LENGTH);
212
+ return cleaned.replace(/[\\%_]/g, (c) => `\\${c}`).replace(/'/g, "''");
213
+ }
214
+ function traceFilters(filters) {
215
+ const parts = [];
216
+ if (filters.service)
217
+ parts.push(`${(0, sql_literals_1.ident)(exports.TRACE_COLUMNS.service)} = ${(0, sql_literals_1.literal)(filters.service)}`);
218
+ if (filters.instance) {
219
+ parts.push(filters.tracesHaveInstance === false
220
+ ? '1 = 0'
221
+ : `${(0, sql_literals_1.ident)(exports.TRACE_COLUMNS.instance)} = ${(0, sql_literals_1.literal)(filters.instance)}`);
222
+ }
223
+ return parts.map((p) => ` AND ${p}`).join('');
224
+ }
225
+ const LOG_SERVICE = `json_get_string(resource_attributes, '["service.name"]')`;
226
+ const LOG_INSTANCE = `json_get_string(resource_attributes, '["app.instance.id"]')`;
227
+ function logFilters(filters) {
228
+ const parts = [];
229
+ if (filters.service)
230
+ parts.push(`${LOG_SERVICE} = ${(0, sql_literals_1.literal)(filters.service)}`);
231
+ if (filters.instance)
232
+ parts.push(`${LOG_INSTANCE} = ${(0, sql_literals_1.literal)(filters.instance)}`);
233
+ return parts.map((p) => ` AND ${p}`).join('');
234
+ }
235
+ function serverSpans(from, to, filters) {
236
+ return (`FROM ${(0, sql_literals_1.ident)(exports.TRACES_TABLE)} WHERE ${(0, sql_literals_1.ident)(exports.TRACE_COLUMNS.kind)} = ${(0, sql_literals_1.literal)(exports.SERVER_SPAN_KIND)} ` +
237
+ `AND ${(0, sql_literals_1.between)(exports.TRACE_COLUMNS.timestamp, from, to)}${traceFilters(filters)}`);
238
+ }
239
+ const STATUS = (0, sql_literals_1.ident)(exports.TRACE_COLUMNS.status);
240
+ // ---- streaming (SSE) exclusion for latency -------------------------------------
241
+ //
242
+ // A Server-Sent Events route holds its request open for the life of the
243
+ // subscription, so its server span lasts seconds to hours (live: GET
244
+ // /api/notifications/stream at p95 5.38 s). Mixed into an overall p95 it
245
+ // measures connection lifetime, not responsiveness: with enough subscribers
246
+ // it pushes the window p95 over the verdict threshold (false Degraded /
247
+ // Critical) and gets named the "slowest route". Every SSE route of this API
248
+ // ends in `/stream` (GET /api/notifications/stream, POST /api/ai/responses/stream,
249
+ // POST /api/admin/telemetry/assistant/stream), so a path suffix identifies them.
250
+ //
251
+ // The exclusion applies ONLY to latency: the p95 tile (current and previous
252
+ // window, and its sparkline), the API time-series p95 line and the verdict's
253
+ // "slowest route" offender. Streams still count in requests, status classes,
254
+ // error rates and the top-routes table (whose per-route p95 is honest: it is
255
+ // the stream's own row).
256
+ //
257
+ // Implemented as a CASE inside the percentile's ORDER BY, in the same
258
+ // statement: the aggregate ignores NULLs (verified on GreptimeDB v1.2.1: the
259
+ // result equals a WHERE-filtered p95, and a stream-only group yields NULL).
260
+ // Written as `LIKE … THEN NULL ELSE duration` so a span without a path is kept.
261
+ /** Path suffix shared by every SSE route of the API. */
262
+ exports.STREAM_PATH_SUFFIX = '/stream';
263
+ /** SQL predicate: the server span is a streaming (SSE) request. */
264
+ exports.STREAM_SPAN_PREDICATE = `${(0, sql_literals_1.ident)(exports.TRACE_COLUMNS.path)} LIKE ${(0, sql_literals_1.literal)(`%${exports.STREAM_PATH_SUFFIX}`)}`;
265
+ /** Whether a (normalized) route is a streaming (SSE) route; the TS twin of `STREAM_SPAN_PREDICATE`. */
266
+ function isStreamingRoute(route) {
267
+ return typeof route === 'string' && route.endsWith(exports.STREAM_PATH_SUFFIX);
268
+ }
269
+ /** p95 (ns) of every server span in the group, streams included (per-route table). */
270
+ const P95_NS = `approx_percentile_cont(0.95) WITHIN GROUP (ORDER BY ${(0, sql_literals_1.ident)(exports.TRACE_COLUMNS.duration)})`;
271
+ /** p95 (ns) of the group with streaming (SSE) spans left out; NULL when only streams. */
272
+ exports.LATENCY_P95_NS = `approx_percentile_cont(0.95) WITHIN GROUP (ORDER BY CASE WHEN ${exports.STREAM_SPAN_PREDICATE} ` +
273
+ `THEN NULL ELSE ${(0, sql_literals_1.ident)(exports.TRACE_COLUMNS.duration)} END)`;
274
+ function statusClass(low) {
275
+ return `sum(CASE WHEN ${STATUS} >= ${low} AND ${STATUS} < ${low + 100} THEN 1 ELSE 0 END)`;
276
+ }
277
+ // ---- API panel ---------------------------------------------------------------
278
+ /**
279
+ * Server spans per bucket: status classes and p95 (ns, streams excluded).
280
+ * Columns: t, total, s2xx, s3xx, s4xx, s5xx, p95_ns.
281
+ */
282
+ function apiTimeseriesSql(window, filters = {}) {
283
+ return (`SELECT date_bin(${(0, sql_literals_1.bucketInterval)(window.bucketSeconds)}, ${(0, sql_literals_1.ident)('timestamp')}) AS t, count(*) AS total, ` +
284
+ `${statusClass(200)} AS s2xx, ${statusClass(300)} AS s3xx, ${statusClass(400)} AS s4xx, ` +
285
+ `sum(CASE WHEN ${STATUS} >= 500 THEN 1 ELSE 0 END) AS s5xx, ${exports.LATENCY_P95_NS} AS p95_ns ` +
286
+ `${serverSpans(window.from, window.to, filters)} ` +
287
+ `GROUP BY t ORDER BY t LIMIT ${(0, sql_literals_1.bucketRowLimit)(window.from, window.to, window.bucketSeconds)}`);
288
+ }
289
+ /**
290
+ * Totals of the current window `[from, to)` and the previous one
291
+ * `[previousFrom, from)` in one statement. Columns: period
292
+ * ('current'|'previous'), requests, errors (5xx), p95_ns (streams excluded).
293
+ */
294
+ function apiTotalsSql(previousFrom, window, filters = {}) {
295
+ return (`SELECT CASE WHEN ${(0, sql_literals_1.ident)('timestamp')} >= ${(0, sql_literals_1.timestampLiteral)(window.from)} THEN 'current' ELSE 'previous' END AS period, ` +
296
+ `count(*) AS requests, sum(CASE WHEN ${STATUS} >= 500 THEN 1 ELSE 0 END) AS errors, ${exports.LATENCY_P95_NS} AS p95_ns ` +
297
+ `${serverSpans(previousFrom, window.to, filters)} ` +
298
+ 'GROUP BY period ORDER BY period LIMIT 2');
299
+ }
300
+ /** The server span's path with numeric/UUID/hex segments as `:id`. */
301
+ const NORMALIZED_ROUTE = `regexp_replace(${(0, sql_literals_1.ident)(exports.TRACE_COLUMNS.path)}, ${(0, sql_literals_1.literal)(exports.ROUTE_NORMALIZE_PATTERN)}, ${(0, sql_literals_1.literal)(exports.ROUTE_NORMALIZE_REPLACEMENT)}, 'g')`;
302
+ /**
303
+ * Top routes (normalized path) by 5xx count, then client errors (4xx except
304
+ * 401), then p95. Columns: method, route, requests, errors (5xx),
305
+ * client_errors, unknown_requests (requests to an unknown route — a literal 0 when the
306
+ * traces table has no matched column, #650), p95_ns. `limit` is TOP_N + 1 so
307
+ * truncation shows. Streams stay in, with their own p95: the table is per
308
+ * route, so it is honest.
309
+ */
310
+ function topRoutesSql(window, filters = {}, limit = exports.TOP_N + 1) {
311
+ const unknown = filters.tracesHaveRouteMatched
312
+ ? `sum(CASE WHEN ${exports.UNKNOWN_ROUTE_PREDICATE} THEN 1 ELSE 0 END)`
313
+ : '0';
314
+ return (`SELECT ${(0, sql_literals_1.ident)(exports.TRACE_COLUMNS.method)} AS method, ${NORMALIZED_ROUTE} AS route, ` +
315
+ `count(*) AS requests, sum(CASE WHEN ${STATUS} >= 500 THEN 1 ELSE 0 END) AS errors, ` +
316
+ `sum(CASE WHEN ${exports.CLIENT_ERROR_PREDICATE} THEN 1 ELSE 0 END) AS client_errors, ${unknown} AS unknown_requests, ${P95_NS} AS p95_ns ` +
317
+ `${serverSpans(window.from, window.to, filters)} ` +
318
+ `GROUP BY method, route ORDER BY errors DESC, client_errors DESC, p95_ns DESC LIMIT ${(0, sql_literals_1.positive)(limit)}`);
319
+ }
320
+ // ---- unknown routes and client errors (#650) ---------------------------------
321
+ //
322
+ // An UNKNOWN ROUTE is a server span answered 404 by Fastify's not-found
323
+ // handler: `status = 404 AND "span_attributes.app.route.matched" = false`. A
324
+ // 404 from a matched route (`GET /api/gyms/:id` for a deleted gym) is a client
325
+ // error, not an unknown route. Requests with a bearer are the application's
326
+ // own clients (the web app, the CLI, worker nodes) calling a route this build
327
+ // does not have — a deploy skew or a real defect; anonymous ones are mostly
328
+ // internet scanners, counted but never alarming.
329
+ /** SQL predicate: the server span is a request to an unknown route. Only valid when the column exists. */
330
+ exports.UNKNOWN_ROUTE_PREDICATE = `${STATUS} = 404 AND ${(0, sql_literals_1.ident)(exports.TRACE_COLUMNS.routeMatched)} = false`;
331
+ /** Client errors the problem-routes table counts: 4xx except 401 (an expired access token is routine). */
332
+ exports.CLIENT_ERROR_PREDICATE = `${STATUS} >= 400 AND ${STATUS} < 500 AND ${STATUS} <> 401`;
333
+ function bearerCount(filters) {
334
+ return filters.tracesHaveBearer
335
+ ? `sum(CASE WHEN ${(0, sql_literals_1.ident)(exports.TRACE_COLUMNS.bearer)} = true THEN 1 ELSE 0 END)`
336
+ : '0';
337
+ }
338
+ /**
339
+ * Unknown-route requests of the current window `[from, to)` and the previous
340
+ * one `[previousFrom, from)`. Columns: period ('current'|'previous'),
341
+ * requests, bearer. Null when the traces table has no matched column (#650).
342
+ */
343
+ function unknownRoutesTotalsSql(previousFrom, window, filters = {}) {
344
+ if (!filters.tracesHaveRouteMatched)
345
+ return null;
346
+ return (`SELECT CASE WHEN ${(0, sql_literals_1.ident)('timestamp')} >= ${(0, sql_literals_1.timestampLiteral)(window.from)} THEN 'current' ELSE 'previous' END AS period, ` +
347
+ `count(*) AS requests, ${bearerCount(filters)} AS bearer ` +
348
+ `${serverSpans(previousFrom, window.to, filters)} AND ${exports.UNKNOWN_ROUTE_PREDICATE} ` +
349
+ 'GROUP BY period ORDER BY period LIMIT 2');
350
+ }
351
+ /**
352
+ * Unknown routes of the window by (method, normalized path), bearer requests
353
+ * first. Columns: method, route, requests, bearer. `limit` is TOP_N + 1 so
354
+ * truncation shows. Null when the traces table has no matched column (#650).
355
+ */
356
+ function topUnknownRoutesSql(window, filters = {}, limit = exports.TOP_N + 1) {
357
+ if (!filters.tracesHaveRouteMatched)
358
+ return null;
359
+ return (`SELECT ${(0, sql_literals_1.ident)(exports.TRACE_COLUMNS.method)} AS method, ${NORMALIZED_ROUTE} AS route, ` +
360
+ `count(*) AS requests, ${bearerCount(filters)} AS bearer ` +
361
+ `${serverSpans(window.from, window.to, filters)} AND ${exports.UNKNOWN_ROUTE_PREDICATE} ` +
362
+ `GROUP BY method, route ORDER BY bearer DESC, requests DESC, method, route LIMIT ${(0, sql_literals_1.positive)(limit)}`);
363
+ }
364
+ // ---- logs panel --------------------------------------------------------------
365
+ function logsIn(from, to, filters) {
366
+ return `FROM ${(0, sql_literals_1.ident)(exports.LOGS_TABLE)} WHERE ${(0, sql_literals_1.between)('timestamp', from, to)}${logFilters(filters)}`;
367
+ }
368
+ function band(name) {
369
+ return `sum(CASE WHEN ${exports.SEVERITY_BANDS[name]} THEN 1 ELSE 0 END)`;
370
+ }
371
+ /** Logs per bucket by severity band. Columns: t, error, warn, info, other. */
372
+ function logsTimeseriesSql(window, filters = {}) {
373
+ return (`SELECT date_bin(${(0, sql_literals_1.bucketInterval)(window.bucketSeconds)}, ${(0, sql_literals_1.ident)('timestamp')}) AS t, ` +
374
+ `${band('error')} AS error, ${band('warn')} AS warn, ${band('info')} AS info, ${band('other')} AS other ` +
375
+ `${logsIn(window.from, window.to, filters)} ` +
376
+ `GROUP BY t ORDER BY t LIMIT ${(0, sql_literals_1.bucketRowLimit)(window.from, window.to, window.bucketSeconds)}`);
377
+ }
378
+ /** Error and warn counts of the current and previous windows. Columns: period, error, warn. */
379
+ function logsTotalsSql(previousFrom, window, filters = {}) {
380
+ return (`SELECT CASE WHEN ${(0, sql_literals_1.ident)('timestamp')} >= ${(0, sql_literals_1.timestampLiteral)(window.from)} THEN 'current' ELSE 'previous' END AS period, ` +
381
+ `${band('error')} AS error, ${band('warn')} AS warn ` +
382
+ `${logsIn(previousFrom, window.to, filters)} ` +
383
+ 'GROUP BY period ORDER BY period LIMIT 2');
384
+ }
385
+ /**
386
+ * Most frequent error messages (first `ERROR_MESSAGE_CHARS` characters).
387
+ * Columns: message, occurrences, first_seen, last_seen, sample_trace_id, service.
388
+ */
389
+ function topErrorsSql(window, filters = {}, limit = exports.TOP_N + 1) {
390
+ return (`SELECT substr(body, 1, ${exports.ERROR_MESSAGE_CHARS}) AS message, count(*) AS occurrences, ` +
391
+ `min(${(0, sql_literals_1.ident)('timestamp')}) AS first_seen, max(${(0, sql_literals_1.ident)('timestamp')}) AS last_seen, ` +
392
+ `max(trace_id) AS sample_trace_id, max(${LOG_SERVICE}) AS service ` +
393
+ `${logsIn(window.from, window.to, filters)} AND ${exports.SEVERITY_BANDS.error} ` +
394
+ `GROUP BY message ORDER BY occurrences DESC, last_seen DESC LIMIT ${(0, sql_literals_1.positive)(limit)}`);
395
+ }
396
+ exports.EVENT_CURSOR_TS_PATTERN = /^\d{4}-\d{2}-\d{2}[T ]\d{2}:\d{2}:\d{2}(\.\d{1,9})?Z?$/;
397
+ exports.EVENT_CURSOR_SPAN_PATTERN = /^[0-9a-fA-F]{0,32}$/;
398
+ /**
399
+ * Log events, newest first, keyset-paginated on (timestamp, span_id).
400
+ * Columns: ts (full-precision text), severity_number, severity_text,
401
+ * service, body, trace_id, span_id.
402
+ */
403
+ function eventsSql(window, filters, opts) {
404
+ const severities = exports.EVENT_SEVERITIES.filter((s) => opts.severities.includes(s));
405
+ if (severities.length === 0)
406
+ throw new RangeError('eventsSql needs at least one severity');
407
+ const where = [`(${severities.map((s) => exports.SEVERITY_BANDS[s]).join(' OR ')})`];
408
+ const pattern = opts.q ? likeContainsPattern(opts.q) : '';
409
+ if (pattern)
410
+ where.push(`body ILIKE '%${pattern}%' ESCAPE '\\'`);
411
+ if (opts.cursor) {
412
+ const { ts, spanId } = opts.cursor;
413
+ if (!exports.EVENT_CURSOR_TS_PATTERN.test(ts) || !exports.EVENT_CURSOR_SPAN_PATTERN.test(spanId)) {
414
+ throw new RangeError('eventsSql got an unvalidated cursor');
415
+ }
416
+ const at = (0, sql_literals_1.literal)(ts.endsWith('Z') ? ts : `${ts.replace(' ', 'T')}Z`);
417
+ where.push(`(${(0, sql_literals_1.ident)('timestamp')} < ${at} OR (${(0, sql_literals_1.ident)('timestamp')} = ${at} AND span_id < ${(0, sql_literals_1.literal)(spanId)}))`);
418
+ }
419
+ return (`SELECT CAST(${(0, sql_literals_1.ident)('timestamp')} AS STRING) AS ts, severity_number, severity_text, ${LOG_SERVICE} AS service, ` +
420
+ 'body, trace_id, span_id ' +
421
+ `${logsIn(window.from, window.to, filters)} AND ${where.join(' AND ')} ` +
422
+ `ORDER BY ${(0, sql_literals_1.ident)('timestamp')} DESC, span_id DESC LIMIT ${(0, sql_literals_1.positive)(opts.limit ?? exports.EVENTS_PAGE_SIZE + 1)}`);
423
+ }
424
+ // ---- freshness ---------------------------------------------------------------
425
+ /**
426
+ * Latest trace and log timestamps since `since` (filters applied). Columns:
427
+ * traces_last, logs_last — a table that does not exist is left out
428
+ * (`NULL AS …`).
429
+ */
430
+ function lastDataSql(since, until, filters, tables) {
431
+ const traces = tables.traces
432
+ ? `(SELECT max(${(0, sql_literals_1.ident)('timestamp')}) FROM ${(0, sql_literals_1.ident)(exports.TRACES_TABLE)} WHERE ${(0, sql_literals_1.between)('timestamp', since, until)}${traceFilters(filters)})`
433
+ : 'NULL';
434
+ const logs = tables.logs ? `(SELECT max(${(0, sql_literals_1.ident)('timestamp')}) ${logsIn(since, until, filters)})` : 'NULL';
435
+ return `SELECT ${traces} AS traces_last, ${logs} AS logs_last LIMIT 1`;
436
+ }
437
+ // ---- filter values -----------------------------------------------------------
438
+ function distinctUnion(parts, limit) {
439
+ return `${parts.join(' UNION ')} ORDER BY v LIMIT ${(0, sql_literals_1.positive)(limit)}`;
440
+ }
441
+ /** Distinct service names in `[from, to)` across traces and logs. Column: v. */
442
+ function distinctServicesSql(from, to, tables, limit = exports.DISTINCT_VALUES_MAX + 1) {
443
+ const parts = [];
444
+ if (tables.traces) {
445
+ const col = (0, sql_literals_1.ident)(exports.TRACE_COLUMNS.service);
446
+ parts.push(`SELECT ${col} AS v FROM ${(0, sql_literals_1.ident)(exports.TRACES_TABLE)} WHERE ${(0, sql_literals_1.between)('timestamp', from, to)} AND ${col} IS NOT NULL AND ${col} <> ''`);
447
+ }
448
+ if (tables.logs) {
449
+ parts.push(`SELECT ${LOG_SERVICE} AS v ${logsIn(from, to, {})} AND ${LOG_SERVICE} IS NOT NULL AND ${LOG_SERVICE} <> ''`);
450
+ }
451
+ return parts.length ? distinctUnion(parts, limit) : null;
452
+ }
453
+ /** Distinct instance ids in `[from, to)` across traces (when the column exists) and logs. Column: v. */
454
+ function distinctInstancesSql(from, to, tables, limit = exports.DISTINCT_VALUES_MAX + 1) {
455
+ const parts = [];
456
+ if (tables.traces) {
457
+ const col = (0, sql_literals_1.ident)(exports.TRACE_COLUMNS.instance);
458
+ parts.push(`SELECT ${col} AS v FROM ${(0, sql_literals_1.ident)(exports.TRACES_TABLE)} WHERE ${(0, sql_literals_1.between)('timestamp', from, to)} AND ${col} IS NOT NULL AND ${col} <> ''`);
459
+ }
460
+ if (tables.logs) {
461
+ parts.push(`SELECT ${LOG_INSTANCE} AS v ${logsIn(from, to, {})} AND ${LOG_INSTANCE} IS NOT NULL AND ${LOG_INSTANCE} <> ''`);
462
+ }
463
+ return parts.length ? distinctUnion(parts, limit) : null;
464
+ }
465
+ // ---- runtime -----------------------------------------------------------------
466
+ function metricWhere(from, to, service) {
467
+ return `${(0, sql_literals_1.between)('greptime_timestamp', from, to)}${service ? ` AND service_name = ${(0, sql_literals_1.literal)(service)}` : ''}`;
468
+ }
469
+ /**
470
+ * Heap used (bytes) per bucket over `[from, to)`: summed over heap spaces per
471
+ * export, then averaged per bucket. Columns: t, v. The instance filter does
472
+ * not apply (the metric tables have no instance column).
473
+ */
474
+ function heapUsedSql(from, to, bucketSeconds, service) {
475
+ return (`SELECT date_bin(${(0, sql_literals_1.bucketInterval)(bucketSeconds)}, ts) AS t, avg(total) AS v FROM (` +
476
+ `SELECT greptime_timestamp AS ts, sum(greptime_value) AS total FROM ${(0, sql_literals_1.ident)(exports.HEAP_USED_TABLE)} ` +
477
+ `WHERE ${metricWhere(from, to, service)} GROUP BY greptime_timestamp` +
478
+ `) GROUP BY t ORDER BY t LIMIT ${(0, sql_literals_1.bucketRowLimit)(from, to, bucketSeconds)}`);
479
+ }
480
+ /** Event-loop delay p99 (ms), max per bucket over `[from, to)`. Columns: t, v. */
481
+ function eventLoopDelayP99Sql(from, to, bucketSeconds, service) {
482
+ return (`SELECT date_bin(${(0, sql_literals_1.bucketInterval)(bucketSeconds)}, greptime_timestamp) AS t, max(greptime_value) * 1000 AS v ` +
483
+ `FROM ${(0, sql_literals_1.ident)(exports.EVENT_LOOP_P99_TABLE)} WHERE ${metricWhere(from, to, service)} ` +
484
+ `GROUP BY t ORDER BY t LIMIT ${(0, sql_literals_1.bucketRowLimit)(from, to, bucketSeconds)}`);
485
+ }
486
+ //# sourceMappingURL=telemetry-dashboard.sql.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"telemetry-dashboard.sql.js","sourceRoot":"","sources":["../../../src/telemetry/dashboard/telemetry-dashboard.sql.ts"],"names":[],"mappings":"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"}