@oneuptime/common 10.0.63 → 10.0.66

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 (735) hide show
  1. package/Models/DatabaseModels/AIAgent.ts +36 -0
  2. package/Models/DatabaseModels/AIAgentOwnerTeam.ts +35 -0
  3. package/Models/DatabaseModels/AIAgentOwnerUser.ts +35 -0
  4. package/Models/DatabaseModels/AIAgentTask.ts +48 -0
  5. package/Models/DatabaseModels/AIAgentTaskLog.ts +9 -0
  6. package/Models/DatabaseModels/AIAgentTaskPullRequest.ts +19 -0
  7. package/Models/DatabaseModels/AIAgentTaskTelemetryException.ts +11 -0
  8. package/Models/DatabaseModels/Alert.ts +104 -0
  9. package/Models/DatabaseModels/AlertCustomField.ts +20 -0
  10. package/Models/DatabaseModels/AlertEpisode.ts +118 -0
  11. package/Models/DatabaseModels/AlertEpisodeFeed.ts +42 -0
  12. package/Models/DatabaseModels/AlertEpisodeInternalNote.ts +36 -0
  13. package/Models/DatabaseModels/AlertEpisodeMember.ts +51 -0
  14. package/Models/DatabaseModels/AlertEpisodeOwnerTeam.ts +36 -0
  15. package/Models/DatabaseModels/AlertEpisodeOwnerUser.ts +36 -0
  16. package/Models/DatabaseModels/AlertEpisodeStateTimeline.ts +44 -0
  17. package/Models/DatabaseModels/AlertFeed.ts +42 -0
  18. package/Models/DatabaseModels/AlertGroupingRule.ts +82 -0
  19. package/Models/DatabaseModels/AlertInternalNote.ts +36 -0
  20. package/Models/DatabaseModels/AlertNoteTemplate.ts +29 -0
  21. package/Models/DatabaseModels/AlertOwnerTeam.ts +36 -0
  22. package/Models/DatabaseModels/AlertOwnerUser.ts +36 -0
  23. package/Models/DatabaseModels/AlertSeverity.ts +39 -0
  24. package/Models/DatabaseModels/AlertState.ts +49 -0
  25. package/Models/DatabaseModels/AlertStateTimeline.ts +44 -0
  26. package/Models/DatabaseModels/BillingPaymentMethod.ts +24 -0
  27. package/Models/DatabaseModels/CallLog.ts +31 -0
  28. package/Models/DatabaseModels/CodeRepository.ts +50 -0
  29. package/Models/DatabaseModels/Dashboard.ts +46 -0
  30. package/Models/DatabaseModels/DashboardDomain.ts +57 -0
  31. package/Models/DatabaseModels/DataMigration.ts +1 -0
  32. package/Models/DatabaseModels/DockerHost.ts +53 -0
  33. package/Models/DatabaseModels/DockerHostOwnerTeam.ts +464 -0
  34. package/Models/DatabaseModels/DockerHostOwnerUser.ts +463 -0
  35. package/Models/DatabaseModels/Domain.ts +23 -0
  36. package/Models/DatabaseModels/EmailLog.ts +32 -0
  37. package/Models/DatabaseModels/Incident.ts +152 -0
  38. package/Models/DatabaseModels/IncidentCustomField.ts +20 -0
  39. package/Models/DatabaseModels/IncidentEpisode.ts +135 -0
  40. package/Models/DatabaseModels/IncidentEpisodeFeed.ts +42 -0
  41. package/Models/DatabaseModels/IncidentEpisodeInternalNote.ts +36 -0
  42. package/Models/DatabaseModels/IncidentEpisodeMember.ts +51 -0
  43. package/Models/DatabaseModels/IncidentEpisodeOwnerTeam.ts +36 -0
  44. package/Models/DatabaseModels/IncidentEpisodeOwnerUser.ts +36 -0
  45. package/Models/DatabaseModels/IncidentEpisodePublicNote.ts +51 -0
  46. package/Models/DatabaseModels/IncidentEpisodeRoleMember.ts +45 -0
  47. package/Models/DatabaseModels/IncidentEpisodeStateTimeline.ts +51 -0
  48. package/Models/DatabaseModels/IncidentFeed.ts +42 -0
  49. package/Models/DatabaseModels/IncidentGroupingRule.ts +88 -0
  50. package/Models/DatabaseModels/IncidentInternalNote.ts +36 -0
  51. package/Models/DatabaseModels/IncidentMember.ts +45 -0
  52. package/Models/DatabaseModels/IncidentNoteTemplate.ts +29 -0
  53. package/Models/DatabaseModels/IncidentOwnerTeam.ts +35 -0
  54. package/Models/DatabaseModels/IncidentOwnerUser.ts +36 -0
  55. package/Models/DatabaseModels/IncidentPostmortemTemplate.ts +29 -0
  56. package/Models/DatabaseModels/IncidentPublicNote.ts +51 -0
  57. package/Models/DatabaseModels/IncidentRole.ts +47 -0
  58. package/Models/DatabaseModels/IncidentSeverity.ts +39 -0
  59. package/Models/DatabaseModels/IncidentSla.ts +36 -0
  60. package/Models/DatabaseModels/IncidentSlaRule.ts +44 -0
  61. package/Models/DatabaseModels/IncidentState.ts +51 -0
  62. package/Models/DatabaseModels/IncidentStateTimeline.ts +55 -0
  63. package/Models/DatabaseModels/IncidentTemplate.ts +73 -0
  64. package/Models/DatabaseModels/IncidentTemplateOwnerTeam.ts +35 -0
  65. package/Models/DatabaseModels/IncidentTemplateOwnerUser.ts +59 -0
  66. package/Models/DatabaseModels/IncomingCallLog.ts +20 -0
  67. package/Models/DatabaseModels/IncomingCallLogItem.ts +17 -0
  68. package/Models/DatabaseModels/IncomingCallPolicy.ts +74 -0
  69. package/Models/DatabaseModels/IncomingCallPolicyEscalationRule.ts +55 -0
  70. package/Models/DatabaseModels/Index.ts +24 -0
  71. package/Models/DatabaseModels/KubernetesCluster.ts +53 -0
  72. package/Models/DatabaseModels/KubernetesClusterOwnerTeam.ts +464 -0
  73. package/Models/DatabaseModels/KubernetesClusterOwnerUser.ts +463 -0
  74. package/Models/DatabaseModels/KubernetesResource.ts +548 -0
  75. package/Models/DatabaseModels/Label.ts +22 -0
  76. package/Models/DatabaseModels/LlmLog.ts +28 -0
  77. package/Models/DatabaseModels/LlmProvider.ts +23 -0
  78. package/Models/DatabaseModels/LogDropFilter.ts +28 -0
  79. package/Models/DatabaseModels/LogPipeline.ts +24 -0
  80. package/Models/DatabaseModels/LogPipelineProcessor.ts +24 -0
  81. package/Models/DatabaseModels/LogSavedView.ts +14 -0
  82. package/Models/DatabaseModels/LogScrubRule.ts +30 -0
  83. package/Models/DatabaseModels/MetricPipelineRule.ts +804 -0
  84. package/Models/DatabaseModels/MetricRecordingRule.ts +470 -0
  85. package/Models/DatabaseModels/MetricType.ts +26 -0
  86. package/Models/DatabaseModels/Monitor.ts +107 -0
  87. package/Models/DatabaseModels/MonitorCustomField.ts +20 -0
  88. package/Models/DatabaseModels/MonitorFeed.ts +42 -0
  89. package/Models/DatabaseModels/MonitorGroup.ts +31 -0
  90. package/Models/DatabaseModels/MonitorGroupOwnerTeam.ts +35 -0
  91. package/Models/DatabaseModels/MonitorGroupOwnerUser.ts +35 -0
  92. package/Models/DatabaseModels/MonitorGroupResource.ts +31 -0
  93. package/Models/DatabaseModels/MonitorOwnerTeam.ts +36 -0
  94. package/Models/DatabaseModels/MonitorOwnerUser.ts +36 -0
  95. package/Models/DatabaseModels/MonitorProbe.ts +33 -0
  96. package/Models/DatabaseModels/MonitorStatus.ts +47 -0
  97. package/Models/DatabaseModels/MonitorStatusTimeline.ts +44 -0
  98. package/Models/DatabaseModels/MonitorTest.ts +50 -0
  99. package/Models/DatabaseModels/OnCallDutyPolicy.ts +44 -0
  100. package/Models/DatabaseModels/OnCallDutyPolicyCustomField.ts +20 -0
  101. package/Models/DatabaseModels/OnCallDutyPolicyEscalationRule.ts +39 -0
  102. package/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleSchedule.ts +35 -0
  103. package/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleTeam.ts +35 -0
  104. package/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleUser.ts +35 -0
  105. package/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.ts +87 -0
  106. package/Models/DatabaseModels/OnCallDutyPolicyExecutionLogTimeline.ts +62 -0
  107. package/Models/DatabaseModels/OnCallDutyPolicyFeed.ts +42 -0
  108. package/Models/DatabaseModels/OnCallDutyPolicyOwnerTeam.ts +35 -0
  109. package/Models/DatabaseModels/OnCallDutyPolicyOwnerUser.ts +35 -0
  110. package/Models/DatabaseModels/OnCallDutyPolicySchedule.ts +50 -0
  111. package/Models/DatabaseModels/OnCallDutyPolicyScheduleLayer.ts +51 -0
  112. package/Models/DatabaseModels/OnCallDutyPolicyScheduleLayerUser.ts +43 -0
  113. package/Models/DatabaseModels/OnCallDutyPolicyTimeLog.ts +44 -0
  114. package/Models/DatabaseModels/OnCallDutyPolicyUserOverride.ts +41 -0
  115. package/Models/DatabaseModels/Probe.ts +38 -0
  116. package/Models/DatabaseModels/ProbeOwnerTeam.ts +35 -0
  117. package/Models/DatabaseModels/ProbeOwnerUser.ts +35 -0
  118. package/Models/DatabaseModels/Project.ts +97 -0
  119. package/Models/DatabaseModels/ProjectCallSMSConfig.ts +28 -0
  120. package/Models/DatabaseModels/ProjectSCIM.ts +26 -0
  121. package/Models/DatabaseModels/ProjectSCIMLog.ts +14 -0
  122. package/Models/DatabaseModels/ProjectSmtpConfig.ts +42 -0
  123. package/Models/DatabaseModels/ProjectSso.ts +26 -0
  124. package/Models/DatabaseModels/ProjectUserProfile.ts +10 -0
  125. package/Models/DatabaseModels/PromoCode.ts +10 -0
  126. package/Models/DatabaseModels/PushNotificationLog.ts +31 -0
  127. package/Models/DatabaseModels/ScheduledMaintenance.ts +103 -0
  128. package/Models/DatabaseModels/ScheduledMaintenanceCustomField.ts +20 -0
  129. package/Models/DatabaseModels/ScheduledMaintenanceFeed.ts +42 -0
  130. package/Models/DatabaseModels/ScheduledMaintenanceInternalNote.ts +36 -0
  131. package/Models/DatabaseModels/ScheduledMaintenanceNoteTemplate.ts +29 -0
  132. package/Models/DatabaseModels/ScheduledMaintenanceOwnerTeam.ts +35 -0
  133. package/Models/DatabaseModels/ScheduledMaintenanceOwnerUser.ts +35 -0
  134. package/Models/DatabaseModels/ScheduledMaintenancePublicNote.ts +51 -0
  135. package/Models/DatabaseModels/ScheduledMaintenanceState.ts +55 -0
  136. package/Models/DatabaseModels/ScheduledMaintenanceStateTimeline.ts +50 -0
  137. package/Models/DatabaseModels/ScheduledMaintenanceTemplate.ts +98 -0
  138. package/Models/DatabaseModels/ScheduledMaintenanceTemplateOwnerTeam.ts +33 -0
  139. package/Models/DatabaseModels/ScheduledMaintenanceTemplateOwnerUser.ts +33 -0
  140. package/Models/DatabaseModels/Service.ts +154 -0
  141. package/Models/DatabaseModels/ServiceCodeRepository.ts +49 -0
  142. package/Models/DatabaseModels/ServiceDependency.ts +55 -0
  143. package/Models/DatabaseModels/ServiceMonitor.ts +55 -0
  144. package/Models/DatabaseModels/ServiceOwnerTeam.ts +31 -0
  145. package/Models/DatabaseModels/ServiceOwnerUser.ts +31 -0
  146. package/Models/DatabaseModels/SmsLog.ts +31 -0
  147. package/Models/DatabaseModels/StatusPage.ts +270 -0
  148. package/Models/DatabaseModels/StatusPageAnnouncement.ts +61 -0
  149. package/Models/DatabaseModels/StatusPageAnnouncementTemplate.ts +46 -0
  150. package/Models/DatabaseModels/StatusPageCustomField.ts +20 -0
  151. package/Models/DatabaseModels/StatusPageDomain.ts +57 -0
  152. package/Models/DatabaseModels/StatusPageFooterLink.ts +37 -0
  153. package/Models/DatabaseModels/StatusPageGroup.ts +53 -0
  154. package/Models/DatabaseModels/StatusPageHeaderLink.ts +37 -0
  155. package/Models/DatabaseModels/StatusPageHistoryChartBarColorRule.ts +35 -0
  156. package/Models/DatabaseModels/StatusPageOwnerTeam.ts +33 -0
  157. package/Models/DatabaseModels/StatusPageOwnerUser.ts +34 -0
  158. package/Models/DatabaseModels/StatusPagePrivateUser.ts +36 -0
  159. package/Models/DatabaseModels/StatusPageResource.ts +79 -0
  160. package/Models/DatabaseModels/StatusPageSCIM.ts +13 -0
  161. package/Models/DatabaseModels/StatusPageSCIMLog.ts +15 -0
  162. package/Models/DatabaseModels/StatusPageSso.ts +6 -0
  163. package/Models/DatabaseModels/StatusPageSubscriber.ts +79 -0
  164. package/Models/DatabaseModels/StatusPageSubscriberNotificationTemplate.ts +42 -0
  165. package/Models/DatabaseModels/StatusPageSubscriberNotificationTemplateStatusPage.ts +32 -0
  166. package/Models/DatabaseModels/TableView.ts +26 -0
  167. package/Models/DatabaseModels/Team.ts +25 -0
  168. package/Models/DatabaseModels/TeamComplianceSetting.ts +10 -0
  169. package/Models/DatabaseModels/TeamMember.ts +16 -0
  170. package/Models/DatabaseModels/TeamMemberCustomField.ts +20 -0
  171. package/Models/DatabaseModels/TeamPermission.ts +22 -0
  172. package/Models/DatabaseModels/TelemetryException.ts +62 -0
  173. package/Models/DatabaseModels/TraceDropFilter.ts +508 -0
  174. package/Models/DatabaseModels/TracePipeline.ts +436 -0
  175. package/Models/DatabaseModels/TracePipelineProcessor.ts +454 -0
  176. package/Models/DatabaseModels/TraceRecordingRule.ts +470 -0
  177. package/Models/DatabaseModels/TraceScrubRule.ts +546 -0
  178. package/Models/DatabaseModels/WhatsAppLog.ts +32 -0
  179. package/Models/DatabaseModels/Workflow.ts +39 -0
  180. package/Models/DatabaseModels/WorkflowLog.ts +18 -0
  181. package/Models/DatabaseModels/WorkflowVariable.ts +24 -0
  182. package/Models/DatabaseModels/WorkspaceNotificationLog.ts +37 -0
  183. package/Models/DatabaseModels/WorkspaceNotificationRule.ts +47 -0
  184. package/Models/DatabaseModels/WorkspaceNotificationSummary.ts +87 -0
  185. package/Models/DatabaseModels/WorkspaceProjectAuthToken.ts +10 -0
  186. package/Server/API/KubernetesResourceAPI.ts +129 -0
  187. package/Server/Infrastructure/Postgres/SchemaMigrations/1776504277320-MigrationName.ts +399 -0
  188. package/Server/Infrastructure/Postgres/SchemaMigrations/1776505976155-AddTracePipelineTables.ts +205 -0
  189. package/Server/Infrastructure/Postgres/SchemaMigrations/1776509413763-MigrationName.ts +335 -0
  190. package/Server/Infrastructure/Postgres/SchemaMigrations/1776541018853-MigrationName.ts +29 -0
  191. package/Server/Infrastructure/Postgres/SchemaMigrations/1776544084793-MigrationName.ts +53 -0
  192. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +10 -1
  193. package/Server/Services/DockerHostOwnerTeamService.ts +10 -0
  194. package/Server/Services/DockerHostOwnerUserService.ts +10 -0
  195. package/Server/Services/KubernetesClusterOwnerTeamService.ts +10 -0
  196. package/Server/Services/KubernetesClusterOwnerUserService.ts +10 -0
  197. package/Server/Services/KubernetesResourceService.ts +351 -0
  198. package/Server/Services/MetricPipelineRuleService.ts +10 -0
  199. package/Server/Services/MetricRecordingRuleService.ts +10 -0
  200. package/Server/Services/TraceDropFilterService.ts +10 -0
  201. package/Server/Services/TracePipelineProcessorService.ts +10 -0
  202. package/Server/Services/TracePipelineService.ts +10 -0
  203. package/Server/Services/TraceRecordingRuleService.ts +10 -0
  204. package/Server/Services/TraceScrubRuleService.ts +10 -0
  205. package/Server/Utils/Monitor/Criteria/CompareCriteria.ts +71 -9
  206. package/Server/Utils/Monitor/Criteria/MetricMonitorCriteria.ts +483 -75
  207. package/Server/Utils/Monitor/MonitorCriteriaEvaluator.ts +379 -6
  208. package/Server/Utils/Monitor/MonitorResource.ts +9 -0
  209. package/Tests/Server/Utils/Monitor/Criteria/MetricMonitorCriteria.test.ts +502 -0
  210. package/Tests/UI/Components/ProgressBar.test.tsx +1 -6
  211. package/Tests/Utils/MetricUnitUtil.test.ts +216 -0
  212. package/Tests/Utils/Metrics/MetricFormulaEvaluator.test.ts +269 -0
  213. package/Tests/Utils/Metrics/MetricResultUnitConverter.test.ts +231 -0
  214. package/Tests/Utils/RecordingRuleExpression.test.ts +177 -0
  215. package/Types/Kubernetes/KubernetesInventoryExtractor.ts +327 -0
  216. package/Types/Kubernetes/KubernetesObjectParser.ts +1949 -0
  217. package/Types/Metrics/MetricDownsamplingRetentionDays.ts +49 -0
  218. package/Types/Metrics/MetricFormulaConfigData.ts +4 -0
  219. package/Types/Metrics/MetricPipelineRuleFilterCondition.ts +136 -0
  220. package/Types/Metrics/MetricPipelineRuleType.ts +27 -0
  221. package/Types/Metrics/RecordingRuleDefinition.ts +180 -0
  222. package/Types/Monitor/CriteriaFilter.ts +43 -0
  223. package/Types/Monitor/MetricMonitor/MetricCriteriaContext.ts +70 -0
  224. package/Types/Permission.ts +1321 -22
  225. package/Types/Trace/TraceAggregationType.ts +17 -0
  226. package/Types/Trace/TraceDropFilterAction.ts +6 -0
  227. package/Types/Trace/TracePipelineProcessorType.ts +56 -0
  228. package/Types/Trace/TraceRecordingRuleDefinition.ts +218 -0
  229. package/Types/Trace/TraceScrubAction.ts +7 -0
  230. package/Types/Trace/TraceScrubField.ts +8 -0
  231. package/Types/Trace/TraceScrubPatternType.ts +10 -0
  232. package/UI/Components/BulkUpdate/BulkLabelActions.tsx +288 -0
  233. package/UI/Components/BulkUpdate/BulkUpdateForm.tsx +14 -6
  234. package/UI/Components/CSVFileUpload/CSVFileUpload.tsx +352 -0
  235. package/UI/Components/CardSelect/CardSelect.tsx +9 -1
  236. package/UI/Components/Charts/ChartGroup/ChartGroup.tsx +6 -10
  237. package/UI/Components/Forms/Fields/FormField.tsx +1 -0
  238. package/UI/Components/Forms/Types/Field.ts +1 -0
  239. package/UI/Components/Markdown.tsx/MarkdownViewer.tsx +57 -0
  240. package/UI/Components/Page/Page.tsx +6 -0
  241. package/UI/Components/ProgressBar/ProgressBar.tsx +22 -22
  242. package/Utils/MetricUnitUtil.ts +289 -0
  243. package/Utils/Metrics/MetricFormulaEvaluator.ts +610 -0
  244. package/Utils/Metrics/MetricResultUnitConverter.ts +91 -0
  245. package/Utils/Metrics/RecordingRuleExpression.ts +359 -0
  246. package/Utils/ValueFormatter.ts +137 -13
  247. package/build/dist/Models/DatabaseModels/AIAgent.js +36 -0
  248. package/build/dist/Models/DatabaseModels/AIAgent.js.map +1 -1
  249. package/build/dist/Models/DatabaseModels/AIAgentOwnerTeam.js +35 -0
  250. package/build/dist/Models/DatabaseModels/AIAgentOwnerTeam.js.map +1 -1
  251. package/build/dist/Models/DatabaseModels/AIAgentOwnerUser.js +35 -0
  252. package/build/dist/Models/DatabaseModels/AIAgentOwnerUser.js.map +1 -1
  253. package/build/dist/Models/DatabaseModels/AIAgentTask.js +48 -0
  254. package/build/dist/Models/DatabaseModels/AIAgentTask.js.map +1 -1
  255. package/build/dist/Models/DatabaseModels/AIAgentTaskLog.js +9 -0
  256. package/build/dist/Models/DatabaseModels/AIAgentTaskLog.js.map +1 -1
  257. package/build/dist/Models/DatabaseModels/AIAgentTaskPullRequest.js +19 -0
  258. package/build/dist/Models/DatabaseModels/AIAgentTaskPullRequest.js.map +1 -1
  259. package/build/dist/Models/DatabaseModels/AIAgentTaskTelemetryException.js +11 -0
  260. package/build/dist/Models/DatabaseModels/AIAgentTaskTelemetryException.js.map +1 -1
  261. package/build/dist/Models/DatabaseModels/Alert.js +104 -0
  262. package/build/dist/Models/DatabaseModels/Alert.js.map +1 -1
  263. package/build/dist/Models/DatabaseModels/AlertCustomField.js +20 -0
  264. package/build/dist/Models/DatabaseModels/AlertCustomField.js.map +1 -1
  265. package/build/dist/Models/DatabaseModels/AlertEpisode.js +118 -0
  266. package/build/dist/Models/DatabaseModels/AlertEpisode.js.map +1 -1
  267. package/build/dist/Models/DatabaseModels/AlertEpisodeFeed.js +42 -0
  268. package/build/dist/Models/DatabaseModels/AlertEpisodeFeed.js.map +1 -1
  269. package/build/dist/Models/DatabaseModels/AlertEpisodeInternalNote.js +36 -0
  270. package/build/dist/Models/DatabaseModels/AlertEpisodeInternalNote.js.map +1 -1
  271. package/build/dist/Models/DatabaseModels/AlertEpisodeMember.js +51 -0
  272. package/build/dist/Models/DatabaseModels/AlertEpisodeMember.js.map +1 -1
  273. package/build/dist/Models/DatabaseModels/AlertEpisodeOwnerTeam.js +36 -0
  274. package/build/dist/Models/DatabaseModels/AlertEpisodeOwnerTeam.js.map +1 -1
  275. package/build/dist/Models/DatabaseModels/AlertEpisodeOwnerUser.js +36 -0
  276. package/build/dist/Models/DatabaseModels/AlertEpisodeOwnerUser.js.map +1 -1
  277. package/build/dist/Models/DatabaseModels/AlertEpisodeStateTimeline.js +44 -0
  278. package/build/dist/Models/DatabaseModels/AlertEpisodeStateTimeline.js.map +1 -1
  279. package/build/dist/Models/DatabaseModels/AlertFeed.js +42 -0
  280. package/build/dist/Models/DatabaseModels/AlertFeed.js.map +1 -1
  281. package/build/dist/Models/DatabaseModels/AlertGroupingRule.js +82 -0
  282. package/build/dist/Models/DatabaseModels/AlertGroupingRule.js.map +1 -1
  283. package/build/dist/Models/DatabaseModels/AlertInternalNote.js +36 -0
  284. package/build/dist/Models/DatabaseModels/AlertInternalNote.js.map +1 -1
  285. package/build/dist/Models/DatabaseModels/AlertNoteTemplate.js +29 -0
  286. package/build/dist/Models/DatabaseModels/AlertNoteTemplate.js.map +1 -1
  287. package/build/dist/Models/DatabaseModels/AlertOwnerTeam.js +36 -0
  288. package/build/dist/Models/DatabaseModels/AlertOwnerTeam.js.map +1 -1
  289. package/build/dist/Models/DatabaseModels/AlertOwnerUser.js +36 -0
  290. package/build/dist/Models/DatabaseModels/AlertOwnerUser.js.map +1 -1
  291. package/build/dist/Models/DatabaseModels/AlertSeverity.js +39 -0
  292. package/build/dist/Models/DatabaseModels/AlertSeverity.js.map +1 -1
  293. package/build/dist/Models/DatabaseModels/AlertState.js +49 -0
  294. package/build/dist/Models/DatabaseModels/AlertState.js.map +1 -1
  295. package/build/dist/Models/DatabaseModels/AlertStateTimeline.js +44 -0
  296. package/build/dist/Models/DatabaseModels/AlertStateTimeline.js.map +1 -1
  297. package/build/dist/Models/DatabaseModels/BillingPaymentMethod.js +24 -0
  298. package/build/dist/Models/DatabaseModels/BillingPaymentMethod.js.map +1 -1
  299. package/build/dist/Models/DatabaseModels/CallLog.js +31 -0
  300. package/build/dist/Models/DatabaseModels/CallLog.js.map +1 -1
  301. package/build/dist/Models/DatabaseModels/CodeRepository.js +50 -0
  302. package/build/dist/Models/DatabaseModels/CodeRepository.js.map +1 -1
  303. package/build/dist/Models/DatabaseModels/Dashboard.js +46 -0
  304. package/build/dist/Models/DatabaseModels/Dashboard.js.map +1 -1
  305. package/build/dist/Models/DatabaseModels/DashboardDomain.js +57 -0
  306. package/build/dist/Models/DatabaseModels/DashboardDomain.js.map +1 -1
  307. package/build/dist/Models/DatabaseModels/DataMigration.js +1 -0
  308. package/build/dist/Models/DatabaseModels/DataMigration.js.map +1 -1
  309. package/build/dist/Models/DatabaseModels/DockerHost.js +53 -0
  310. package/build/dist/Models/DatabaseModels/DockerHost.js.map +1 -1
  311. package/build/dist/Models/DatabaseModels/DockerHostOwnerTeam.js +480 -0
  312. package/build/dist/Models/DatabaseModels/DockerHostOwnerTeam.js.map +1 -0
  313. package/build/dist/Models/DatabaseModels/DockerHostOwnerUser.js +479 -0
  314. package/build/dist/Models/DatabaseModels/DockerHostOwnerUser.js.map +1 -0
  315. package/build/dist/Models/DatabaseModels/Domain.js +23 -0
  316. package/build/dist/Models/DatabaseModels/Domain.js.map +1 -1
  317. package/build/dist/Models/DatabaseModels/EmailLog.js +32 -0
  318. package/build/dist/Models/DatabaseModels/EmailLog.js.map +1 -1
  319. package/build/dist/Models/DatabaseModels/Incident.js +152 -0
  320. package/build/dist/Models/DatabaseModels/Incident.js.map +1 -1
  321. package/build/dist/Models/DatabaseModels/IncidentCustomField.js +20 -0
  322. package/build/dist/Models/DatabaseModels/IncidentCustomField.js.map +1 -1
  323. package/build/dist/Models/DatabaseModels/IncidentEpisode.js +135 -0
  324. package/build/dist/Models/DatabaseModels/IncidentEpisode.js.map +1 -1
  325. package/build/dist/Models/DatabaseModels/IncidentEpisodeFeed.js +42 -0
  326. package/build/dist/Models/DatabaseModels/IncidentEpisodeFeed.js.map +1 -1
  327. package/build/dist/Models/DatabaseModels/IncidentEpisodeInternalNote.js +36 -0
  328. package/build/dist/Models/DatabaseModels/IncidentEpisodeInternalNote.js.map +1 -1
  329. package/build/dist/Models/DatabaseModels/IncidentEpisodeMember.js +51 -0
  330. package/build/dist/Models/DatabaseModels/IncidentEpisodeMember.js.map +1 -1
  331. package/build/dist/Models/DatabaseModels/IncidentEpisodeOwnerTeam.js +36 -0
  332. package/build/dist/Models/DatabaseModels/IncidentEpisodeOwnerTeam.js.map +1 -1
  333. package/build/dist/Models/DatabaseModels/IncidentEpisodeOwnerUser.js +36 -0
  334. package/build/dist/Models/DatabaseModels/IncidentEpisodeOwnerUser.js.map +1 -1
  335. package/build/dist/Models/DatabaseModels/IncidentEpisodePublicNote.js +51 -0
  336. package/build/dist/Models/DatabaseModels/IncidentEpisodePublicNote.js.map +1 -1
  337. package/build/dist/Models/DatabaseModels/IncidentEpisodeRoleMember.js +45 -0
  338. package/build/dist/Models/DatabaseModels/IncidentEpisodeRoleMember.js.map +1 -1
  339. package/build/dist/Models/DatabaseModels/IncidentEpisodeStateTimeline.js +51 -0
  340. package/build/dist/Models/DatabaseModels/IncidentEpisodeStateTimeline.js.map +1 -1
  341. package/build/dist/Models/DatabaseModels/IncidentFeed.js +42 -0
  342. package/build/dist/Models/DatabaseModels/IncidentFeed.js.map +1 -1
  343. package/build/dist/Models/DatabaseModels/IncidentGroupingRule.js +88 -0
  344. package/build/dist/Models/DatabaseModels/IncidentGroupingRule.js.map +1 -1
  345. package/build/dist/Models/DatabaseModels/IncidentInternalNote.js +36 -0
  346. package/build/dist/Models/DatabaseModels/IncidentInternalNote.js.map +1 -1
  347. package/build/dist/Models/DatabaseModels/IncidentMember.js +45 -0
  348. package/build/dist/Models/DatabaseModels/IncidentMember.js.map +1 -1
  349. package/build/dist/Models/DatabaseModels/IncidentNoteTemplate.js +29 -0
  350. package/build/dist/Models/DatabaseModels/IncidentNoteTemplate.js.map +1 -1
  351. package/build/dist/Models/DatabaseModels/IncidentOwnerTeam.js +35 -0
  352. package/build/dist/Models/DatabaseModels/IncidentOwnerTeam.js.map +1 -1
  353. package/build/dist/Models/DatabaseModels/IncidentOwnerUser.js +36 -0
  354. package/build/dist/Models/DatabaseModels/IncidentOwnerUser.js.map +1 -1
  355. package/build/dist/Models/DatabaseModels/IncidentPostmortemTemplate.js +29 -0
  356. package/build/dist/Models/DatabaseModels/IncidentPostmortemTemplate.js.map +1 -1
  357. package/build/dist/Models/DatabaseModels/IncidentPublicNote.js +51 -0
  358. package/build/dist/Models/DatabaseModels/IncidentPublicNote.js.map +1 -1
  359. package/build/dist/Models/DatabaseModels/IncidentRole.js +47 -0
  360. package/build/dist/Models/DatabaseModels/IncidentRole.js.map +1 -1
  361. package/build/dist/Models/DatabaseModels/IncidentSeverity.js +39 -0
  362. package/build/dist/Models/DatabaseModels/IncidentSeverity.js.map +1 -1
  363. package/build/dist/Models/DatabaseModels/IncidentSla.js +36 -0
  364. package/build/dist/Models/DatabaseModels/IncidentSla.js.map +1 -1
  365. package/build/dist/Models/DatabaseModels/IncidentSlaRule.js +44 -0
  366. package/build/dist/Models/DatabaseModels/IncidentSlaRule.js.map +1 -1
  367. package/build/dist/Models/DatabaseModels/IncidentState.js +51 -0
  368. package/build/dist/Models/DatabaseModels/IncidentState.js.map +1 -1
  369. package/build/dist/Models/DatabaseModels/IncidentStateTimeline.js +55 -0
  370. package/build/dist/Models/DatabaseModels/IncidentStateTimeline.js.map +1 -1
  371. package/build/dist/Models/DatabaseModels/IncidentTemplate.js +73 -0
  372. package/build/dist/Models/DatabaseModels/IncidentTemplate.js.map +1 -1
  373. package/build/dist/Models/DatabaseModels/IncidentTemplateOwnerTeam.js +35 -0
  374. package/build/dist/Models/DatabaseModels/IncidentTemplateOwnerTeam.js.map +1 -1
  375. package/build/dist/Models/DatabaseModels/IncidentTemplateOwnerUser.js +59 -0
  376. package/build/dist/Models/DatabaseModels/IncidentTemplateOwnerUser.js.map +1 -1
  377. package/build/dist/Models/DatabaseModels/IncomingCallLog.js +20 -0
  378. package/build/dist/Models/DatabaseModels/IncomingCallLog.js.map +1 -1
  379. package/build/dist/Models/DatabaseModels/IncomingCallLogItem.js +17 -0
  380. package/build/dist/Models/DatabaseModels/IncomingCallLogItem.js.map +1 -1
  381. package/build/dist/Models/DatabaseModels/IncomingCallPolicy.js +74 -0
  382. package/build/dist/Models/DatabaseModels/IncomingCallPolicy.js.map +1 -1
  383. package/build/dist/Models/DatabaseModels/IncomingCallPolicyEscalationRule.js +55 -0
  384. package/build/dist/Models/DatabaseModels/IncomingCallPolicyEscalationRule.js.map +1 -1
  385. package/build/dist/Models/DatabaseModels/Index.js +24 -0
  386. package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
  387. package/build/dist/Models/DatabaseModels/KubernetesCluster.js +53 -0
  388. package/build/dist/Models/DatabaseModels/KubernetesCluster.js.map +1 -1
  389. package/build/dist/Models/DatabaseModels/KubernetesClusterOwnerTeam.js +480 -0
  390. package/build/dist/Models/DatabaseModels/KubernetesClusterOwnerTeam.js.map +1 -0
  391. package/build/dist/Models/DatabaseModels/KubernetesClusterOwnerUser.js +479 -0
  392. package/build/dist/Models/DatabaseModels/KubernetesClusterOwnerUser.js.map +1 -0
  393. package/build/dist/Models/DatabaseModels/KubernetesResource.js +590 -0
  394. package/build/dist/Models/DatabaseModels/KubernetesResource.js.map +1 -0
  395. package/build/dist/Models/DatabaseModels/Label.js +22 -0
  396. package/build/dist/Models/DatabaseModels/Label.js.map +1 -1
  397. package/build/dist/Models/DatabaseModels/LlmLog.js +28 -0
  398. package/build/dist/Models/DatabaseModels/LlmLog.js.map +1 -1
  399. package/build/dist/Models/DatabaseModels/LlmProvider.js +23 -0
  400. package/build/dist/Models/DatabaseModels/LlmProvider.js.map +1 -1
  401. package/build/dist/Models/DatabaseModels/LogDropFilter.js +28 -0
  402. package/build/dist/Models/DatabaseModels/LogDropFilter.js.map +1 -1
  403. package/build/dist/Models/DatabaseModels/LogPipeline.js +24 -0
  404. package/build/dist/Models/DatabaseModels/LogPipeline.js.map +1 -1
  405. package/build/dist/Models/DatabaseModels/LogPipelineProcessor.js +24 -0
  406. package/build/dist/Models/DatabaseModels/LogPipelineProcessor.js.map +1 -1
  407. package/build/dist/Models/DatabaseModels/LogSavedView.js +14 -0
  408. package/build/dist/Models/DatabaseModels/LogSavedView.js.map +1 -1
  409. package/build/dist/Models/DatabaseModels/LogScrubRule.js +30 -0
  410. package/build/dist/Models/DatabaseModels/LogScrubRule.js.map +1 -1
  411. package/build/dist/Models/DatabaseModels/MetricPipelineRule.js +836 -0
  412. package/build/dist/Models/DatabaseModels/MetricPipelineRule.js.map +1 -0
  413. package/build/dist/Models/DatabaseModels/MetricRecordingRule.js +497 -0
  414. package/build/dist/Models/DatabaseModels/MetricRecordingRule.js.map +1 -0
  415. package/build/dist/Models/DatabaseModels/MetricType.js +26 -0
  416. package/build/dist/Models/DatabaseModels/MetricType.js.map +1 -1
  417. package/build/dist/Models/DatabaseModels/Monitor.js +107 -0
  418. package/build/dist/Models/DatabaseModels/Monitor.js.map +1 -1
  419. package/build/dist/Models/DatabaseModels/MonitorCustomField.js +20 -0
  420. package/build/dist/Models/DatabaseModels/MonitorCustomField.js.map +1 -1
  421. package/build/dist/Models/DatabaseModels/MonitorFeed.js +42 -0
  422. package/build/dist/Models/DatabaseModels/MonitorFeed.js.map +1 -1
  423. package/build/dist/Models/DatabaseModels/MonitorGroup.js +31 -0
  424. package/build/dist/Models/DatabaseModels/MonitorGroup.js.map +1 -1
  425. package/build/dist/Models/DatabaseModels/MonitorGroupOwnerTeam.js +35 -0
  426. package/build/dist/Models/DatabaseModels/MonitorGroupOwnerTeam.js.map +1 -1
  427. package/build/dist/Models/DatabaseModels/MonitorGroupOwnerUser.js +35 -0
  428. package/build/dist/Models/DatabaseModels/MonitorGroupOwnerUser.js.map +1 -1
  429. package/build/dist/Models/DatabaseModels/MonitorGroupResource.js +31 -0
  430. package/build/dist/Models/DatabaseModels/MonitorGroupResource.js.map +1 -1
  431. package/build/dist/Models/DatabaseModels/MonitorOwnerTeam.js +36 -0
  432. package/build/dist/Models/DatabaseModels/MonitorOwnerTeam.js.map +1 -1
  433. package/build/dist/Models/DatabaseModels/MonitorOwnerUser.js +36 -0
  434. package/build/dist/Models/DatabaseModels/MonitorOwnerUser.js.map +1 -1
  435. package/build/dist/Models/DatabaseModels/MonitorProbe.js +33 -0
  436. package/build/dist/Models/DatabaseModels/MonitorProbe.js.map +1 -1
  437. package/build/dist/Models/DatabaseModels/MonitorStatus.js +47 -0
  438. package/build/dist/Models/DatabaseModels/MonitorStatus.js.map +1 -1
  439. package/build/dist/Models/DatabaseModels/MonitorStatusTimeline.js +44 -0
  440. package/build/dist/Models/DatabaseModels/MonitorStatusTimeline.js.map +1 -1
  441. package/build/dist/Models/DatabaseModels/MonitorTest.js +50 -0
  442. package/build/dist/Models/DatabaseModels/MonitorTest.js.map +1 -1
  443. package/build/dist/Models/DatabaseModels/OnCallDutyPolicy.js +44 -0
  444. package/build/dist/Models/DatabaseModels/OnCallDutyPolicy.js.map +1 -1
  445. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyCustomField.js +20 -0
  446. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyCustomField.js.map +1 -1
  447. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRule.js +39 -0
  448. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRule.js.map +1 -1
  449. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleSchedule.js +35 -0
  450. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleSchedule.js.map +1 -1
  451. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleTeam.js +35 -0
  452. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleTeam.js.map +1 -1
  453. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleUser.js +35 -0
  454. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleUser.js.map +1 -1
  455. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.js +87 -0
  456. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.js.map +1 -1
  457. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLogTimeline.js +62 -0
  458. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLogTimeline.js.map +1 -1
  459. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyFeed.js +42 -0
  460. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyFeed.js.map +1 -1
  461. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyOwnerTeam.js +35 -0
  462. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyOwnerTeam.js.map +1 -1
  463. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyOwnerUser.js +35 -0
  464. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyOwnerUser.js.map +1 -1
  465. package/build/dist/Models/DatabaseModels/OnCallDutyPolicySchedule.js +50 -0
  466. package/build/dist/Models/DatabaseModels/OnCallDutyPolicySchedule.js.map +1 -1
  467. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyScheduleLayer.js +51 -0
  468. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyScheduleLayer.js.map +1 -1
  469. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyScheduleLayerUser.js +43 -0
  470. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyScheduleLayerUser.js.map +1 -1
  471. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyTimeLog.js +44 -0
  472. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyTimeLog.js.map +1 -1
  473. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyUserOverride.js +41 -0
  474. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyUserOverride.js.map +1 -1
  475. package/build/dist/Models/DatabaseModels/Probe.js +38 -0
  476. package/build/dist/Models/DatabaseModels/Probe.js.map +1 -1
  477. package/build/dist/Models/DatabaseModels/ProbeOwnerTeam.js +35 -0
  478. package/build/dist/Models/DatabaseModels/ProbeOwnerTeam.js.map +1 -1
  479. package/build/dist/Models/DatabaseModels/ProbeOwnerUser.js +35 -0
  480. package/build/dist/Models/DatabaseModels/ProbeOwnerUser.js.map +1 -1
  481. package/build/dist/Models/DatabaseModels/Project.js +97 -0
  482. package/build/dist/Models/DatabaseModels/Project.js.map +1 -1
  483. package/build/dist/Models/DatabaseModels/ProjectCallSMSConfig.js +28 -0
  484. package/build/dist/Models/DatabaseModels/ProjectCallSMSConfig.js.map +1 -1
  485. package/build/dist/Models/DatabaseModels/ProjectSCIM.js +26 -0
  486. package/build/dist/Models/DatabaseModels/ProjectSCIM.js.map +1 -1
  487. package/build/dist/Models/DatabaseModels/ProjectSCIMLog.js +14 -0
  488. package/build/dist/Models/DatabaseModels/ProjectSCIMLog.js.map +1 -1
  489. package/build/dist/Models/DatabaseModels/ProjectSmtpConfig.js +42 -0
  490. package/build/dist/Models/DatabaseModels/ProjectSmtpConfig.js.map +1 -1
  491. package/build/dist/Models/DatabaseModels/ProjectSso.js +26 -0
  492. package/build/dist/Models/DatabaseModels/ProjectSso.js.map +1 -1
  493. package/build/dist/Models/DatabaseModels/ProjectUserProfile.js +10 -0
  494. package/build/dist/Models/DatabaseModels/ProjectUserProfile.js.map +1 -1
  495. package/build/dist/Models/DatabaseModels/PromoCode.js +10 -0
  496. package/build/dist/Models/DatabaseModels/PromoCode.js.map +1 -1
  497. package/build/dist/Models/DatabaseModels/PushNotificationLog.js +31 -0
  498. package/build/dist/Models/DatabaseModels/PushNotificationLog.js.map +1 -1
  499. package/build/dist/Models/DatabaseModels/ScheduledMaintenance.js +103 -0
  500. package/build/dist/Models/DatabaseModels/ScheduledMaintenance.js.map +1 -1
  501. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceCustomField.js +20 -0
  502. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceCustomField.js.map +1 -1
  503. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceFeed.js +42 -0
  504. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceFeed.js.map +1 -1
  505. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceInternalNote.js +36 -0
  506. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceInternalNote.js.map +1 -1
  507. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceNoteTemplate.js +29 -0
  508. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceNoteTemplate.js.map +1 -1
  509. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceOwnerTeam.js +35 -0
  510. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceOwnerTeam.js.map +1 -1
  511. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceOwnerUser.js +35 -0
  512. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceOwnerUser.js.map +1 -1
  513. package/build/dist/Models/DatabaseModels/ScheduledMaintenancePublicNote.js +51 -0
  514. package/build/dist/Models/DatabaseModels/ScheduledMaintenancePublicNote.js.map +1 -1
  515. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceState.js +55 -0
  516. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceState.js.map +1 -1
  517. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceStateTimeline.js +50 -0
  518. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceStateTimeline.js.map +1 -1
  519. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceTemplate.js +98 -0
  520. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceTemplate.js.map +1 -1
  521. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceTemplateOwnerTeam.js +33 -0
  522. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceTemplateOwnerTeam.js.map +1 -1
  523. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceTemplateOwnerUser.js +33 -0
  524. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceTemplateOwnerUser.js.map +1 -1
  525. package/build/dist/Models/DatabaseModels/Service.js +154 -0
  526. package/build/dist/Models/DatabaseModels/Service.js.map +1 -1
  527. package/build/dist/Models/DatabaseModels/ServiceCodeRepository.js +49 -0
  528. package/build/dist/Models/DatabaseModels/ServiceCodeRepository.js.map +1 -1
  529. package/build/dist/Models/DatabaseModels/ServiceDependency.js +55 -0
  530. package/build/dist/Models/DatabaseModels/ServiceDependency.js.map +1 -1
  531. package/build/dist/Models/DatabaseModels/ServiceMonitor.js +55 -0
  532. package/build/dist/Models/DatabaseModels/ServiceMonitor.js.map +1 -1
  533. package/build/dist/Models/DatabaseModels/ServiceOwnerTeam.js +31 -0
  534. package/build/dist/Models/DatabaseModels/ServiceOwnerTeam.js.map +1 -1
  535. package/build/dist/Models/DatabaseModels/ServiceOwnerUser.js +31 -0
  536. package/build/dist/Models/DatabaseModels/ServiceOwnerUser.js.map +1 -1
  537. package/build/dist/Models/DatabaseModels/SmsLog.js +31 -0
  538. package/build/dist/Models/DatabaseModels/SmsLog.js.map +1 -1
  539. package/build/dist/Models/DatabaseModels/StatusPage.js +270 -0
  540. package/build/dist/Models/DatabaseModels/StatusPage.js.map +1 -1
  541. package/build/dist/Models/DatabaseModels/StatusPageAnnouncement.js +61 -0
  542. package/build/dist/Models/DatabaseModels/StatusPageAnnouncement.js.map +1 -1
  543. package/build/dist/Models/DatabaseModels/StatusPageAnnouncementTemplate.js +46 -0
  544. package/build/dist/Models/DatabaseModels/StatusPageAnnouncementTemplate.js.map +1 -1
  545. package/build/dist/Models/DatabaseModels/StatusPageCustomField.js +20 -0
  546. package/build/dist/Models/DatabaseModels/StatusPageCustomField.js.map +1 -1
  547. package/build/dist/Models/DatabaseModels/StatusPageDomain.js +57 -0
  548. package/build/dist/Models/DatabaseModels/StatusPageDomain.js.map +1 -1
  549. package/build/dist/Models/DatabaseModels/StatusPageFooterLink.js +37 -0
  550. package/build/dist/Models/DatabaseModels/StatusPageFooterLink.js.map +1 -1
  551. package/build/dist/Models/DatabaseModels/StatusPageGroup.js +53 -0
  552. package/build/dist/Models/DatabaseModels/StatusPageGroup.js.map +1 -1
  553. package/build/dist/Models/DatabaseModels/StatusPageHeaderLink.js +37 -0
  554. package/build/dist/Models/DatabaseModels/StatusPageHeaderLink.js.map +1 -1
  555. package/build/dist/Models/DatabaseModels/StatusPageHistoryChartBarColorRule.js +35 -0
  556. package/build/dist/Models/DatabaseModels/StatusPageHistoryChartBarColorRule.js.map +1 -1
  557. package/build/dist/Models/DatabaseModels/StatusPageOwnerTeam.js +33 -0
  558. package/build/dist/Models/DatabaseModels/StatusPageOwnerTeam.js.map +1 -1
  559. package/build/dist/Models/DatabaseModels/StatusPageOwnerUser.js +34 -0
  560. package/build/dist/Models/DatabaseModels/StatusPageOwnerUser.js.map +1 -1
  561. package/build/dist/Models/DatabaseModels/StatusPagePrivateUser.js +36 -0
  562. package/build/dist/Models/DatabaseModels/StatusPagePrivateUser.js.map +1 -1
  563. package/build/dist/Models/DatabaseModels/StatusPageResource.js +79 -0
  564. package/build/dist/Models/DatabaseModels/StatusPageResource.js.map +1 -1
  565. package/build/dist/Models/DatabaseModels/StatusPageSCIM.js +13 -0
  566. package/build/dist/Models/DatabaseModels/StatusPageSCIM.js.map +1 -1
  567. package/build/dist/Models/DatabaseModels/StatusPageSCIMLog.js +15 -0
  568. package/build/dist/Models/DatabaseModels/StatusPageSCIMLog.js.map +1 -1
  569. package/build/dist/Models/DatabaseModels/StatusPageSso.js +6 -0
  570. package/build/dist/Models/DatabaseModels/StatusPageSso.js.map +1 -1
  571. package/build/dist/Models/DatabaseModels/StatusPageSubscriber.js +79 -0
  572. package/build/dist/Models/DatabaseModels/StatusPageSubscriber.js.map +1 -1
  573. package/build/dist/Models/DatabaseModels/StatusPageSubscriberNotificationTemplate.js +42 -0
  574. package/build/dist/Models/DatabaseModels/StatusPageSubscriberNotificationTemplate.js.map +1 -1
  575. package/build/dist/Models/DatabaseModels/StatusPageSubscriberNotificationTemplateStatusPage.js +32 -0
  576. package/build/dist/Models/DatabaseModels/StatusPageSubscriberNotificationTemplateStatusPage.js.map +1 -1
  577. package/build/dist/Models/DatabaseModels/TableView.js +26 -0
  578. package/build/dist/Models/DatabaseModels/TableView.js.map +1 -1
  579. package/build/dist/Models/DatabaseModels/Team.js +25 -0
  580. package/build/dist/Models/DatabaseModels/Team.js.map +1 -1
  581. package/build/dist/Models/DatabaseModels/TeamComplianceSetting.js +10 -0
  582. package/build/dist/Models/DatabaseModels/TeamComplianceSetting.js.map +1 -1
  583. package/build/dist/Models/DatabaseModels/TeamMember.js +16 -0
  584. package/build/dist/Models/DatabaseModels/TeamMember.js.map +1 -1
  585. package/build/dist/Models/DatabaseModels/TeamMemberCustomField.js +20 -0
  586. package/build/dist/Models/DatabaseModels/TeamMemberCustomField.js.map +1 -1
  587. package/build/dist/Models/DatabaseModels/TeamPermission.js +22 -0
  588. package/build/dist/Models/DatabaseModels/TeamPermission.js.map +1 -1
  589. package/build/dist/Models/DatabaseModels/TelemetryException.js +62 -0
  590. package/build/dist/Models/DatabaseModels/TelemetryException.js.map +1 -1
  591. package/build/dist/Models/DatabaseModels/TraceDropFilter.js +536 -0
  592. package/build/dist/Models/DatabaseModels/TraceDropFilter.js.map +1 -0
  593. package/build/dist/Models/DatabaseModels/TracePipeline.js +462 -0
  594. package/build/dist/Models/DatabaseModels/TracePipeline.js.map +1 -0
  595. package/build/dist/Models/DatabaseModels/TracePipelineProcessor.js +476 -0
  596. package/build/dist/Models/DatabaseModels/TracePipelineProcessor.js.map +1 -0
  597. package/build/dist/Models/DatabaseModels/TraceRecordingRule.js +497 -0
  598. package/build/dist/Models/DatabaseModels/TraceRecordingRule.js.map +1 -0
  599. package/build/dist/Models/DatabaseModels/TraceScrubRule.js +575 -0
  600. package/build/dist/Models/DatabaseModels/TraceScrubRule.js.map +1 -0
  601. package/build/dist/Models/DatabaseModels/WhatsAppLog.js +32 -0
  602. package/build/dist/Models/DatabaseModels/WhatsAppLog.js.map +1 -1
  603. package/build/dist/Models/DatabaseModels/Workflow.js +39 -0
  604. package/build/dist/Models/DatabaseModels/Workflow.js.map +1 -1
  605. package/build/dist/Models/DatabaseModels/WorkflowLog.js +18 -0
  606. package/build/dist/Models/DatabaseModels/WorkflowLog.js.map +1 -1
  607. package/build/dist/Models/DatabaseModels/WorkflowVariable.js +24 -0
  608. package/build/dist/Models/DatabaseModels/WorkflowVariable.js.map +1 -1
  609. package/build/dist/Models/DatabaseModels/WorkspaceNotificationLog.js +37 -0
  610. package/build/dist/Models/DatabaseModels/WorkspaceNotificationLog.js.map +1 -1
  611. package/build/dist/Models/DatabaseModels/WorkspaceNotificationRule.js +47 -0
  612. package/build/dist/Models/DatabaseModels/WorkspaceNotificationRule.js.map +1 -1
  613. package/build/dist/Models/DatabaseModels/WorkspaceNotificationSummary.js +87 -0
  614. package/build/dist/Models/DatabaseModels/WorkspaceNotificationSummary.js.map +1 -1
  615. package/build/dist/Models/DatabaseModels/WorkspaceProjectAuthToken.js +10 -0
  616. package/build/dist/Models/DatabaseModels/WorkspaceProjectAuthToken.js.map +1 -1
  617. package/build/dist/Server/API/KubernetesResourceAPI.js +98 -0
  618. package/build/dist/Server/API/KubernetesResourceAPI.js.map +1 -0
  619. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1776504277320-MigrationName.js +144 -0
  620. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1776504277320-MigrationName.js.map +1 -0
  621. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1776505976155-AddTracePipelineTables.js +82 -0
  622. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1776505976155-AddTracePipelineTables.js.map +1 -0
  623. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1776509413763-MigrationName.js +118 -0
  624. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1776509413763-MigrationName.js.map +1 -0
  625. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1776541018853-MigrationName.js +16 -0
  626. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1776541018853-MigrationName.js.map +1 -0
  627. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1776544084793-MigrationName.js +24 -0
  628. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1776544084793-MigrationName.js.map +1 -0
  629. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +10 -0
  630. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  631. package/build/dist/Server/Services/DockerHostOwnerTeamService.js +9 -0
  632. package/build/dist/Server/Services/DockerHostOwnerTeamService.js.map +1 -0
  633. package/build/dist/Server/Services/DockerHostOwnerUserService.js +9 -0
  634. package/build/dist/Server/Services/DockerHostOwnerUserService.js.map +1 -0
  635. package/build/dist/Server/Services/KubernetesClusterOwnerTeamService.js +9 -0
  636. package/build/dist/Server/Services/KubernetesClusterOwnerTeamService.js.map +1 -0
  637. package/build/dist/Server/Services/KubernetesClusterOwnerUserService.js +9 -0
  638. package/build/dist/Server/Services/KubernetesClusterOwnerUserService.js.map +1 -0
  639. package/build/dist/Server/Services/KubernetesResourceService.js +237 -0
  640. package/build/dist/Server/Services/KubernetesResourceService.js.map +1 -0
  641. package/build/dist/Server/Services/MetricPipelineRuleService.js +9 -0
  642. package/build/dist/Server/Services/MetricPipelineRuleService.js.map +1 -0
  643. package/build/dist/Server/Services/MetricRecordingRuleService.js +9 -0
  644. package/build/dist/Server/Services/MetricRecordingRuleService.js.map +1 -0
  645. package/build/dist/Server/Services/TraceDropFilterService.js +9 -0
  646. package/build/dist/Server/Services/TraceDropFilterService.js.map +1 -0
  647. package/build/dist/Server/Services/TracePipelineProcessorService.js +9 -0
  648. package/build/dist/Server/Services/TracePipelineProcessorService.js.map +1 -0
  649. package/build/dist/Server/Services/TracePipelineService.js +9 -0
  650. package/build/dist/Server/Services/TracePipelineService.js.map +1 -0
  651. package/build/dist/Server/Services/TraceRecordingRuleService.js +9 -0
  652. package/build/dist/Server/Services/TraceRecordingRuleService.js.map +1 -0
  653. package/build/dist/Server/Services/TraceScrubRuleService.js +9 -0
  654. package/build/dist/Server/Services/TraceScrubRuleService.js.map +1 -0
  655. package/build/dist/Server/Utils/Monitor/Criteria/CompareCriteria.js +56 -9
  656. package/build/dist/Server/Utils/Monitor/Criteria/CompareCriteria.js.map +1 -1
  657. package/build/dist/Server/Utils/Monitor/Criteria/MetricMonitorCriteria.js +335 -53
  658. package/build/dist/Server/Utils/Monitor/Criteria/MetricMonitorCriteria.js.map +1 -1
  659. package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js +277 -5
  660. package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js.map +1 -1
  661. package/build/dist/Server/Utils/Monitor/MonitorResource.js +8 -0
  662. package/build/dist/Server/Utils/Monitor/MonitorResource.js.map +1 -1
  663. package/build/dist/Tests/Server/Utils/Monitor/Criteria/MetricMonitorCriteria.test.js +407 -0
  664. package/build/dist/Tests/Server/Utils/Monitor/Criteria/MetricMonitorCriteria.test.js.map +1 -0
  665. package/build/dist/Tests/UI/Components/ProgressBar.test.js +1 -4
  666. package/build/dist/Tests/UI/Components/ProgressBar.test.js.map +1 -1
  667. package/build/dist/Tests/Utils/MetricUnitUtil.test.js +159 -0
  668. package/build/dist/Tests/Utils/MetricUnitUtil.test.js.map +1 -0
  669. package/build/dist/Tests/Utils/Metrics/MetricFormulaEvaluator.test.js +224 -0
  670. package/build/dist/Tests/Utils/Metrics/MetricFormulaEvaluator.test.js.map +1 -0
  671. package/build/dist/Tests/Utils/Metrics/MetricResultUnitConverter.test.js +180 -0
  672. package/build/dist/Tests/Utils/Metrics/MetricResultUnitConverter.test.js.map +1 -0
  673. package/build/dist/Tests/Utils/RecordingRuleExpression.test.js +142 -0
  674. package/build/dist/Tests/Utils/RecordingRuleExpression.test.js.map +1 -0
  675. package/build/dist/Types/Kubernetes/KubernetesInventoryExtractor.js +200 -0
  676. package/build/dist/Types/Kubernetes/KubernetesInventoryExtractor.js.map +1 -0
  677. package/build/dist/Types/Kubernetes/KubernetesObjectParser.js +1205 -0
  678. package/build/dist/Types/Kubernetes/KubernetesObjectParser.js.map +1 -0
  679. package/build/dist/Types/Metrics/MetricDownsamplingRetentionDays.js +32 -0
  680. package/build/dist/Types/Metrics/MetricDownsamplingRetentionDays.js.map +1 -0
  681. package/build/dist/Types/Metrics/MetricPipelineRuleFilterCondition.js +103 -0
  682. package/build/dist/Types/Metrics/MetricPipelineRuleFilterCondition.js.map +1 -0
  683. package/build/dist/Types/Metrics/MetricPipelineRuleType.js +27 -0
  684. package/build/dist/Types/Metrics/MetricPipelineRuleType.js.map +1 -0
  685. package/build/dist/Types/Metrics/RecordingRuleDefinition.js +110 -0
  686. package/build/dist/Types/Metrics/RecordingRuleDefinition.js.map +1 -0
  687. package/build/dist/Types/Monitor/CriteriaFilter.js +22 -0
  688. package/build/dist/Types/Monitor/CriteriaFilter.js.map +1 -1
  689. package/build/dist/Types/Monitor/MetricMonitor/MetricCriteriaContext.js +2 -0
  690. package/build/dist/Types/Monitor/MetricMonitor/MetricCriteriaContext.js.map +1 -0
  691. package/build/dist/Types/Permission.js +1241 -22
  692. package/build/dist/Types/Permission.js.map +1 -1
  693. package/build/dist/Types/Trace/TraceAggregationType.js +18 -0
  694. package/build/dist/Types/Trace/TraceAggregationType.js.map +1 -0
  695. package/build/dist/Types/Trace/TraceDropFilterAction.js +7 -0
  696. package/build/dist/Types/Trace/TraceDropFilterAction.js.map +1 -0
  697. package/build/dist/Types/Trace/TracePipelineProcessorType.js +10 -0
  698. package/build/dist/Types/Trace/TracePipelineProcessorType.js.map +1 -0
  699. package/build/dist/Types/Trace/TraceRecordingRuleDefinition.js +145 -0
  700. package/build/dist/Types/Trace/TraceRecordingRuleDefinition.js.map +1 -0
  701. package/build/dist/Types/Trace/TraceScrubAction.js +8 -0
  702. package/build/dist/Types/Trace/TraceScrubAction.js.map +1 -0
  703. package/build/dist/Types/Trace/TraceScrubField.js +9 -0
  704. package/build/dist/Types/Trace/TraceScrubField.js.map +1 -0
  705. package/build/dist/Types/Trace/TraceScrubPatternType.js +11 -0
  706. package/build/dist/Types/Trace/TraceScrubPatternType.js.map +1 -0
  707. package/build/dist/UI/Components/BulkUpdate/BulkLabelActions.js +211 -0
  708. package/build/dist/UI/Components/BulkUpdate/BulkLabelActions.js.map +1 -0
  709. package/build/dist/UI/Components/BulkUpdate/BulkUpdateForm.js +3 -1
  710. package/build/dist/UI/Components/BulkUpdate/BulkUpdateForm.js.map +1 -1
  711. package/build/dist/UI/Components/CSVFileUpload/CSVFileUpload.js +210 -0
  712. package/build/dist/UI/Components/CSVFileUpload/CSVFileUpload.js.map +1 -0
  713. package/build/dist/UI/Components/CardSelect/CardSelect.js +3 -1
  714. package/build/dist/UI/Components/CardSelect/CardSelect.js.map +1 -1
  715. package/build/dist/UI/Components/Charts/ChartGroup/ChartGroup.js +6 -9
  716. package/build/dist/UI/Components/Charts/ChartGroup/ChartGroup.js.map +1 -1
  717. package/build/dist/UI/Components/Forms/Fields/FormField.js +1 -1
  718. package/build/dist/UI/Components/Forms/Fields/FormField.js.map +1 -1
  719. package/build/dist/UI/Components/Markdown.tsx/MarkdownViewer.js +30 -0
  720. package/build/dist/UI/Components/Markdown.tsx/MarkdownViewer.js.map +1 -1
  721. package/build/dist/UI/Components/Page/Page.js +1 -0
  722. package/build/dist/UI/Components/Page/Page.js.map +1 -1
  723. package/build/dist/UI/Components/ProgressBar/ProgressBar.js +11 -9
  724. package/build/dist/UI/Components/ProgressBar/ProgressBar.js.map +1 -1
  725. package/build/dist/Utils/MetricUnitUtil.js +232 -0
  726. package/build/dist/Utils/MetricUnitUtil.js.map +1 -0
  727. package/build/dist/Utils/Metrics/MetricFormulaEvaluator.js +453 -0
  728. package/build/dist/Utils/Metrics/MetricFormulaEvaluator.js.map +1 -0
  729. package/build/dist/Utils/Metrics/MetricResultUnitConverter.js +61 -0
  730. package/build/dist/Utils/Metrics/MetricResultUnitConverter.js.map +1 -0
  731. package/build/dist/Utils/Metrics/RecordingRuleExpression.js +298 -0
  732. package/build/dist/Utils/Metrics/RecordingRuleExpression.js.map +1 -0
  733. package/build/dist/Utils/ValueFormatter.js +123 -13
  734. package/build/dist/Utils/ValueFormatter.js.map +1 -1
  735. package/package.json +1 -1
@@ -2,16 +2,26 @@ import AggregateModel from "../../../../Types/BaseDatabase/AggregatedModel";
2
2
  import AggregatedResult from "../../../../Types/BaseDatabase/AggregatedResult";
3
3
  import MetricFormulaConfigData from "../../../../Types/Metrics/MetricFormulaConfigData";
4
4
  import MetricQueryConfigData from "../../../../Types/Metrics/MetricQueryConfigData";
5
+ import MetricsAggregationType from "../../../../Types/Metrics/MetricsAggregationType";
5
6
  import MetricMonitorResponse from "../../../../Types/Monitor/MetricMonitor/MetricMonitorResponse";
7
+ import MetricCriteriaContext, {
8
+ MetricComponent,
9
+ MetricComponentValue,
10
+ } from "../../../../Types/Monitor/MetricMonitor/MetricCriteriaContext";
6
11
  import MonitorStep from "../../../../Types/Monitor/MonitorStep";
12
+ import { JSONObject } from "../../../../Types/JSON";
7
13
  import DataToProcess from "../DataToProcess";
8
14
  import CompareCriteria from "./CompareCriteria";
9
15
  import {
10
16
  CheckOn,
11
17
  CriteriaFilter,
12
18
  EvaluateOverTimeType,
19
+ FilterType,
20
+ NoDataPolicy,
13
21
  } from "../../../../Types/Monitor/CriteriaFilter";
14
22
  import CaptureSpan from "../../Telemetry/CaptureSpan";
23
+ import MetricUnitUtil from "../../../../Utils/MetricUnitUtil";
24
+ import MetricFormulaEvaluator from "../../../../Utils/Metrics/MetricFormulaEvaluator";
15
25
 
16
26
  export default class MetricMonitorCriteria {
17
27
  @CaptureSpan()
@@ -30,100 +40,498 @@ export default class MetricMonitorCriteria {
30
40
  EvaluateOverTimeType.AnyValue;
31
41
  }
32
42
 
33
- let threshold: number | string | undefined | null =
34
- input.criteriaFilter.value;
43
+ if (input.criteriaFilter.checkOn !== CheckOn.MetricValue) {
44
+ return null;
45
+ }
46
+
47
+ const rawThreshold: number | null = CompareCriteria.convertToNumber(
48
+ input.criteriaFilter.value,
49
+ );
50
+
51
+ const metricAlias: string =
52
+ input.criteriaFilter.metricMonitorOptions?.metricAlias || "";
35
53
 
36
- if (input.criteriaFilter.checkOn === CheckOn.MetricValue) {
37
- threshold = CompareCriteria.convertToNumber(threshold);
54
+ const metricResponse: MetricMonitorResponse =
55
+ input.dataToProcess as MetricMonitorResponse;
56
+ const metricAggregatedResult: Array<AggregatedResult> =
57
+ metricResponse.metricResult || [];
38
58
 
39
- const metricAggregaredResult: Array<AggregatedResult> =
40
- (input.dataToProcess as MetricMonitorResponse).metricResult || [];
59
+ const queryConfigs: Array<MetricQueryConfigData> =
60
+ input.monitorStep.data?.metricMonitor?.metricViewConfig?.queryConfigs ||
61
+ [];
62
+ const formulaConfigs: Array<MetricFormulaConfigData> =
63
+ input.monitorStep.data?.metricMonitor?.metricViewConfig?.formulaConfigs ||
64
+ [];
41
65
 
42
- const metricAlias: string =
43
- input.criteriaFilter.metricMonitorOptions?.metricAlias || "";
66
+ /*
67
+ * Resolve which query/formula the alias refers to. Use explicit index
68
+ * checks (not `findIndex() || -1`, which incorrectly falls back to -1
69
+ * when the first element matches).
70
+ */
71
+ let matchedQuery: MetricQueryConfigData | null = null;
72
+ let matchedFormula: MetricFormulaConfigData | null = null;
73
+ let aliasIndex: number = -1;
44
74
 
45
- // Pick based on the alias, or if there's no alias, pick the first one
75
+ if (metricAlias) {
76
+ const qIdx: number = queryConfigs.findIndex(
77
+ (q: MetricQueryConfigData) => {
78
+ return q.metricAliasData?.metricVariable === metricAlias;
79
+ },
80
+ );
46
81
 
47
- let aliasIndex: number =
48
- input.monitorStep.data?.metricMonitor?.metricViewConfig?.queryConfigs.findIndex(
49
- (queryConfig: MetricQueryConfigData) => {
50
- return queryConfig.metricAliasData?.metricVariable === metricAlias;
82
+ if (qIdx >= 0) {
83
+ matchedQuery = queryConfigs[qIdx] || null;
84
+ aliasIndex = qIdx;
85
+ } else {
86
+ const fIdx: number = formulaConfigs.findIndex(
87
+ (f: MetricFormulaConfigData) => {
88
+ return f.metricAliasData?.metricVariable === metricAlias;
51
89
  },
52
- ) || -1;
53
-
54
- if (aliasIndex < 0) {
55
- // then try to find in formula
56
- let formulaIndex: number =
57
- input.monitorStep.data?.metricMonitor?.metricViewConfig?.formulaConfigs.findIndex(
58
- (formulaConfig: MetricFormulaConfigData) => {
59
- return (
60
- formulaConfig.metricAliasData?.metricVariable === metricAlias
61
- );
62
- },
63
- ) || -1;
64
-
65
- if (formulaIndex >= 0) {
66
- // add number of queries to the index
67
- formulaIndex =
68
- formulaIndex +
69
- (input.monitorStep.data?.metricMonitor?.metricViewConfig
70
- ?.queryConfigs.length || 0);
71
- aliasIndex = formulaIndex;
90
+ );
91
+
92
+ if (fIdx >= 0) {
93
+ matchedFormula = formulaConfigs[fIdx] || null;
94
+ aliasIndex = queryConfigs.length + fIdx;
72
95
  }
73
96
  }
74
- const aggregatedResult: AggregatedResult | undefined =
75
- metricAggregaredResult &&
76
- metricAggregaredResult.length >= aliasIndex - 1 &&
77
- aliasIndex >= 0
78
- ? metricAggregaredResult[aliasIndex]
79
- : metricAggregaredResult[0] || undefined;
80
-
81
- if (metricAlias) {
82
- // find the index of the alias in the dataToProcess.
83
- const indexOfAlias: number = (
84
- input.dataToProcess as MetricMonitorResponse
85
- ).metricViewConfig.queryConfigs.findIndex(
86
- (queryConfig: MetricQueryConfigData) => {
87
- return queryConfig.metricAliasData?.metricVariable === metricAlias;
88
- },
89
- );
97
+ }
90
98
 
91
- // now get the aggregated result for that alias
92
- if (indexOfAlias !== -1) {
93
- const aggregatedResultForAlias: AggregatedResult | undefined =
94
- metricAggregaredResult[indexOfAlias];
95
- if (aggregatedResultForAlias) {
96
- const numbers: Array<number> = aggregatedResultForAlias.data.map(
97
- (data: AggregateModel) => {
98
- return data.value;
99
- },
100
- );
99
+ /*
100
+ * If no alias was configured or it didn't match anything, fall back to
101
+ * the first aggregated result / query for a best-effort comparison.
102
+ */
103
+ const aggregatedResult: AggregatedResult | undefined =
104
+ aliasIndex >= 0
105
+ ? metricAggregatedResult[aliasIndex]
106
+ : metricAggregatedResult[0];
107
+
108
+ if (!matchedQuery && !matchedFormula && queryConfigs[0]) {
109
+ matchedQuery = queryConfigs[0];
110
+ }
111
+
112
+ /*
113
+ * Build the metric context regardless of whether the threshold breaches,
114
+ * so the filter message can still reference the metric if needed.
115
+ */
116
+ const metricContext: MetricCriteriaContext =
117
+ MetricMonitorCriteria.buildContext({
118
+ matchedQuery,
119
+ matchedFormula,
120
+ metricAlias,
121
+ criteriaFilter: input.criteriaFilter,
122
+ queryConfigs,
123
+ formulaConfigs,
124
+ });
125
+
126
+ input.criteriaFilter.metricCriteriaContext = metricContext;
127
+
128
+ if (rawThreshold === null) {
129
+ return null;
130
+ }
131
+
132
+ /*
133
+ * Sample values arrive already converted into the query's configured
134
+ * display unit (legendUnit) — the upstream fetch step uses
135
+ * MetricResultUnitConverter to normalize OpenTelemetry's native unit
136
+ * into whatever the user picked. So `sampleUnit` here is that
137
+ * legendUnit, and `thresholdUnit` is what the user typed into the
138
+ * criteria threshold. When they differ we convert sample values from
139
+ * legendUnit → thresholdUnit before comparing, so the alert message
140
+ * reads in the unit the user actually chose for the threshold.
141
+ */
142
+ const sampleUnit: string | undefined = metricContext.unit || undefined;
143
+ const thresholdUnit: string | undefined =
144
+ input.criteriaFilter.metricMonitorOptions?.thresholdUnit || sampleUnit;
145
+
146
+ const displayUnit: string | undefined = thresholdUnit;
147
+
148
+ /*
149
+ * Threshold is entered in thresholdUnit; keep the numeric value as-is
150
+ * for comparison in that same unit.
151
+ */
152
+ const threshold: number = rawThreshold;
153
+
154
+ const convertToDisplayUnit: (value: number) => number = (
155
+ value: number,
156
+ ): number => {
157
+ if (!sampleUnit || !displayUnit || sampleUnit === displayUnit) {
158
+ return value;
159
+ }
160
+ return MetricUnitUtil.convertToMetricUnit({
161
+ value,
162
+ fromUnit: sampleUnit,
163
+ metricUnit: displayUnit,
164
+ });
165
+ };
166
+
167
+ metricContext.unit = displayUnit || null;
168
+
169
+ const samples: Array<AggregateModel> =
170
+ (aggregatedResult && aggregatedResult.data) || [];
171
+
172
+ /*
173
+ * Respect the configured no-data policy. Without this guard, the
174
+ * evaluator silently treats missing data as a value of 0 and can
175
+ * trigger incidents for monitors that simply haven't received data.
176
+ */
177
+ if (samples.length === 0) {
178
+ const policy: NoDataPolicy =
179
+ input.criteriaFilter.metricMonitorOptions?.onNoDataPolicy ||
180
+ NoDataPolicy.Ignore;
101
181
 
102
- return CompareCriteria.compareCriteriaNumbers({
103
- value: numbers && numbers.length > 0 ? numbers : 0,
104
- threshold: threshold as number,
105
- criteriaFilter: input.criteriaFilter,
106
- });
107
- }
182
+ if (policy === NoDataPolicy.Ignore) {
183
+ return null;
184
+ }
185
+
186
+ if (policy === NoDataPolicy.Trigger) {
187
+ return `No data received for ${metricContext.metricName} in the evaluation window — triggering per no-data policy.`;
188
+ }
189
+
190
+ // TreatAsZero: fall through to the comparator with value 0.
191
+ }
192
+
193
+ const numbersInDisplayUnit: Array<number> = samples.map(
194
+ (d: AggregateModel) => {
195
+ return convertToDisplayUnit(d.value);
196
+ },
197
+ );
198
+
199
+ const comparisonMessage: string | null =
200
+ CompareCriteria.compareCriteriaNumbers({
201
+ value: numbersInDisplayUnit.length > 0 ? numbersInDisplayUnit : 0,
202
+ threshold: threshold,
203
+ criteriaFilter: input.criteriaFilter,
204
+ metricDisplayName: metricContext.metricName,
205
+ unit: displayUnit,
206
+ });
207
+
208
+ if (!comparisonMessage) {
209
+ return null;
210
+ }
211
+
212
+ /*
213
+ * Identify every sample that breached so the root cause can render a
214
+ * timestamp/value table instead of a giant one-line list, and keep a
215
+ * total count so we can say "N of M samples breached". Values are
216
+ * stored in the display unit so they match the comparison message.
217
+ */
218
+ const breachingSamples: Array<{
219
+ value: number;
220
+ timestamp: Date;
221
+ attributes: JSONObject;
222
+ componentValues?: Array<MetricComponentValue>;
223
+ }> = [];
224
+
225
+ /*
226
+ * For formulas, precompute an index from ISO-timestamp → value for
227
+ * every component series so we can show what `a` and `b` were at
228
+ * the moment the formula breached, without re-walking the arrays
229
+ * inside the per-sample loop.
230
+ */
231
+ const componentValueLookup: Map<string, Map<string, number>> | null =
232
+ matchedFormula
233
+ ? MetricMonitorCriteria.buildComponentValueLookup({
234
+ components: metricContext.components || [],
235
+ queryConfigs,
236
+ formulaConfigs,
237
+ metricAggregatedResult,
238
+ })
239
+ : null;
240
+
241
+ for (const sample of samples) {
242
+ const convertedValue: number = convertToDisplayUnit(sample.value);
243
+ const breaches: boolean = MetricMonitorCriteria.sampleBreaches(
244
+ convertedValue,
245
+ threshold,
246
+ input.criteriaFilter.filterType,
247
+ );
248
+ if (breaches) {
249
+ const entry: {
250
+ value: number;
251
+ timestamp: Date;
252
+ attributes: JSONObject;
253
+ componentValues?: Array<MetricComponentValue>;
254
+ } = {
255
+ value: convertedValue,
256
+ timestamp: sample.timestamp,
257
+ attributes: MetricMonitorCriteria.extractLabelAttributes(sample),
258
+ };
259
+
260
+ if (componentValueLookup && metricContext.components) {
261
+ entry.componentValues = MetricMonitorCriteria.resolveComponentValues({
262
+ timestamp: sample.timestamp,
263
+ components: metricContext.components,
264
+ lookup: componentValueLookup,
265
+ });
108
266
  }
267
+
268
+ breachingSamples.push(entry);
109
269
  }
270
+ }
271
+
272
+ metricContext.totalSamplesInWindow = samples.length;
273
+
274
+ if (breachingSamples.length > 0) {
275
+ metricContext.breachingSample = breachingSamples[0];
276
+ metricContext.breachingSamples = breachingSamples;
277
+ }
278
+
279
+ return comparisonMessage;
280
+ }
281
+
282
+ private static buildComponentValueLookup(input: {
283
+ components: Array<MetricComponent>;
284
+ queryConfigs: Array<MetricQueryConfigData>;
285
+ formulaConfigs: Array<MetricFormulaConfigData>;
286
+ metricAggregatedResult: Array<AggregatedResult>;
287
+ }): Map<string, Map<string, number>> {
288
+ // Map of alias -> (isoTimestamp -> value)
289
+ const lookup: Map<string, Map<string, number>> = new Map();
290
+
291
+ for (const component of input.components) {
292
+ const queryIdx: number = input.queryConfigs.findIndex(
293
+ (q: MetricQueryConfigData) => {
294
+ return (
295
+ (q.metricAliasData?.metricVariable || "").toLowerCase() ===
296
+ component.alias
297
+ );
298
+ },
299
+ );
110
300
 
111
- // if there's no alias then this is the default case
112
- if (aggregatedResult) {
113
- const numbers: Array<number> = aggregatedResult.data.map(
114
- (data: AggregateModel) => {
115
- return data.value;
301
+ let resultIndex: number = -1;
302
+ if (queryIdx >= 0) {
303
+ resultIndex = queryIdx;
304
+ } else {
305
+ const formulaIdx: number = input.formulaConfigs.findIndex(
306
+ (fc: MetricFormulaConfigData) => {
307
+ return (
308
+ (fc.metricAliasData?.metricVariable || "").toLowerCase() ===
309
+ component.alias
310
+ );
116
311
  },
117
312
  );
313
+ if (formulaIdx >= 0) {
314
+ resultIndex = input.queryConfigs.length + formulaIdx;
315
+ }
316
+ }
317
+
318
+ if (resultIndex < 0) {
319
+ continue;
320
+ }
321
+
322
+ const series: AggregatedResult | undefined =
323
+ input.metricAggregatedResult[resultIndex];
324
+ if (!series) {
325
+ continue;
326
+ }
327
+
328
+ const timestampMap: Map<string, number> = new Map();
329
+ for (const row of series.data) {
330
+ const iso: string = MetricMonitorCriteria.toIsoTimestamp(row.timestamp);
331
+ timestampMap.set(iso, row.value);
332
+ }
333
+ lookup.set(component.alias, timestampMap);
334
+ }
335
+
336
+ return lookup;
337
+ }
338
+
339
+ private static resolveComponentValues(input: {
340
+ timestamp: Date | string;
341
+ components: Array<MetricComponent>;
342
+ lookup: Map<string, Map<string, number>>;
343
+ }): Array<MetricComponentValue> {
344
+ const iso: string = MetricMonitorCriteria.toIsoTimestamp(input.timestamp);
345
+ return input.components.map((component: MetricComponent) => {
346
+ const series: Map<string, number> | undefined = input.lookup.get(
347
+ component.alias,
348
+ );
349
+ const value: number | undefined = series ? series.get(iso) : undefined;
350
+ return {
351
+ alias: component.alias,
352
+ value: typeof value === "number" ? value : null,
353
+ };
354
+ });
355
+ }
356
+
357
+ private static toIsoTimestamp(value: Date | string): string {
358
+ const date: Date = value instanceof Date ? value : new Date(value);
359
+ return isNaN(date.getTime()) ? String(value) : date.toISOString();
360
+ }
361
+
362
+ private static sampleBreaches(
363
+ value: number,
364
+ threshold: number,
365
+ filterType: FilterType | undefined,
366
+ ): boolean {
367
+ switch (filterType) {
368
+ case FilterType.GreaterThan:
369
+ return value > threshold;
370
+ case FilterType.GreaterThanOrEqualTo:
371
+ return value >= threshold;
372
+ case FilterType.LessThan:
373
+ return value < threshold;
374
+ case FilterType.LessThanOrEqualTo:
375
+ return value <= threshold;
376
+ case FilterType.EqualTo:
377
+ return value === threshold;
378
+ case FilterType.NotEqualTo:
379
+ return value !== threshold;
380
+ default:
381
+ return false;
382
+ }
383
+ }
384
+
385
+ private static extractLabelAttributes(sample: AggregateModel): JSONObject {
386
+ /*
387
+ * AggregatedModel has a string index signature that holds group-by
388
+ * attributes alongside `timestamp` and `value`. Strip the known keys
389
+ * to get the label dictionary.
390
+ */
391
+ const labels: JSONObject = {};
392
+ for (const key of Object.keys(sample)) {
393
+ if (key === "timestamp" || key === "value") {
394
+ continue;
395
+ }
396
+ const v: unknown = (sample as unknown as JSONObject)[key];
397
+ if (v === undefined || v === null) {
398
+ continue;
399
+ }
400
+ labels[key] = v as JSONObject[string];
401
+ }
402
+ return labels;
403
+ }
404
+
405
+ private static buildContext(input: {
406
+ matchedQuery: MetricQueryConfigData | null;
407
+ matchedFormula: MetricFormulaConfigData | null;
408
+ metricAlias: string;
409
+ criteriaFilter: CriteriaFilter;
410
+ queryConfigs: Array<MetricQueryConfigData>;
411
+ formulaConfigs: Array<MetricFormulaConfigData>;
412
+ }): MetricCriteriaContext {
413
+ const q: MetricQueryConfigData | null = input.matchedQuery;
414
+ const f: MetricFormulaConfigData | null = input.matchedFormula;
415
+
416
+ const metricName: string =
417
+ (q?.metricQueryData?.filterData?.metricName as string | undefined) ||
418
+ f?.metricFormulaData?.metricFormula ||
419
+ q?.metricAliasData?.title ||
420
+ f?.metricAliasData?.title ||
421
+ "Metric";
422
+
423
+ const unit: string | null =
424
+ (q?.metricAliasData?.legendUnit as string | undefined) ||
425
+ (f?.metricAliasData?.legendUnit as string | undefined) ||
426
+ null;
427
+
428
+ const aggregationType: MetricsAggregationType | null =
429
+ (q?.metricQueryData?.filterData?.aggegationType as
430
+ | MetricsAggregationType
431
+ | undefined) || null;
432
+
433
+ const filterAttributes: JSONObject =
434
+ (q?.metricQueryData?.filterData?.attributes as JSONObject | undefined) ||
435
+ {};
436
+
437
+ const groupBy: Array<string> = q?.metricQueryData?.groupBy
438
+ ? Object.keys(q.metricQueryData.groupBy as Record<string, unknown>)
439
+ : [];
440
+
441
+ const components: Array<MetricComponent> | undefined = f
442
+ ? MetricMonitorCriteria.buildFormulaComponents({
443
+ formulaConfig: f,
444
+ queryConfigs: input.queryConfigs,
445
+ formulaConfigs: input.formulaConfigs,
446
+ })
447
+ : undefined;
448
+
449
+ return {
450
+ metricName,
451
+ alias: input.metricAlias,
452
+ unit,
453
+ aggregationType,
454
+ isFormula: Boolean(f),
455
+ formulaExpression: f?.metricFormulaData?.metricFormula,
456
+ filterAttributes,
457
+ groupBy,
458
+ timeWindowMinutes:
459
+ input.criteriaFilter.evaluateOverTimeOptions?.timeValueInMinutes,
460
+ ...(components && components.length > 0 ? { components } : {}),
461
+ };
462
+ }
463
+
464
+ /**
465
+ * Resolve the variables the formula references to their source
466
+ * query/formula definitions so the root cause can label each
467
+ * component column with its metric name and native unit.
468
+ */
469
+ private static buildFormulaComponents(input: {
470
+ formulaConfig: MetricFormulaConfigData;
471
+ queryConfigs: Array<MetricQueryConfigData>;
472
+ formulaConfigs: Array<MetricFormulaConfigData>;
473
+ }): Array<MetricComponent> {
474
+ const formula: string =
475
+ input.formulaConfig.metricFormulaData?.metricFormula || "";
476
+ const referenced: Array<string> =
477
+ MetricFormulaEvaluator.getReferencedVariables(formula);
478
+
479
+ const components: Array<MetricComponent> = [];
480
+ const seen: Set<string> = new Set<string>();
481
+
482
+ for (const alias of referenced) {
483
+ const normalizedAlias: string = alias.toLowerCase();
484
+ if (seen.has(normalizedAlias)) {
485
+ continue;
486
+ }
487
+ seen.add(normalizedAlias);
488
+
489
+ const queryMatch: MetricQueryConfigData | undefined =
490
+ input.queryConfigs.find((q: MetricQueryConfigData) => {
491
+ return (
492
+ (q.metricAliasData?.metricVariable || "").toLowerCase() ===
493
+ normalizedAlias
494
+ );
495
+ });
496
+
497
+ if (queryMatch) {
498
+ const name: string =
499
+ (queryMatch.metricQueryData?.filterData?.metricName as
500
+ | string
501
+ | undefined) ||
502
+ queryMatch.metricAliasData?.title ||
503
+ normalizedAlias;
504
+ components.push({
505
+ alias: normalizedAlias,
506
+ name,
507
+ unit: queryMatch.metricAliasData?.legendUnit || null,
508
+ isFormula: false,
509
+ });
510
+ continue;
511
+ }
512
+
513
+ const formulaMatch: MetricFormulaConfigData | undefined =
514
+ input.formulaConfigs.find((fc: MetricFormulaConfigData) => {
515
+ return (
516
+ (fc.metricAliasData?.metricVariable || "").toLowerCase() ===
517
+ normalizedAlias
518
+ );
519
+ });
118
520
 
119
- return CompareCriteria.compareCriteriaNumbers({
120
- value: numbers && numbers.length > 0 ? numbers : 0,
121
- threshold: threshold as number,
122
- criteriaFilter: input.criteriaFilter,
521
+ if (formulaMatch) {
522
+ const name: string =
523
+ formulaMatch.metricAliasData?.title ||
524
+ formulaMatch.metricFormulaData?.metricFormula ||
525
+ normalizedAlias;
526
+ components.push({
527
+ alias: normalizedAlias,
528
+ name,
529
+ unit: formulaMatch.metricAliasData?.legendUnit || null,
530
+ isFormula: true,
123
531
  });
124
532
  }
125
533
  }
126
534
 
127
- return null;
535
+ return components;
128
536
  }
129
537
  }