@oneuptime/common 12.0.33 → 13.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (877) hide show
  1. package/Models/AnalyticsModels/RumSession.ts +117 -1
  2. package/Models/AnalyticsModels/RumSessionChunk.ts +13 -0
  3. package/Models/DatabaseModels/AlertCustomField.ts +77 -3
  4. package/Models/DatabaseModels/ApiKeyPermission.ts +3 -27
  5. package/Models/DatabaseModels/GlobalConfig.ts +12 -12
  6. package/Models/DatabaseModels/IncidentCustomField.ts +77 -3
  7. package/Models/DatabaseModels/InventoryItem.ts +44 -1
  8. package/Models/DatabaseModels/InventoryItemCustomField.ts +77 -3
  9. package/Models/DatabaseModels/MonitorCustomField.ts +77 -3
  10. package/Models/DatabaseModels/NetworkDevice.ts +126 -0
  11. package/Models/DatabaseModels/OnCallDutyPolicyCustomField.ts +77 -3
  12. package/Models/DatabaseModels/RumApplication.ts +6 -6
  13. package/Models/DatabaseModels/ScheduledMaintenanceCustomField.ts +77 -3
  14. package/Models/DatabaseModels/StatusPageCustomField.ts +77 -3
  15. package/Models/DatabaseModels/TeamCustomField.ts +77 -3
  16. package/Models/DatabaseModels/TeamMember.ts +0 -9
  17. package/Models/DatabaseModels/TeamMemberCustomField.ts +77 -3
  18. package/Models/DatabaseModels/TeamPermission.ts +3 -24
  19. package/Models/DatabaseModels/TelemetryIngestionKey.ts +260 -0
  20. package/Models/DatabaseModels/UserTelegram.ts +0 -4
  21. package/Scripts/benchmark-fanin-capacity.js +181 -0
  22. package/Server/API/TelemetryAPI.ts +1284 -164
  23. package/Server/API/UserNotificationSettingAPI.ts +55 -0
  24. package/Server/API/UserTelegramAPI.ts +48 -4
  25. package/Server/EnvironmentConfig.ts +82 -18
  26. package/Server/Infrastructure/Postgres/SchemaMigrations/1791300000000-AddTelemetryIngestionKeyType.ts +91 -0
  27. package/Server/Infrastructure/Postgres/SchemaMigrations/1791400000000-SessionReplayRecordEverySessionByDefault.ts +67 -0
  28. package/Server/Infrastructure/Postgres/SchemaMigrations/1791500000000-WidenCustomFieldDropdownOptions.ts +139 -0
  29. package/Server/Infrastructure/Postgres/SchemaMigrations/1791600000000-AddCustomFieldValueMapping.ts +121 -0
  30. package/Server/Infrastructure/Postgres/SchemaMigrations/1791700000000-AddMacAddressToNetworkDevice.ts +25 -0
  31. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +10 -0
  32. package/Server/Infrastructure/QueueWorker.ts +20 -14
  33. package/Server/Infrastructure/Redis.ts +8 -8
  34. package/Server/Infrastructure/Semaphore.ts +2 -0
  35. package/Server/Infrastructure/Status.ts +10 -4
  36. package/Server/Middleware/TelemetryIngest.ts +453 -7
  37. package/Server/Services/AccessTokenService.ts +1 -0
  38. package/Server/Services/AlertCustomFieldService.ts +98 -0
  39. package/Server/Services/AlertService.ts +37 -0
  40. package/Server/Services/ApiKeyPermissionService.ts +461 -29
  41. package/Server/Services/CustomFieldMappingService.ts +879 -0
  42. package/Server/Services/DatabaseService.ts +65 -13
  43. package/Server/Services/GlobalConfigService.ts +194 -0
  44. package/Server/Services/IncidentCustomFieldService.ts +98 -0
  45. package/Server/Services/IncidentService.ts +35 -0
  46. package/Server/Services/InventoryItemService.ts +31 -1
  47. package/Server/Services/MetricService.ts +194 -0
  48. package/Server/Services/MonitorService.ts +32 -0
  49. package/Server/Services/MonitorTemplateService.ts +140 -19
  50. package/Server/Services/NetworkDeviceAutoImportRuleEngineService.ts +427 -66
  51. package/Server/Services/NetworkDeviceDiscoveryScanService.ts +87 -2
  52. package/Server/Services/NetworkDeviceService.ts +69 -0
  53. package/Server/Services/ProjectService.ts +22 -0
  54. package/Server/Services/RoutineEmailSettingsService.ts +73 -0
  55. package/Server/Services/RumSessionReplayViewService.ts +104 -24
  56. package/Server/Services/ScheduledMaintenanceCustomFieldService.ts +98 -0
  57. package/Server/Services/ScheduledMaintenanceService.ts +32 -0
  58. package/Server/Services/TeamMemberService.ts +78 -0
  59. package/Server/Services/TeamPermissionService.ts +235 -3
  60. package/Server/Services/TelemetryIngestionKeyService.ts +722 -19
  61. package/Server/Services/UserNotificationRuleService.ts +76 -25
  62. package/Server/Services/UserNotificationSettingService.ts +34 -6
  63. package/Server/Services/UserTelegramService.ts +326 -5
  64. package/Server/Types/Database/Permissions/ReadPermission.ts +45 -5
  65. package/Server/Types/Database/QueryHelper.ts +2 -0
  66. package/Server/Types/Database/QueryUtil.ts +56 -0
  67. package/Server/Types/Markdown.ts +93 -1
  68. package/Server/Utils/APIKey/AccessPermission.ts +5 -2
  69. package/Server/Utils/CustomField/CustomFieldDefinitionMappingHooks.ts +54 -0
  70. package/Server/Utils/CustomField/CustomFieldMappingRegistry.ts +415 -0
  71. package/Server/Utils/CustomField/CustomFieldMappingValidator.ts +335 -0
  72. package/Server/Utils/Dashboard/PublicDashboardResourceListPolicy.ts +82 -17
  73. package/Server/Utils/DataSource/EgressGuard.ts +177 -8
  74. package/Server/Utils/EmailRollup/EmailRollupConstants.ts +38 -5
  75. package/Server/Utils/EmailRollup/EmailRollupFlushRunner.ts +67 -5
  76. package/Server/Utils/EmailRollup/EmailRollupRenderer.ts +2 -2
  77. package/Server/Utils/FrontendEnvironment.ts +40 -0
  78. package/Server/Utils/LogRedaction.ts +20 -0
  79. package/Server/Utils/Logger.ts +11 -0
  80. package/Server/Utils/Monitor/Criteria/CompareCriteria.ts +394 -86
  81. package/Server/Utils/Monitor/Criteria/IncomingRequestCriteria.ts +30 -4
  82. package/Server/Utils/Monitor/Criteria/MetricMonitorCriteria.ts +31 -5
  83. package/Server/Utils/Monitor/MonitorAlert.ts +29 -6
  84. package/Server/Utils/Monitor/MonitorCriteriaEvaluator.ts +312 -52
  85. package/Server/Utils/Monitor/MonitorCriteriaExpectationBuilder.ts +82 -9
  86. package/Server/Utils/Monitor/MonitorCriteriaMessageBuilder.ts +16 -7
  87. package/Server/Utils/Monitor/MonitorCriteriaMessageFormatter.ts +29 -17
  88. package/Server/Utils/Monitor/MonitorCriteriaObservationBuilder.ts +107 -48
  89. package/Server/Utils/Monitor/MonitorIncident.ts +22 -6
  90. package/Server/Utils/Monitor/MonitorTemplateUtil.ts +29 -0
  91. package/Server/Utils/Monitor/NetworkDeviceMacLearningUtil.ts +158 -0
  92. package/Server/Utils/Monitor/NetworkInventoryUtil.ts +27 -0
  93. package/Server/Utils/Monitor/SeriesContextEnricher.ts +304 -0
  94. package/Server/Utils/SSRFProtection.ts +217 -10
  95. package/Server/Utils/SessionReplay/SessionReplayGateCache.ts +239 -138
  96. package/Server/Utils/SessionReplay/SessionReplayHealthCounters.ts +305 -0
  97. package/Server/Utils/SessionReplay/SessionReplayReadService.ts +1430 -289
  98. package/Server/Utils/StartServer.ts +2 -17
  99. package/Server/Utils/TelegramVerificationToken.ts +185 -0
  100. package/Server/Utils/Telemetry/EntityRegistry.ts +11 -1
  101. package/Server/Utils/Telemetry/PinServiceName.ts +197 -0
  102. package/Server/Utils/Telemetry/TelemetryEntity.ts +83 -9
  103. package/Server/Utils/Telemetry/TelemetryFanInWriter.ts +38 -16
  104. package/Server/Utils/Telemetry/TelemetryIngestionKeyGuard.ts +92 -0
  105. package/Server/Utils/Telemetry/TelemetryIngestionKeyRateLimiter.ts +217 -0
  106. package/Server/Utils/VM/VMAPI.ts +1 -0
  107. package/Server/Utils/VM/VMRunner.ts +975 -95
  108. package/Tests/App/AdminDashboard/AdminHeaderSmallScreens.test.tsx +202 -0
  109. package/Tests/App/Dashboard/AddNeighborToMonitoringModal.test.tsx +32 -0
  110. package/Tests/App/Dashboard/AdoptedDeviceDrawer.test.tsx +374 -0
  111. package/Tests/App/Dashboard/DashboardHeaderSmallScreens.test.tsx +404 -0
  112. package/Tests/App/Dashboard/DashboardLabelVariables.test.tsx +580 -0
  113. package/Tests/App/Dashboard/DashboardMonitorLabelVariable.test.tsx +438 -0
  114. package/Tests/App/Dashboard/DashboardVariableAllContract.test.tsx +5 -2
  115. package/Tests/App/Dashboard/DeviceAttachmentCard.test.tsx +273 -0
  116. package/Tests/App/Dashboard/DiscoveryReviewInventoryRefresh.test.tsx +505 -0
  117. package/Tests/App/Dashboard/DiscoveryScanWizardValidation.test.tsx +468 -0
  118. package/Tests/App/Dashboard/EntityDetailPanel.test.tsx +163 -0
  119. package/Tests/App/Dashboard/InfrastructureExplorer.test.tsx +401 -0
  120. package/Tests/App/Dashboard/InfrastructureGraph.test.tsx +232 -0
  121. package/Tests/App/Dashboard/InventoryItems.test.tsx +201 -0
  122. package/Tests/App/Dashboard/InventoryTypeAndStatusFacets.test.tsx +798 -0
  123. package/Tests/App/Dashboard/NetworkTopologyLiveView.test.tsx +320 -0
  124. package/Tests/App/Dashboard/NetworkTopologyToolbar.test.tsx +275 -0
  125. package/Tests/App/Dashboard/OnCallCalendarFeedEmptyState.test.tsx +975 -0
  126. package/Tests/App/Dashboard/OnCallCalendarFeedPlanGate.test.tsx +63 -0
  127. package/Tests/App/Dashboard/ServiceMapGraph.test.tsx +626 -0
  128. package/Tests/App/Dashboard/TopologyDataLoading.test.tsx +348 -0
  129. package/Tests/App/Dashboard/TopologyPageNavigation.test.tsx +331 -0
  130. package/Tests/App/Dashboard/UserSettingsEmailPreferences.test.tsx +603 -0
  131. package/Tests/App/Dashboard/UserSettingsNotificationSettings.test.tsx +324 -0
  132. package/Tests/App/PublicDashboard/DashboardVariableSelector.test.tsx +13 -4
  133. package/Tests/App/StatusPage/StatusPageLastUpdated.test.tsx +263 -0
  134. package/Tests/App/StatusPage/StatusPageOidcOrigin.test.tsx +223 -0
  135. package/Tests/App/StatusPage/StatusPageOverviewLiveAndSearch.test.tsx +753 -0
  136. package/Tests/App/StatusPage/StatusPageResourceSearchBox.test.tsx +224 -0
  137. package/Tests/Models/AnalyticsModels/RumSessionReplayColumns.test.ts +262 -0
  138. package/Tests/Models/CustomFieldMappingColumns.test.ts +166 -0
  139. package/Tests/Models/DatabaseModels/SessionReplayModels.test.ts +20 -6
  140. package/Tests/Models/InventoryItemStatus.test.ts +147 -0
  141. package/Tests/Models/NetworkDeviceMacAddressColumn.test.ts +294 -0
  142. package/Tests/ResponsiveVisibility.test.ts +115 -0
  143. package/Tests/ResponsiveVisibility.ts +183 -0
  144. package/Tests/Server/API/DashboardPublicResourceListAPI.test.ts +129 -0
  145. package/Tests/Server/API/SessionReplayAPI.test.ts +1940 -216
  146. package/Tests/Server/API/UserNotificationSettingAPI.test.ts +186 -0
  147. package/Tests/Server/API/UserTelegramAPISecurity.test.ts +231 -0
  148. package/Tests/Server/EnvironmentConfigFrontendSecurity.test.ts +234 -0
  149. package/Tests/Server/EnvironmentConfigValkey.test.ts +227 -0
  150. package/Tests/Server/Infrastructure/Postgres/AddMacAddressToNetworkDeviceMigration.test.ts +365 -0
  151. package/Tests/Server/Infrastructure/Postgres/CustomFieldValueMappingMigration.test.ts +241 -0
  152. package/Tests/Server/Infrastructure/Postgres/InventoryItemArchiveMigration.test.ts +41 -0
  153. package/Tests/Server/Infrastructure/Postgres/SessionReplayRecordEverySessionByDefaultMigration.test.ts +169 -0
  154. package/Tests/Server/Infrastructure/QueueWorkerTimeout.test.ts +210 -0
  155. package/Tests/Server/Infrastructure/TelemetryExporterDeploymentConfig.test.ts +130 -0
  156. package/Tests/Server/Infrastructure/ValkeyDeploymentConfig.test.ts +265 -0
  157. package/Tests/Server/Middleware/HttpMetricsMiddleware.test.ts +382 -0
  158. package/Tests/Server/Middleware/ProjectAuthorizationApiKeyMiddleware.test.ts +4 -1
  159. package/Tests/Server/Middleware/SCIMAuthorization.test.ts +525 -0
  160. package/Tests/Server/Middleware/TelemetryIngestBrowserKey.test.ts +1163 -0
  161. package/Tests/Server/Middleware/TelemetryIngestTokenLog.test.ts +5 -3
  162. package/Tests/Server/Services/AddTelemetryIngestionKeyTypeMigration.test.ts +555 -0
  163. package/Tests/Server/Services/ApiKeyPermissionSecurity.test.ts +678 -0
  164. package/Tests/Server/Services/ApiKeyPermissionService.test.ts +276 -28
  165. package/Tests/Server/Services/CustomFieldDropdownOptionsColumnWidth.test.ts +431 -0
  166. package/Tests/Server/Services/CustomFieldMappingService.test.ts +850 -0
  167. package/Tests/Server/Services/DatabaseServiceAggregateBy.test.ts +291 -56
  168. package/Tests/Server/Services/DatabaseServiceSortTiebreaker.test.ts +151 -0
  169. package/Tests/Server/Services/DiscoveryScanClaimHookFreeSafety.test.ts +32 -0
  170. package/Tests/Server/Services/GlobalConfigService.test.ts +414 -1
  171. package/Tests/Server/Services/InventoryItemManualCreate.test.ts +105 -0
  172. package/Tests/Server/Services/InventoryItemPromotionGate.test.ts +178 -0
  173. package/Tests/Server/Services/MetricRawEntityKeyPrune.test.ts +592 -0
  174. package/Tests/Server/Services/MonitorTemplateServiceCustomFieldSync.test.ts +502 -0
  175. package/Tests/Server/Services/NetworkDeviceAutoImportRuleEngineService.test.ts +1351 -74
  176. package/Tests/Server/Services/NetworkDeviceDiscoveryScanRegistration.test.ts +520 -0
  177. package/Tests/Server/Services/NetworkDeviceMacAddressNormalization.test.ts +572 -0
  178. package/Tests/Server/Services/RoutineEmailSettingsPostgres.test.ts +329 -0
  179. package/Tests/Server/Services/RumSessionReplayViewService.test.ts +267 -0
  180. package/Tests/Server/Services/TeamMemberAutoAcceptInvitation.test.ts +9 -0
  181. package/Tests/Server/Services/TeamMemberInviteRegistrationToken.test.ts +9 -0
  182. package/Tests/Server/Services/TeamPrivilegeEscalation.test.ts +834 -0
  183. package/Tests/Server/Services/TelemetryIngestionKeyPolicyResolution.test.ts +814 -0
  184. package/Tests/Server/Services/TelemetryIngestionKeyValidation.test.ts +998 -0
  185. package/Tests/Server/Services/UserNotificationSettingRollupRouting.test.ts +141 -0
  186. package/Tests/Server/Services/UserNotificationSettingWorkspaceChannels.test.ts +18 -10
  187. package/Tests/Server/Services/UserTelegramVerificationSecurity.test.ts +688 -0
  188. package/Tests/Server/Types/Database/InventoryStatusPostgres.test.ts +368 -0
  189. package/Tests/Server/Types/Database/Permissions/ReadBlockPermission.test.ts +261 -14
  190. package/Tests/Server/Types/Database/QueryUtilIncludesAnyOfGroups.test.ts +169 -0
  191. package/Tests/Server/Types/Database/QueryUtilIncludesAnyOfGroupsPostgres.test.ts +297 -0
  192. package/Tests/Server/Types/Markdown.test.ts +194 -1
  193. package/Tests/Server/Types/Workflow/Components/IncomingWebhookUtils.test.ts +279 -0
  194. package/Tests/Server/Types/Workflow/Components/TextToJson.test.ts +212 -0
  195. package/Tests/Server/Utils/AI/SRE/Insights/FixRouting.test.ts +497 -0
  196. package/Tests/Server/Utils/AI/Toolbox/Serializer.test.ts +383 -0
  197. package/Tests/Server/Utils/APIKey/AccessPermission.test.ts +7 -3
  198. package/Tests/Server/Utils/AnalyticsDatabase/ClusterConfig.test.ts +315 -0
  199. package/Tests/Server/Utils/CustomField/CustomFieldMappingRegistry.test.ts +436 -0
  200. package/Tests/Server/Utils/CustomField/CustomFieldMappingValidator.test.ts +437 -0
  201. package/Tests/Server/Utils/Dashboard/PublicDashboardResourceListPolicy.test.ts +214 -0
  202. package/Tests/Server/Utils/DataSource/EgressGuard.test.ts +300 -11
  203. package/Tests/Server/Utils/EmailRollup/EmailRollupBurstWindow.test.ts +83 -0
  204. package/Tests/Server/Utils/EmailRollup/EmailRollupFlushRunnerBehaviour.test.ts +2 -2
  205. package/Tests/Server/Utils/EmailRollup/EmailRollupFlushRunnerPreferences.test.ts +362 -0
  206. package/Tests/Server/Utils/EmailRollup/EmailRollupRenderer.test.ts +10 -3
  207. package/Tests/Server/Utils/EmailRollup/EmailRollupTestHarness.ts +77 -1
  208. package/Tests/Server/Utils/EventLoop.test.ts +359 -0
  209. package/Tests/Server/Utils/FrontendEnvironment.test.ts +190 -0
  210. package/Tests/Server/Utils/JsonWebToken.test.ts +30 -0
  211. package/Tests/Server/Utils/LogRedaction.test.ts +26 -0
  212. package/Tests/Server/Utils/LoggerCredentialLeak.test.ts +23 -9
  213. package/Tests/Server/Utils/Monitor/Criteria/CompareCriteria.test.ts +242 -0
  214. package/Tests/Server/Utils/Monitor/Criteria/CompareCriteriaAggregation.test.ts +590 -0
  215. package/Tests/Server/Utils/Monitor/Criteria/DatabaseMonitorCriteria.test.ts +29 -0
  216. package/Tests/Server/Utils/Monitor/Criteria/IncomingRequestHeaderCriteria.test.ts +236 -0
  217. package/Tests/Server/Utils/Monitor/Criteria/MetricMonitorCriteria.test.ts +30 -6
  218. package/Tests/Server/Utils/Monitor/Criteria/MetricMonitorCriteriaAnomalyUnits.test.ts +246 -0
  219. package/Tests/Server/Utils/Monitor/MonitorCriteriaEmailEvalLogAgreement.test.ts +280 -0
  220. package/Tests/Server/Utils/Monitor/MonitorCriteriaEvaluator.test.ts +659 -8
  221. package/Tests/Server/Utils/Monitor/MonitorCriteriaEvaluatorMetricUnits.test.ts +570 -0
  222. package/Tests/Server/Utils/Monitor/MonitorCriteriaExpectationBuilderUnits.test.ts +30 -5
  223. package/Tests/Server/Utils/Monitor/MonitorCriteriaMessageBuilderUnits.test.ts +68 -21
  224. package/Tests/Server/Utils/Monitor/MonitorCriteriaObservationBuilderUnits.test.ts +36 -19
  225. package/Tests/Server/Utils/Monitor/MonitorTemplateUtilSeriesContext.test.ts +176 -0
  226. package/Tests/Server/Utils/Monitor/NetworkDeviceMacLearningUtil.test.ts +573 -0
  227. package/Tests/Server/Utils/Monitor/NetworkInventoryUtil.test.ts +317 -0
  228. package/Tests/Server/Utils/Monitor/SeriesContextEnricher.test.ts +356 -0
  229. package/Tests/Server/Utils/SSRFProtectionCloudServiceAddresses.test.ts +595 -0
  230. package/Tests/Server/Utils/SessionReplay/SessionReplayGateCachePolicy.test.ts +198 -1
  231. package/Tests/Server/Utils/SessionReplay/SessionReplayHealthCounters.test.ts +453 -0
  232. package/Tests/Server/Utils/SessionReplay/SessionReplayReadServiceQueries.test.ts +1378 -0
  233. package/Tests/Server/Utils/SessionReplayOriginAllowListRefactor.test.ts +420 -0
  234. package/Tests/Server/Utils/TelegramVerificationToken.test.ts +253 -0
  235. package/Tests/Server/Utils/Telemetry/ContextSpanProcessor.test.ts +281 -0
  236. package/Tests/Server/Utils/Telemetry/InventoryDuplicateIdentity.test.ts +316 -0
  237. package/Tests/Server/Utils/Telemetry/PinServiceName.test.ts +666 -0
  238. package/Tests/Server/Utils/Telemetry/TelemetryEntity.test.ts +111 -8
  239. package/Tests/Server/Utils/Telemetry/TelemetryFanInWriterCapacity.test.ts +458 -0
  240. package/Tests/Server/Utils/Telemetry/TelemetryIngestionKeyGuard.test.ts +424 -0
  241. package/Tests/Server/Utils/Telemetry/TelemetryIngestionKeyRateLimiter.test.ts +528 -0
  242. package/Tests/Server/Utils/TelemetryExporterEnvironment.test.ts +56 -0
  243. package/Tests/Server/Utils/VM/VMRunnerHostBridgeLatency.test.ts +74 -0
  244. package/Tests/Server/Utils/VM/VMRunnerPrivateNetworkWiring.test.ts +100 -7
  245. package/Tests/Server/Utils/VM/VMRunnerSsrf.test.ts +1176 -6
  246. package/Tests/Types/CustomField/CustomFieldMappingCatalog.test.ts +220 -0
  247. package/Tests/Types/CustomField/CustomFieldValueMapping.test.ts +348 -0
  248. package/Tests/Types/Database/IncludesAnyOfGroups.test.ts +106 -0
  249. package/Tests/Types/JSONFunctions.test.ts +300 -0
  250. package/Tests/Types/Monitor/CephAlertTemplates.test.ts +422 -53
  251. package/Tests/Types/Monitor/DockerAlertTemplates.test.ts +495 -15
  252. package/Tests/Types/Monitor/DockerSwarmAlertTemplates.test.ts +191 -45
  253. package/Tests/Types/Monitor/HostAlertTemplates.test.ts +370 -42
  254. package/Tests/Types/Monitor/IotAlertTemplates.test.ts +375 -20
  255. package/Tests/Types/Monitor/KubernetesAlertTemplates.test.ts +636 -42
  256. package/Tests/Types/Monitor/KubernetesMetricCatalog.test.ts +189 -0
  257. package/Tests/Types/Monitor/KubernetesTemplateGroupByKeys.test.ts +95 -14
  258. package/Tests/Types/Monitor/PodmanAlertTemplates.test.ts +190 -21
  259. package/Tests/Types/Monitor/ProxmoxAlertTemplates.test.ts +352 -22
  260. package/Tests/Types/Monitor/Recommendation/MonitorRecommendationAlertDebuggability.test.ts +363 -0
  261. package/Tests/Types/Monitor/Recommendation/MonitorRecommendationNotificationMode.test.ts +93 -18
  262. package/Tests/Types/Monitor/Recommendation/MonitorRecommendationSeverityMapper.test.ts +259 -0
  263. package/Tests/Types/Monitor/Recommendation/RecommendationCriteriaBuilder.test.ts +476 -0
  264. package/Tests/Types/Monitor/RumAlertTemplates.test.ts +136 -0
  265. package/Tests/Types/Monitor/SeriesContext/SeriesDebugHints.test.ts +661 -0
  266. package/Tests/Types/Monitor/SeriesContext/SeriesLabelDisplay.test.ts +507 -0
  267. package/Tests/Types/Monitor/ServiceAlertTemplates.test.ts +270 -0
  268. package/Tests/Types/Monitor/TemplateGroupByKeys.test.ts +38 -10
  269. package/Tests/Types/Monitor/Utils/RecommendationCriteriaAssertions.ts +102 -0
  270. package/Tests/Types/NetworkAutomation/AutoImportRunMerge.test.ts +235 -0
  271. package/Tests/Types/NetworkAutomation/RuleRunResult.test.ts +66 -0
  272. package/Tests/Types/NetworkAutomation/RuleRunResultDescribe.test.ts +309 -1
  273. package/Tests/Types/NotificationSetting/RoutineEmailEvents.test.ts +47 -0
  274. package/Tests/Types/Rum/SessionReplayApiContracts.test.ts +608 -0
  275. package/Tests/Types/Rum/SessionReplayCustomEvents.test.ts +434 -0
  276. package/Tests/Types/Telemetry/InventoryLiveness.test.ts +99 -0
  277. package/Tests/Types/WebsiteRequest.test.ts +285 -3
  278. package/Tests/UI/Components/Charts/ChartBucketIdentity.test.ts +16 -3
  279. package/Tests/UI/Components/Charts/ChartTrailingBucketGap.test.ts +691 -0
  280. package/Tests/UI/Components/ComponentsModal.test.tsx +12 -4
  281. package/Tests/UI/Components/ComponentsModalUsability.test.tsx +518 -0
  282. package/Tests/UI/Components/CustomFields/CustomFieldsDetail.test.tsx +160 -0
  283. package/Tests/UI/Components/CustomFields/CustomFieldsDetailMapping.test.tsx +324 -0
  284. package/Tests/UI/Components/CustomFields/MapFromCustomFieldInput.test.tsx +176 -0
  285. package/Tests/UI/Components/Graphs/DayUptimeGraph.test.tsx +484 -0
  286. package/Tests/UI/Components/HeaderRightRail.test.tsx +157 -0
  287. package/Tests/UI/Components/IconDropdownItem.test.tsx +102 -0
  288. package/Tests/UI/Components/JSONTablePrototypePollution.test.tsx +117 -0
  289. package/Tests/UI/Components/KeyboardShortcutsModal.test.tsx +214 -0
  290. package/Tests/UI/Components/ModelTable/ModelTableWrapContent.test.tsx +561 -0
  291. package/Tests/UI/Components/MonitorGraphs/UptimeBarDayModal.test.tsx +302 -0
  292. package/Tests/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.test.ts +28 -12
  293. package/Tests/UI/Components/ShortcutDialogGuard.test.tsx +74 -0
  294. package/Tests/UI/Components/StatusPage/ResourceGroupSectionAutoExpand.test.tsx +248 -0
  295. package/Tests/UI/Components/TableCellWrapping.test.tsx +625 -0
  296. package/Tests/UI/Components/TableLoadingStates.test.tsx +205 -0
  297. package/Tests/UI/Components/Workflow/NodePlacement.test.ts +148 -0
  298. package/Tests/UI/Components/Workflow/Workflow.test.tsx +981 -0
  299. package/Tests/UI/ConfigBrowserTelemetry.test.ts +70 -0
  300. package/Tests/UI/ReactRouterSingletonBuild.test.ts +133 -0
  301. package/Tests/UI/Rum/ChunkLoader.test.ts +1036 -2
  302. package/Tests/UI/Rum/FidelityNotices.test.ts +187 -0
  303. package/Tests/UI/Rum/InactivityMap.test.ts +341 -0
  304. package/Tests/UI/Rum/PrivacySummaryCard.test.tsx +259 -0
  305. package/Tests/UI/Rum/RecordingHealthCard.test.tsx +855 -0
  306. package/Tests/UI/Rum/RecordingHealthStrip.test.tsx +594 -0
  307. package/Tests/UI/Rum/ReplayCard.test.tsx +451 -0
  308. package/Tests/UI/Rum/ReplayCorrelationPanel.test.tsx +536 -0
  309. package/Tests/UI/Rum/ReplayEngine.test.ts +2503 -0
  310. package/Tests/UI/Rum/ReplayEngineTypes.test.ts +171 -0
  311. package/Tests/UI/Rum/ReplayHeader.test.tsx +719 -0
  312. package/Tests/UI/Rum/ReplayLink.test.tsx +119 -0
  313. package/Tests/UI/Rum/ReplayPinControl.test.tsx +408 -0
  314. package/Tests/UI/Rum/ReplayPlaybackIntent.test.ts +152 -0
  315. package/Tests/UI/Rum/ReplayPlayerChrome.test.tsx +514 -0
  316. package/Tests/UI/Rum/ReplayRail.test.tsx +1296 -0
  317. package/Tests/UI/Rum/ReplayRailDetail.test.tsx +900 -0
  318. package/Tests/UI/Rum/ReplayScrubber.test.tsx +763 -147
  319. package/Tests/UI/Rum/ReplaySignalTypes.test.ts +189 -0
  320. package/Tests/UI/Rum/ReplaySignals.test.ts +1579 -0
  321. package/Tests/UI/Rum/ReplayStage.test.tsx +396 -473
  322. package/Tests/UI/Rum/ReplayStageOverlays.test.tsx +918 -0
  323. package/Tests/UI/Rum/ReplayTimeFormat.test.ts +94 -0
  324. package/Tests/UI/Rum/ReplayTimeline.test.tsx +696 -0
  325. package/Tests/UI/Rum/ReplayUi.test.tsx +559 -0
  326. package/Tests/UI/Rum/SessionReplayEmptyState.test.tsx +499 -0
  327. package/Tests/UI/Rum/SessionReplaySearchBar.test.tsx +346 -0
  328. package/Tests/UI/Rum/SessionReplaySetupGuide.test.tsx +545 -0
  329. package/Tests/UI/Rum/SessionReplayTable.test.tsx +991 -0
  330. package/Tests/UI/Rum/TargetedCapturePanel.test.tsx +254 -0
  331. package/Tests/UI/Telemetry/BrowserExporterIsolation.test.ts +71 -0
  332. package/Tests/UI/Utils/Breadcrumb/fixtures/RealBreadcrumbTrails.ts +5 -0
  333. package/Tests/UI/Utils/Breadcrumb/fixtures/RealRoutePatterns.ts +1 -0
  334. package/Tests/UI/Utils/GlobalKeyboardShortcut.test.ts +344 -0
  335. package/Tests/Utils/API.test.ts +308 -0
  336. package/Tests/Utils/Dashboard/Components/DashboardMonitorListComponent.test.ts +11 -1
  337. package/Tests/Utils/Dashboard/LabelVariable.test.ts +257 -0
  338. package/Tests/Utils/Dashboard/VariableUrlState.test.ts +144 -14
  339. package/Tests/Utils/HTTPResponseBodyReader.test.ts +323 -0
  340. package/Tests/Utils/MetricUnitUtil.test.ts +81 -0
  341. package/Tests/Utils/Monitor/DeviceMacLearningUtil.test.ts +497 -0
  342. package/Tests/Utils/Monitor/MetricValueFormatter.test.ts +546 -0
  343. package/Tests/Utils/Monitor/MonitorTemplateCustomFieldUtil.test.ts +218 -0
  344. package/Tests/Utils/Monitor/NetworkTopologyEndpointAdoption.test.ts +1755 -0
  345. package/Tests/Utils/NetworkAutomation/AutoImportRunChain.test.ts +320 -0
  346. package/Tests/Utils/NetworkDiscovery/DiscoveryScanStatus.test.ts +117 -0
  347. package/Tests/Utils/Rum/ChunkMath.test.ts +83 -0
  348. package/Tests/Utils/Rum/SessionReplayHealthDiagnosis.test.ts +993 -0
  349. package/Tests/Utils/Rum/SessionReplayStringMap.test.ts +245 -0
  350. package/Tests/Utils/StatusPage/ResourceSearch.test.ts +631 -0
  351. package/Tests/Utils/Telemetry/OriginAllowList.test.ts +633 -0
  352. package/Tests/Utils/Uptime/DayUptimeGraphUtil.test.ts +461 -0
  353. package/Tests/Utils/ValueFormatter.test.ts +148 -0
  354. package/Types/BaseDatabase/IncludesAnyOfGroups.ts +77 -0
  355. package/Types/CustomField/CustomFieldMappingCatalog.ts +161 -0
  356. package/Types/CustomField/CustomFieldMappingSourceResource.ts +19 -0
  357. package/Types/CustomField/CustomFieldValueMapping.ts +288 -0
  358. package/Types/Dashboard/DashboardComponents/ComponentArgument.ts +1 -0
  359. package/Types/Dashboard/DashboardComponents/DashboardMonitorListComponent.ts +1 -0
  360. package/Types/Dashboard/DashboardVariable.ts +8 -0
  361. package/Types/Icon/IconProp.ts +1 -0
  362. package/Types/JSON.ts +4 -0
  363. package/Types/JSONFunctions.ts +205 -43
  364. package/Types/Monitor/CephAlertTemplates.ts +157 -195
  365. package/Types/Monitor/DockerAlertTemplates.ts +338 -128
  366. package/Types/Monitor/DockerSwarmAlertTemplates.ts +95 -112
  367. package/Types/Monitor/HostAlertTemplates.ts +302 -130
  368. package/Types/Monitor/IotAlertTemplates.ts +112 -104
  369. package/Types/Monitor/KubernetesAlertTemplates.ts +415 -224
  370. package/Types/Monitor/KubernetesMetricCatalog.ts +23 -19
  371. package/Types/Monitor/PodmanAlertTemplates.ts +116 -163
  372. package/Types/Monitor/ProxmoxAlertTemplates.ts +217 -99
  373. package/Types/Monitor/Recommendation/MonitorRecommendationSeverityMapper.ts +98 -6
  374. package/Types/Monitor/Recommendation/MonitorRecommendationUtil.ts +44 -7
  375. package/Types/Monitor/Recommendation/RecommendationCriteriaBuilder.ts +383 -0
  376. package/Types/Monitor/RumAlertTemplates.ts +46 -7
  377. package/Types/Monitor/SeriesContext/SeriesDebugHints.ts +596 -0
  378. package/Types/Monitor/SeriesContext/SeriesLabelDisplay.ts +554 -0
  379. package/Types/Monitor/ServiceAlertTemplates.ts +98 -11
  380. package/Types/Monitor/SnmpMonitor/NetworkTopology.ts +13 -0
  381. package/Types/Monitor/UptimeHistoryLabels.ts +56 -0
  382. package/Types/NetworkAutomation/RuleRunResult.ts +402 -13
  383. package/Types/NotificationSetting/RoutineEmailEvents.ts +30 -0
  384. package/Types/Rum/SessionReplay.ts +209 -0
  385. package/Types/Rum/SessionReplayApi.ts +722 -0
  386. package/Types/Rum/SessionReplayCaptureTrigger.ts +21 -12
  387. package/Types/Rum/SessionReplayConsentMode.ts +11 -7
  388. package/Types/Rum/SessionReplayCustomEvents.ts +549 -0
  389. package/Types/Rum/SessionReplayHealth.ts +238 -0
  390. package/Types/SerializableObjectDictionary.ts +4 -0
  391. package/Types/Telemetry/InventoryLiveness.ts +56 -0
  392. package/Types/Telemetry/TelemetryIngestSurface.ts +95 -0
  393. package/Types/Telemetry/TelemetryIngestionKeyPolicy.ts +75 -0
  394. package/Types/Telemetry/TelemetryIngestionKeyType.ts +29 -0
  395. package/Types/WebsiteRequest.ts +85 -3
  396. package/UI/Components/CSVFileUpload/CSVFileUpload.tsx +9 -2
  397. package/UI/Components/Charts/Area/AreaChart.tsx +13 -2
  398. package/UI/Components/Charts/Bar/BarChart.tsx +6 -2
  399. package/UI/Components/Charts/Line/LineChart.tsx +13 -2
  400. package/UI/Components/Charts/Types/XAxis/XAxis.ts +29 -0
  401. package/UI/Components/Charts/Utils/DataPoint.ts +22 -3
  402. package/UI/Components/Charts/Utils/TimeAnnotation.ts +76 -9
  403. package/UI/Components/Charts/Utils/XAxis.ts +217 -0
  404. package/UI/Components/CustomFields/CustomFieldsDetail.tsx +189 -46
  405. package/UI/Components/CustomFields/MapFromCustomFieldInput.tsx +216 -0
  406. package/UI/Components/Dashboard/DashboardVariableControl.tsx +285 -0
  407. package/UI/Components/Graphs/DayUptimeGraph.tsx +173 -8
  408. package/UI/Components/Graphs/UptimeBarTooltip.tsx +22 -278
  409. package/UI/Components/Graphs/UptimeDaySummary.tsx +327 -0
  410. package/UI/Components/Header/Header.tsx +25 -9
  411. package/UI/Components/Header/IconDropdown/IconDropdownItem.tsx +10 -1
  412. package/UI/Components/Header/IconDropdown/IconDropdownMenu.tsx +6 -1
  413. package/UI/Components/Header/ProjectPicker/ProjectPicker.tsx +6 -1
  414. package/UI/Components/HeaderAlert/NotificationBell/NotificationBellDropdown.tsx +6 -1
  415. package/UI/Components/Icon/Icon.tsx +11 -0
  416. package/UI/Components/JSONTable/JSONTable.tsx +2 -2
  417. package/UI/Components/KeyboardShortcut/KeyboardShortcutsModal.tsx +125 -0
  418. package/UI/Components/KeyboardShortcut/Screenshots/README.md +19 -0
  419. package/UI/Components/KeyboardShortcut/Screenshots/keyboard-shortcuts-command-palette.png +0 -0
  420. package/UI/Components/KeyboardShortcut/Screenshots/keyboard-shortcuts-dialog-dark.png +0 -0
  421. package/UI/Components/KeyboardShortcut/Screenshots/keyboard-shortcuts-dialog.png +0 -0
  422. package/UI/Components/KeyboardShortcut/Screenshots/keyboard-shortcuts-help-menu.png +0 -0
  423. package/UI/Components/KeyboardShortcut/Screenshots/keyboard-shortcuts-narrow.png +0 -0
  424. package/UI/Components/ModelTable/Column.ts +15 -0
  425. package/UI/Components/Monitor/SeriesDebugCommandsViewer.tsx +64 -0
  426. package/UI/Components/Monitor/SeriesLabelsViewer.tsx +93 -0
  427. package/UI/Components/MonitorGraphs/Uptime.tsx +14 -2
  428. package/UI/Components/MonitorGraphs/UptimeBarDayModal.tsx +63 -10
  429. package/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.ts +44 -0
  430. package/UI/Components/StatusPage/ResourceGroupSection.tsx +40 -0
  431. package/UI/Components/Table/CellClassName.ts +81 -0
  432. package/UI/Components/Table/TableRow.tsx +20 -14
  433. package/UI/Components/Table/TableSkeletonRows.tsx +9 -9
  434. package/UI/Components/Table/Types/Column.ts +36 -0
  435. package/UI/Components/Tooltip/Tooltip.tsx +11 -1
  436. package/UI/Components/Workflow/ComponentsModal.tsx +60 -39
  437. package/UI/Components/Workflow/NodePlacement.ts +57 -0
  438. package/UI/Components/Workflow/Workflow.tsx +47 -18
  439. package/UI/Config.ts +15 -33
  440. package/UI/Utils/GlobalKeyboardShortcut.ts +208 -0
  441. package/UI/Utils/Telemetry/BrowserTelemetryConfig.ts +28 -0
  442. package/UI/Utils/Telemetry/Telemetry.ts +10 -8
  443. package/UI/esbuild-config.js +6 -0
  444. package/Utils/API.ts +129 -3
  445. package/Utils/Dashboard/Components/DashboardMonitorListComponent.ts +12 -1
  446. package/Utils/Dashboard/LabelVariable.ts +152 -0
  447. package/Utils/Dashboard/VariableUrlState.ts +27 -5
  448. package/Utils/HTTPResponseBodyReader.ts +221 -0
  449. package/Utils/MetricUnitUtil.ts +34 -0
  450. package/Utils/Monitor/DeviceMacLearningUtil.ts +177 -0
  451. package/Utils/Monitor/MetricValueFormatter.ts +342 -0
  452. package/Utils/Monitor/MonitorTemplateCustomFieldUtil.ts +124 -0
  453. package/Utils/Monitor/NetworkDeviceMonitorTemplateUtil.ts +7 -2
  454. package/Utils/Monitor/NetworkTopologyUtil.ts +693 -0
  455. package/Utils/NetworkAutomation/AutoImportRunChain.ts +138 -0
  456. package/Utils/NetworkDiscovery/DiscoveryScanStatus.ts +77 -0
  457. package/Utils/Rum/ChunkMath.ts +106 -0
  458. package/Utils/Rum/SessionReplayHealth.ts +732 -0
  459. package/Utils/Rum/SessionReplayStringMap.ts +226 -0
  460. package/Utils/Schema/ModelSchema.ts +1 -0
  461. package/Utils/StatusPage/ResourceSearch.ts +290 -0
  462. package/Utils/Telemetry/OriginAllowList.ts +355 -0
  463. package/Utils/Uptime/DayUptimeGraphUtil.ts +205 -0
  464. package/Utils/ValueFormatter.ts +35 -1
  465. package/build/dist/Models/AnalyticsModels/RumSession.js +102 -19
  466. package/build/dist/Models/AnalyticsModels/RumSession.js.map +1 -1
  467. package/build/dist/Models/AnalyticsModels/RumSessionChunk.js +11 -9
  468. package/build/dist/Models/AnalyticsModels/RumSessionChunk.js.map +1 -1
  469. package/build/dist/Models/DatabaseModels/AlertCustomField.js +79 -3
  470. package/build/dist/Models/DatabaseModels/AlertCustomField.js.map +1 -1
  471. package/build/dist/Models/DatabaseModels/ApiKeyPermission.js +3 -27
  472. package/build/dist/Models/DatabaseModels/ApiKeyPermission.js.map +1 -1
  473. package/build/dist/Models/DatabaseModels/GlobalConfig.js +12 -12
  474. package/build/dist/Models/DatabaseModels/GlobalConfig.js.map +1 -1
  475. package/build/dist/Models/DatabaseModels/IncidentCustomField.js +79 -3
  476. package/build/dist/Models/DatabaseModels/IncidentCustomField.js.map +1 -1
  477. package/build/dist/Models/DatabaseModels/InventoryItem.js +34 -1
  478. package/build/dist/Models/DatabaseModels/InventoryItem.js.map +1 -1
  479. package/build/dist/Models/DatabaseModels/InventoryItemCustomField.js +79 -3
  480. package/build/dist/Models/DatabaseModels/InventoryItemCustomField.js.map +1 -1
  481. package/build/dist/Models/DatabaseModels/MonitorCustomField.js +79 -3
  482. package/build/dist/Models/DatabaseModels/MonitorCustomField.js.map +1 -1
  483. package/build/dist/Models/DatabaseModels/NetworkDevice.js +128 -0
  484. package/build/dist/Models/DatabaseModels/NetworkDevice.js.map +1 -1
  485. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyCustomField.js +79 -3
  486. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyCustomField.js.map +1 -1
  487. package/build/dist/Models/DatabaseModels/RumApplication.js +6 -6
  488. package/build/dist/Models/DatabaseModels/RumApplication.js.map +1 -1
  489. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceCustomField.js +79 -3
  490. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceCustomField.js.map +1 -1
  491. package/build/dist/Models/DatabaseModels/StatusPageCustomField.js +79 -3
  492. package/build/dist/Models/DatabaseModels/StatusPageCustomField.js.map +1 -1
  493. package/build/dist/Models/DatabaseModels/TeamCustomField.js +79 -3
  494. package/build/dist/Models/DatabaseModels/TeamCustomField.js.map +1 -1
  495. package/build/dist/Models/DatabaseModels/TeamMember.js +0 -9
  496. package/build/dist/Models/DatabaseModels/TeamMember.js.map +1 -1
  497. package/build/dist/Models/DatabaseModels/TeamMemberCustomField.js +79 -3
  498. package/build/dist/Models/DatabaseModels/TeamMemberCustomField.js.map +1 -1
  499. package/build/dist/Models/DatabaseModels/TeamPermission.js +3 -24
  500. package/build/dist/Models/DatabaseModels/TeamPermission.js.map +1 -1
  501. package/build/dist/Models/DatabaseModels/TelemetryIngestionKey.js +267 -0
  502. package/build/dist/Models/DatabaseModels/TelemetryIngestionKey.js.map +1 -1
  503. package/build/dist/Models/DatabaseModels/UserTelegram.js +0 -4
  504. package/build/dist/Models/DatabaseModels/UserTelegram.js.map +1 -1
  505. package/build/dist/Server/API/TelemetryAPI.js +769 -109
  506. package/build/dist/Server/API/TelemetryAPI.js.map +1 -1
  507. package/build/dist/Server/API/UserNotificationSettingAPI.js +35 -0
  508. package/build/dist/Server/API/UserNotificationSettingAPI.js.map +1 -0
  509. package/build/dist/Server/API/UserTelegramAPI.js +28 -6
  510. package/build/dist/Server/API/UserTelegramAPI.js.map +1 -1
  511. package/build/dist/Server/EnvironmentConfig.js +73 -14
  512. package/build/dist/Server/EnvironmentConfig.js.map +1 -1
  513. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791300000000-AddTelemetryIngestionKeyType.js +60 -0
  514. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791300000000-AddTelemetryIngestionKeyType.js.map +1 -0
  515. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791400000000-SessionReplayRecordEverySessionByDefault.js +53 -0
  516. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791400000000-SessionReplayRecordEverySessionByDefault.js.map +1 -0
  517. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791500000000-WidenCustomFieldDropdownOptions.js +82 -0
  518. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791500000000-WidenCustomFieldDropdownOptions.js.map +1 -0
  519. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791600000000-AddCustomFieldValueMapping.js +46 -0
  520. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791600000000-AddCustomFieldValueMapping.js.map +1 -0
  521. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791700000000-AddMacAddressToNetworkDevice.js +14 -0
  522. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791700000000-AddMacAddressToNetworkDevice.js.map +1 -0
  523. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +10 -0
  524. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  525. package/build/dist/Server/Infrastructure/QueueWorker.js +19 -7
  526. package/build/dist/Server/Infrastructure/QueueWorker.js.map +1 -1
  527. package/build/dist/Server/Infrastructure/Redis.js +8 -8
  528. package/build/dist/Server/Infrastructure/Redis.js.map +1 -1
  529. package/build/dist/Server/Infrastructure/Semaphore.js +1 -0
  530. package/build/dist/Server/Infrastructure/Semaphore.js.map +1 -1
  531. package/build/dist/Server/Infrastructure/Status.js +10 -4
  532. package/build/dist/Server/Infrastructure/Status.js.map +1 -1
  533. package/build/dist/Server/Middleware/TelemetryIngest.js +315 -8
  534. package/build/dist/Server/Middleware/TelemetryIngest.js.map +1 -1
  535. package/build/dist/Server/Services/AccessTokenService.js +1 -0
  536. package/build/dist/Server/Services/AccessTokenService.js.map +1 -1
  537. package/build/dist/Server/Services/AlertCustomFieldService.js +93 -0
  538. package/build/dist/Server/Services/AlertCustomFieldService.js.map +1 -1
  539. package/build/dist/Server/Services/AlertService.js +34 -0
  540. package/build/dist/Server/Services/AlertService.js.map +1 -1
  541. package/build/dist/Server/Services/ApiKeyPermissionService.js +331 -28
  542. package/build/dist/Server/Services/ApiKeyPermissionService.js.map +1 -1
  543. package/build/dist/Server/Services/CustomFieldMappingService.js +614 -0
  544. package/build/dist/Server/Services/CustomFieldMappingService.js.map +1 -0
  545. package/build/dist/Server/Services/DatabaseService.js +58 -13
  546. package/build/dist/Server/Services/DatabaseService.js.map +1 -1
  547. package/build/dist/Server/Services/GlobalConfigService.js +133 -0
  548. package/build/dist/Server/Services/GlobalConfigService.js.map +1 -1
  549. package/build/dist/Server/Services/IncidentCustomFieldService.js +93 -0
  550. package/build/dist/Server/Services/IncidentCustomFieldService.js.map +1 -1
  551. package/build/dist/Server/Services/IncidentService.js +32 -0
  552. package/build/dist/Server/Services/IncidentService.js.map +1 -1
  553. package/build/dist/Server/Services/InventoryItemService.js +28 -1
  554. package/build/dist/Server/Services/InventoryItemService.js.map +1 -1
  555. package/build/dist/Server/Services/MetricService.js +163 -0
  556. package/build/dist/Server/Services/MetricService.js.map +1 -1
  557. package/build/dist/Server/Services/MonitorService.js +29 -0
  558. package/build/dist/Server/Services/MonitorService.js.map +1 -1
  559. package/build/dist/Server/Services/MonitorTemplateService.js +116 -17
  560. package/build/dist/Server/Services/MonitorTemplateService.js.map +1 -1
  561. package/build/dist/Server/Services/NetworkDeviceAutoImportRuleEngineService.js +349 -64
  562. package/build/dist/Server/Services/NetworkDeviceAutoImportRuleEngineService.js.map +1 -1
  563. package/build/dist/Server/Services/NetworkDeviceDiscoveryScanService.js +65 -0
  564. package/build/dist/Server/Services/NetworkDeviceDiscoveryScanService.js.map +1 -1
  565. package/build/dist/Server/Services/NetworkDeviceService.js +54 -0
  566. package/build/dist/Server/Services/NetworkDeviceService.js.map +1 -1
  567. package/build/dist/Server/Services/ProjectService.js +22 -0
  568. package/build/dist/Server/Services/ProjectService.js.map +1 -1
  569. package/build/dist/Server/Services/RoutineEmailSettingsService.js +69 -0
  570. package/build/dist/Server/Services/RoutineEmailSettingsService.js.map +1 -0
  571. package/build/dist/Server/Services/RumSessionReplayViewService.js +86 -24
  572. package/build/dist/Server/Services/RumSessionReplayViewService.js.map +1 -1
  573. package/build/dist/Server/Services/ScheduledMaintenanceCustomFieldService.js +93 -0
  574. package/build/dist/Server/Services/ScheduledMaintenanceCustomFieldService.js.map +1 -1
  575. package/build/dist/Server/Services/ScheduledMaintenanceService.js +29 -0
  576. package/build/dist/Server/Services/ScheduledMaintenanceService.js.map +1 -1
  577. package/build/dist/Server/Services/TeamMemberService.js +62 -2
  578. package/build/dist/Server/Services/TeamMemberService.js.map +1 -1
  579. package/build/dist/Server/Services/TeamPermissionService.js +166 -3
  580. package/build/dist/Server/Services/TeamPermissionService.js.map +1 -1
  581. package/build/dist/Server/Services/TelemetryIngestionKeyService.js +562 -18
  582. package/build/dist/Server/Services/TelemetryIngestionKeyService.js.map +1 -1
  583. package/build/dist/Server/Services/UserNotificationRuleService.js +60 -25
  584. package/build/dist/Server/Services/UserNotificationRuleService.js.map +1 -1
  585. package/build/dist/Server/Services/UserNotificationSettingService.js +26 -6
  586. package/build/dist/Server/Services/UserNotificationSettingService.js.map +1 -1
  587. package/build/dist/Server/Services/UserTelegramService.js +257 -4
  588. package/build/dist/Server/Services/UserTelegramService.js.map +1 -1
  589. package/build/dist/Server/Types/Database/Permissions/ReadPermission.js +29 -4
  590. package/build/dist/Server/Types/Database/Permissions/ReadPermission.js.map +1 -1
  591. package/build/dist/Server/Types/Database/QueryHelper.js.map +1 -1
  592. package/build/dist/Server/Types/Database/QueryUtil.js +36 -0
  593. package/build/dist/Server/Types/Database/QueryUtil.js.map +1 -1
  594. package/build/dist/Server/Types/Markdown.js +75 -0
  595. package/build/dist/Server/Types/Markdown.js.map +1 -1
  596. package/build/dist/Server/Utils/APIKey/AccessPermission.js +2 -2
  597. package/build/dist/Server/Utils/APIKey/AccessPermission.js.map +1 -1
  598. package/build/dist/Server/Utils/CustomField/CustomFieldDefinitionMappingHooks.js +27 -0
  599. package/build/dist/Server/Utils/CustomField/CustomFieldDefinitionMappingHooks.js.map +1 -0
  600. package/build/dist/Server/Utils/CustomField/CustomFieldMappingRegistry.js +226 -0
  601. package/build/dist/Server/Utils/CustomField/CustomFieldMappingRegistry.js.map +1 -0
  602. package/build/dist/Server/Utils/CustomField/CustomFieldMappingValidator.js +189 -0
  603. package/build/dist/Server/Utils/CustomField/CustomFieldMappingValidator.js.map +1 -0
  604. package/build/dist/Server/Utils/Dashboard/PublicDashboardResourceListPolicy.js +53 -18
  605. package/build/dist/Server/Utils/Dashboard/PublicDashboardResourceListPolicy.js.map +1 -1
  606. package/build/dist/Server/Utils/DataSource/EgressGuard.js +121 -7
  607. package/build/dist/Server/Utils/DataSource/EgressGuard.js.map +1 -1
  608. package/build/dist/Server/Utils/EmailRollup/EmailRollupConstants.js +38 -5
  609. package/build/dist/Server/Utils/EmailRollup/EmailRollupConstants.js.map +1 -1
  610. package/build/dist/Server/Utils/EmailRollup/EmailRollupFlushRunner.js +54 -3
  611. package/build/dist/Server/Utils/EmailRollup/EmailRollupFlushRunner.js.map +1 -1
  612. package/build/dist/Server/Utils/EmailRollup/EmailRollupRenderer.js +2 -2
  613. package/build/dist/Server/Utils/EmailRollup/EmailRollupRenderer.js.map +1 -1
  614. package/build/dist/Server/Utils/FrontendEnvironment.js +33 -0
  615. package/build/dist/Server/Utils/FrontendEnvironment.js.map +1 -0
  616. package/build/dist/Server/Utils/LogRedaction.js +20 -0
  617. package/build/dist/Server/Utils/LogRedaction.js.map +1 -1
  618. package/build/dist/Server/Utils/Logger.js +10 -0
  619. package/build/dist/Server/Utils/Logger.js.map +1 -1
  620. package/build/dist/Server/Utils/Monitor/Criteria/CompareCriteria.js +323 -81
  621. package/build/dist/Server/Utils/Monitor/Criteria/CompareCriteria.js.map +1 -1
  622. package/build/dist/Server/Utils/Monitor/Criteria/IncomingRequestCriteria.js +20 -4
  623. package/build/dist/Server/Utils/Monitor/Criteria/IncomingRequestCriteria.js.map +1 -1
  624. package/build/dist/Server/Utils/Monitor/Criteria/MetricMonitorCriteria.js +29 -5
  625. package/build/dist/Server/Utils/Monitor/Criteria/MetricMonitorCriteria.js.map +1 -1
  626. package/build/dist/Server/Utils/Monitor/MonitorAlert.js +29 -6
  627. package/build/dist/Server/Utils/Monitor/MonitorAlert.js.map +1 -1
  628. package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js +254 -48
  629. package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js.map +1 -1
  630. package/build/dist/Server/Utils/Monitor/MonitorCriteriaExpectationBuilder.js +58 -9
  631. package/build/dist/Server/Utils/Monitor/MonitorCriteriaExpectationBuilder.js.map +1 -1
  632. package/build/dist/Server/Utils/Monitor/MonitorCriteriaMessageBuilder.js +9 -3
  633. package/build/dist/Server/Utils/Monitor/MonitorCriteriaMessageBuilder.js.map +1 -1
  634. package/build/dist/Server/Utils/Monitor/MonitorCriteriaMessageFormatter.js +26 -12
  635. package/build/dist/Server/Utils/Monitor/MonitorCriteriaMessageFormatter.js.map +1 -1
  636. package/build/dist/Server/Utils/Monitor/MonitorCriteriaObservationBuilder.js +74 -33
  637. package/build/dist/Server/Utils/Monitor/MonitorCriteriaObservationBuilder.js.map +1 -1
  638. package/build/dist/Server/Utils/Monitor/MonitorIncident.js +22 -6
  639. package/build/dist/Server/Utils/Monitor/MonitorIncident.js.map +1 -1
  640. package/build/dist/Server/Utils/Monitor/MonitorTemplateUtil.js +22 -0
  641. package/build/dist/Server/Utils/Monitor/MonitorTemplateUtil.js.map +1 -1
  642. package/build/dist/Server/Utils/Monitor/NetworkDeviceMacLearningUtil.js +114 -0
  643. package/build/dist/Server/Utils/Monitor/NetworkDeviceMacLearningUtil.js.map +1 -0
  644. package/build/dist/Server/Utils/Monitor/NetworkInventoryUtil.js +25 -0
  645. package/build/dist/Server/Utils/Monitor/NetworkInventoryUtil.js.map +1 -1
  646. package/build/dist/Server/Utils/Monitor/SeriesContextEnricher.js +237 -0
  647. package/build/dist/Server/Utils/Monitor/SeriesContextEnricher.js.map +1 -0
  648. package/build/dist/Server/Utils/SSRFProtection.js +136 -9
  649. package/build/dist/Server/Utils/SSRFProtection.js.map +1 -1
  650. package/build/dist/Server/Utils/SessionReplay/SessionReplayGateCache.js +174 -89
  651. package/build/dist/Server/Utils/SessionReplay/SessionReplayGateCache.js.map +1 -1
  652. package/build/dist/Server/Utils/SessionReplay/SessionReplayHealthCounters.js +223 -0
  653. package/build/dist/Server/Utils/SessionReplay/SessionReplayHealthCounters.js.map +1 -0
  654. package/build/dist/Server/Utils/SessionReplay/SessionReplayReadService.js +945 -164
  655. package/build/dist/Server/Utils/SessionReplay/SessionReplayReadService.js.map +1 -1
  656. package/build/dist/Server/Utils/StartServer.js +3 -14
  657. package/build/dist/Server/Utils/StartServer.js.map +1 -1
  658. package/build/dist/Server/Utils/TelegramVerificationToken.js +129 -0
  659. package/build/dist/Server/Utils/TelegramVerificationToken.js.map +1 -0
  660. package/build/dist/Server/Utils/Telemetry/EntityRegistry.js +9 -1
  661. package/build/dist/Server/Utils/Telemetry/EntityRegistry.js.map +1 -1
  662. package/build/dist/Server/Utils/Telemetry/PinServiceName.js +163 -0
  663. package/build/dist/Server/Utils/Telemetry/PinServiceName.js.map +1 -0
  664. package/build/dist/Server/Utils/Telemetry/TelemetryEntity.js +70 -13
  665. package/build/dist/Server/Utils/Telemetry/TelemetryEntity.js.map +1 -1
  666. package/build/dist/Server/Utils/Telemetry/TelemetryFanInWriter.js +28 -15
  667. package/build/dist/Server/Utils/Telemetry/TelemetryFanInWriter.js.map +1 -1
  668. package/build/dist/Server/Utils/Telemetry/TelemetryIngestionKeyGuard.js +64 -0
  669. package/build/dist/Server/Utils/Telemetry/TelemetryIngestionKeyGuard.js.map +1 -0
  670. package/build/dist/Server/Utils/Telemetry/TelemetryIngestionKeyRateLimiter.js +171 -0
  671. package/build/dist/Server/Utils/Telemetry/TelemetryIngestionKeyRateLimiter.js.map +1 -0
  672. package/build/dist/Server/Utils/VM/VMAPI.js.map +1 -1
  673. package/build/dist/Server/Utils/VM/VMRunner.js +780 -69
  674. package/build/dist/Server/Utils/VM/VMRunner.js.map +1 -1
  675. package/build/dist/Types/BaseDatabase/IncludesAnyOfGroups.js +54 -0
  676. package/build/dist/Types/BaseDatabase/IncludesAnyOfGroups.js.map +1 -0
  677. package/build/dist/Types/CustomField/CustomFieldMappingCatalog.js +60 -0
  678. package/build/dist/Types/CustomField/CustomFieldMappingCatalog.js.map +1 -0
  679. package/build/dist/Types/CustomField/CustomFieldMappingSourceResource.js +20 -0
  680. package/build/dist/Types/CustomField/CustomFieldMappingSourceResource.js.map +1 -0
  681. package/build/dist/Types/CustomField/CustomFieldValueMapping.js +141 -0
  682. package/build/dist/Types/CustomField/CustomFieldValueMapping.js.map +1 -0
  683. package/build/dist/Types/Dashboard/DashboardComponents/ComponentArgument.js +1 -0
  684. package/build/dist/Types/Dashboard/DashboardComponents/ComponentArgument.js.map +1 -1
  685. package/build/dist/Types/Dashboard/DashboardVariable.js +1 -0
  686. package/build/dist/Types/Dashboard/DashboardVariable.js.map +1 -1
  687. package/build/dist/Types/Icon/IconProp.js +1 -0
  688. package/build/dist/Types/Icon/IconProp.js.map +1 -1
  689. package/build/dist/Types/JSON.js +1 -0
  690. package/build/dist/Types/JSON.js.map +1 -1
  691. package/build/dist/Types/JSONFunctions.js +131 -37
  692. package/build/dist/Types/JSONFunctions.js.map +1 -1
  693. package/build/dist/Types/Monitor/CephAlertTemplates.js +130 -171
  694. package/build/dist/Types/Monitor/CephAlertTemplates.js.map +1 -1
  695. package/build/dist/Types/Monitor/DockerAlertTemplates.js +286 -121
  696. package/build/dist/Types/Monitor/DockerAlertTemplates.js.map +1 -1
  697. package/build/dist/Types/Monitor/DockerSwarmAlertTemplates.js +84 -105
  698. package/build/dist/Types/Monitor/DockerSwarmAlertTemplates.js.map +1 -1
  699. package/build/dist/Types/Monitor/HostAlertTemplates.js +250 -122
  700. package/build/dist/Types/Monitor/HostAlertTemplates.js.map +1 -1
  701. package/build/dist/Types/Monitor/IotAlertTemplates.js +81 -81
  702. package/build/dist/Types/Monitor/IotAlertTemplates.js.map +1 -1
  703. package/build/dist/Types/Monitor/KubernetesAlertTemplates.js +375 -215
  704. package/build/dist/Types/Monitor/KubernetesAlertTemplates.js.map +1 -1
  705. package/build/dist/Types/Monitor/KubernetesMetricCatalog.js +19 -19
  706. package/build/dist/Types/Monitor/KubernetesMetricCatalog.js.map +1 -1
  707. package/build/dist/Types/Monitor/PodmanAlertTemplates.js +104 -153
  708. package/build/dist/Types/Monitor/PodmanAlertTemplates.js.map +1 -1
  709. package/build/dist/Types/Monitor/ProxmoxAlertTemplates.js +156 -91
  710. package/build/dist/Types/Monitor/ProxmoxAlertTemplates.js.map +1 -1
  711. package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationSeverityMapper.js +67 -6
  712. package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationSeverityMapper.js.map +1 -1
  713. package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationUtil.js +38 -7
  714. package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationUtil.js.map +1 -1
  715. package/build/dist/Types/Monitor/Recommendation/RecommendationCriteriaBuilder.js +261 -0
  716. package/build/dist/Types/Monitor/Recommendation/RecommendationCriteriaBuilder.js.map +1 -0
  717. package/build/dist/Types/Monitor/RumAlertTemplates.js +46 -7
  718. package/build/dist/Types/Monitor/RumAlertTemplates.js.map +1 -1
  719. package/build/dist/Types/Monitor/SeriesContext/SeriesDebugHints.js +422 -0
  720. package/build/dist/Types/Monitor/SeriesContext/SeriesDebugHints.js.map +1 -0
  721. package/build/dist/Types/Monitor/SeriesContext/SeriesLabelDisplay.js +441 -0
  722. package/build/dist/Types/Monitor/SeriesContext/SeriesLabelDisplay.js.map +1 -0
  723. package/build/dist/Types/Monitor/ServiceAlertTemplates.js +79 -15
  724. package/build/dist/Types/Monitor/ServiceAlertTemplates.js.map +1 -1
  725. package/build/dist/Types/Monitor/UptimeHistoryLabels.js +17 -0
  726. package/build/dist/Types/Monitor/UptimeHistoryLabels.js.map +1 -0
  727. package/build/dist/Types/NetworkAutomation/RuleRunResult.js +291 -6
  728. package/build/dist/Types/NetworkAutomation/RuleRunResult.js.map +1 -1
  729. package/build/dist/Types/NotificationSetting/RoutineEmailEvents.js +29 -0
  730. package/build/dist/Types/NotificationSetting/RoutineEmailEvents.js.map +1 -0
  731. package/build/dist/Types/Rum/SessionReplay.js +117 -0
  732. package/build/dist/Types/Rum/SessionReplay.js.map +1 -1
  733. package/build/dist/Types/Rum/SessionReplayApi.js +181 -0
  734. package/build/dist/Types/Rum/SessionReplayApi.js.map +1 -0
  735. package/build/dist/Types/Rum/SessionReplayCaptureTrigger.js +21 -12
  736. package/build/dist/Types/Rum/SessionReplayCaptureTrigger.js.map +1 -1
  737. package/build/dist/Types/Rum/SessionReplayConsentMode.js +11 -7
  738. package/build/dist/Types/Rum/SessionReplayConsentMode.js.map +1 -1
  739. package/build/dist/Types/Rum/SessionReplayCustomEvents.js +172 -0
  740. package/build/dist/Types/Rum/SessionReplayCustomEvents.js.map +1 -0
  741. package/build/dist/Types/Rum/SessionReplayHealth.js +37 -0
  742. package/build/dist/Types/Rum/SessionReplayHealth.js.map +1 -0
  743. package/build/dist/Types/SerializableObjectDictionary.js +4 -0
  744. package/build/dist/Types/SerializableObjectDictionary.js.map +1 -1
  745. package/build/dist/Types/Telemetry/InventoryLiveness.js +37 -0
  746. package/build/dist/Types/Telemetry/InventoryLiveness.js.map +1 -0
  747. package/build/dist/Types/Telemetry/TelemetryIngestSurface.js +85 -0
  748. package/build/dist/Types/Telemetry/TelemetryIngestSurface.js.map +1 -0
  749. package/build/dist/Types/Telemetry/TelemetryIngestionKeyPolicy.js +15 -0
  750. package/build/dist/Types/Telemetry/TelemetryIngestionKeyPolicy.js.map +1 -0
  751. package/build/dist/Types/Telemetry/TelemetryIngestionKeyType.js +30 -0
  752. package/build/dist/Types/Telemetry/TelemetryIngestionKeyType.js.map +1 -0
  753. package/build/dist/Types/WebsiteRequest.js +55 -3
  754. package/build/dist/Types/WebsiteRequest.js.map +1 -1
  755. package/build/dist/UI/Components/CSVFileUpload/CSVFileUpload.js +7 -0
  756. package/build/dist/UI/Components/CSVFileUpload/CSVFileUpload.js.map +1 -1
  757. package/build/dist/UI/Components/Charts/Area/AreaChart.js +13 -2
  758. package/build/dist/UI/Components/Charts/Area/AreaChart.js.map +1 -1
  759. package/build/dist/UI/Components/Charts/Bar/BarChart.js +6 -2
  760. package/build/dist/UI/Components/Charts/Bar/BarChart.js.map +1 -1
  761. package/build/dist/UI/Components/Charts/Line/LineChart.js +13 -2
  762. package/build/dist/UI/Components/Charts/Line/LineChart.js.map +1 -1
  763. package/build/dist/UI/Components/Charts/Types/XAxis/XAxis.js.map +1 -1
  764. package/build/dist/UI/Components/Charts/Utils/DataPoint.js +15 -3
  765. package/build/dist/UI/Components/Charts/Utils/DataPoint.js.map +1 -1
  766. package/build/dist/UI/Components/Charts/Utils/TimeAnnotation.js +40 -9
  767. package/build/dist/UI/Components/Charts/Utils/TimeAnnotation.js.map +1 -1
  768. package/build/dist/UI/Components/Charts/Utils/XAxis.js +186 -0
  769. package/build/dist/UI/Components/Charts/Utils/XAxis.js.map +1 -1
  770. package/build/dist/UI/Components/CustomFields/CustomFieldsDetail.js +89 -8
  771. package/build/dist/UI/Components/CustomFields/CustomFieldsDetail.js.map +1 -1
  772. package/build/dist/UI/Components/CustomFields/MapFromCustomFieldInput.js +118 -0
  773. package/build/dist/UI/Components/CustomFields/MapFromCustomFieldInput.js.map +1 -0
  774. package/build/dist/UI/Components/Dashboard/DashboardVariableControl.js +137 -0
  775. package/build/dist/UI/Components/Dashboard/DashboardVariableControl.js.map +1 -0
  776. package/build/dist/UI/Components/Graphs/DayUptimeGraph.js +112 -7
  777. package/build/dist/UI/Components/Graphs/DayUptimeGraph.js.map +1 -1
  778. package/build/dist/UI/Components/Graphs/UptimeBarTooltip.js +5 -162
  779. package/build/dist/UI/Components/Graphs/UptimeBarTooltip.js.map +1 -1
  780. package/build/dist/UI/Components/Graphs/UptimeDaySummary.js +181 -0
  781. package/build/dist/UI/Components/Graphs/UptimeDaySummary.js.map +1 -0
  782. package/build/dist/UI/Components/Header/Header.js +2 -3
  783. package/build/dist/UI/Components/Header/Header.js.map +1 -1
  784. package/build/dist/UI/Components/Header/IconDropdown/IconDropdownItem.js +2 -1
  785. package/build/dist/UI/Components/Header/IconDropdown/IconDropdownItem.js.map +1 -1
  786. package/build/dist/UI/Components/Header/IconDropdown/IconDropdownMenu.js +7 -1
  787. package/build/dist/UI/Components/Header/IconDropdown/IconDropdownMenu.js.map +1 -1
  788. package/build/dist/UI/Components/Header/ProjectPicker/ProjectPicker.js +7 -1
  789. package/build/dist/UI/Components/Header/ProjectPicker/ProjectPicker.js.map +1 -1
  790. package/build/dist/UI/Components/HeaderAlert/NotificationBell/NotificationBellDropdown.js +7 -1
  791. package/build/dist/UI/Components/HeaderAlert/NotificationBell/NotificationBellDropdown.js.map +1 -1
  792. package/build/dist/UI/Components/Icon/Icon.js +5 -0
  793. package/build/dist/UI/Components/Icon/Icon.js.map +1 -1
  794. package/build/dist/UI/Components/JSONTable/JSONTable.js +2 -2
  795. package/build/dist/UI/Components/JSONTable/JSONTable.js.map +1 -1
  796. package/build/dist/UI/Components/KeyboardShortcut/KeyboardShortcutsModal.js +35 -0
  797. package/build/dist/UI/Components/KeyboardShortcut/KeyboardShortcutsModal.js.map +1 -0
  798. package/build/dist/UI/Components/Monitor/SeriesDebugCommandsViewer.js +34 -0
  799. package/build/dist/UI/Components/Monitor/SeriesDebugCommandsViewer.js.map +1 -0
  800. package/build/dist/UI/Components/Monitor/SeriesLabelsViewer.js +49 -0
  801. package/build/dist/UI/Components/Monitor/SeriesLabelsViewer.js.map +1 -0
  802. package/build/dist/UI/Components/MonitorGraphs/Uptime.js +1 -1
  803. package/build/dist/UI/Components/MonitorGraphs/Uptime.js.map +1 -1
  804. package/build/dist/UI/Components/MonitorGraphs/UptimeBarDayModal.js +32 -6
  805. package/build/dist/UI/Components/MonitorGraphs/UptimeBarDayModal.js.map +1 -1
  806. package/build/dist/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.js +38 -0
  807. package/build/dist/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.js.map +1 -1
  808. package/build/dist/UI/Components/StatusPage/ResourceGroupSection.js +22 -1
  809. package/build/dist/UI/Components/StatusPage/ResourceGroupSection.js.map +1 -1
  810. package/build/dist/UI/Components/Table/CellClassName.js +55 -0
  811. package/build/dist/UI/Components/Table/CellClassName.js.map +1 -0
  812. package/build/dist/UI/Components/Table/TableRow.js +16 -13
  813. package/build/dist/UI/Components/Table/TableRow.js.map +1 -1
  814. package/build/dist/UI/Components/Table/TableSkeletonRows.js +9 -8
  815. package/build/dist/UI/Components/Table/TableSkeletonRows.js.map +1 -1
  816. package/build/dist/UI/Components/Tooltip/Tooltip.js +25 -1
  817. package/build/dist/UI/Components/Tooltip/Tooltip.js.map +1 -1
  818. package/build/dist/UI/Components/Workflow/ComponentsModal.js +47 -30
  819. package/build/dist/UI/Components/Workflow/ComponentsModal.js.map +1 -1
  820. package/build/dist/UI/Components/Workflow/NodePlacement.js +37 -0
  821. package/build/dist/UI/Components/Workflow/NodePlacement.js.map +1 -0
  822. package/build/dist/UI/Components/Workflow/Workflow.js +35 -18
  823. package/build/dist/UI/Components/Workflow/Workflow.js.map +1 -1
  824. package/build/dist/UI/Config.js +10 -20
  825. package/build/dist/UI/Config.js.map +1 -1
  826. package/build/dist/UI/Utils/GlobalKeyboardShortcut.js +138 -0
  827. package/build/dist/UI/Utils/GlobalKeyboardShortcut.js.map +1 -0
  828. package/build/dist/UI/Utils/Telemetry/BrowserTelemetryConfig.js +14 -0
  829. package/build/dist/UI/Utils/Telemetry/BrowserTelemetryConfig.js.map +1 -0
  830. package/build/dist/UI/Utils/Telemetry/Telemetry.js +7 -5
  831. package/build/dist/UI/Utils/Telemetry/Telemetry.js.map +1 -1
  832. package/build/dist/Utils/API.js +67 -5
  833. package/build/dist/Utils/API.js.map +1 -1
  834. package/build/dist/Utils/Dashboard/Components/DashboardMonitorListComponent.js +9 -1
  835. package/build/dist/Utils/Dashboard/Components/DashboardMonitorListComponent.js.map +1 -1
  836. package/build/dist/Utils/Dashboard/LabelVariable.js +96 -0
  837. package/build/dist/Utils/Dashboard/LabelVariable.js.map +1 -0
  838. package/build/dist/Utils/Dashboard/VariableUrlState.js +19 -4
  839. package/build/dist/Utils/Dashboard/VariableUrlState.js.map +1 -1
  840. package/build/dist/Utils/HTTPResponseBodyReader.js +157 -0
  841. package/build/dist/Utils/HTTPResponseBodyReader.js.map +1 -0
  842. package/build/dist/Utils/MetricUnitUtil.js +26 -0
  843. package/build/dist/Utils/MetricUnitUtil.js.map +1 -1
  844. package/build/dist/Utils/Monitor/DeviceMacLearningUtil.js +112 -0
  845. package/build/dist/Utils/Monitor/DeviceMacLearningUtil.js.map +1 -0
  846. package/build/dist/Utils/Monitor/MetricValueFormatter.js +276 -0
  847. package/build/dist/Utils/Monitor/MetricValueFormatter.js.map +1 -0
  848. package/build/dist/Utils/Monitor/MonitorTemplateCustomFieldUtil.js +101 -0
  849. package/build/dist/Utils/Monitor/MonitorTemplateCustomFieldUtil.js.map +1 -0
  850. package/build/dist/Utils/Monitor/NetworkDeviceMonitorTemplateUtil.js +7 -2
  851. package/build/dist/Utils/Monitor/NetworkDeviceMonitorTemplateUtil.js.map +1 -1
  852. package/build/dist/Utils/Monitor/NetworkTopologyUtil.js +484 -0
  853. package/build/dist/Utils/Monitor/NetworkTopologyUtil.js.map +1 -1
  854. package/build/dist/Utils/NetworkAutomation/AutoImportRunChain.js +59 -0
  855. package/build/dist/Utils/NetworkAutomation/AutoImportRunChain.js.map +1 -0
  856. package/build/dist/Utils/NetworkDiscovery/DiscoveryScanStatus.js +69 -0
  857. package/build/dist/Utils/NetworkDiscovery/DiscoveryScanStatus.js.map +1 -0
  858. package/build/dist/Utils/Rum/ChunkMath.js +76 -0
  859. package/build/dist/Utils/Rum/ChunkMath.js.map +1 -1
  860. package/build/dist/Utils/Rum/SessionReplayHealth.js +534 -0
  861. package/build/dist/Utils/Rum/SessionReplayHealth.js.map +1 -0
  862. package/build/dist/Utils/Rum/SessionReplayStringMap.js +165 -0
  863. package/build/dist/Utils/Rum/SessionReplayStringMap.js.map +1 -0
  864. package/build/dist/Utils/Schema/ModelSchema.js +1 -0
  865. package/build/dist/Utils/Schema/ModelSchema.js.map +1 -1
  866. package/build/dist/Utils/StatusPage/ResourceSearch.js +200 -0
  867. package/build/dist/Utils/StatusPage/ResourceSearch.js.map +1 -0
  868. package/build/dist/Utils/Telemetry/OriginAllowList.js +299 -0
  869. package/build/dist/Utils/Telemetry/OriginAllowList.js.map +1 -0
  870. package/build/dist/Utils/Uptime/DayUptimeGraphUtil.js +147 -0
  871. package/build/dist/Utils/Uptime/DayUptimeGraphUtil.js.map +1 -0
  872. package/build/dist/Utils/ValueFormatter.js +32 -1
  873. package/build/dist/Utils/ValueFormatter.js.map +1 -1
  874. package/jest.config.json +2 -0
  875. package/package.json +1 -1
  876. package/test-setup.sh +9 -9
  877. package/tsconfig.json +51 -11
@@ -1,11 +1,36 @@
1
1
  import ObjectID from "../ObjectID";
2
2
  import MonitorStep from "./MonitorStep";
3
3
  import MonitorCriteria from "./MonitorCriteria";
4
- import MonitorCriteriaInstance from "./MonitorCriteriaInstance";
5
- import FilterCondition from "../Filter/FilterCondition";
6
- import { CheckOn, FilterType, EvaluateOverTimeType } from "./CriteriaFilter";
4
+ import { buildHealthyCriteriaInstance, buildUnhealthyCriteriaInstance, } from "./Recommendation/RecommendationCriteriaBuilder";
5
+ import { FilterType, EvaluateOverTimeType } from "./CriteriaFilter";
7
6
  import RollingTime from "../RollingTime/RollingTime";
8
7
  import MetricsAggregationType from "../Metrics/MetricsAggregationType";
8
+ /*
9
+ * What an incident/alert title says after the condition.
10
+ *
11
+ * Titles used to end in `- ${args.monitorName}`, and for a monitor created
12
+ * from the Recommendations page that name is ALREADY
13
+ * "<resource> - <template name>"
14
+ * (MonitorRecommendationUtil.getMonitorName), so the rendered title stated
15
+ * the same fact twice:
16
+ *
17
+ * "[Docker] High CPU Usage (>80%) - docker-host-01 - High Container CPU Usage"
18
+ *
19
+ * SeriesContextEnricher then appends the container identity on top of that,
20
+ * which pushes the one thing that differs between two alerts — WHICH
21
+ * container — off the end of a phone notification.
22
+ *
23
+ * The host is the half worth keeping, and it is the half the alert email
24
+ * never renders otherwise (the email shows the alert title, the affected
25
+ * SERIES, severity, root cause and description — never the monitor's own
26
+ * name), so name it directly. Guarded because the in-form template picker
27
+ * can build a step before a host is chosen (DockerMonitorStepForm passes
28
+ * `hostIdentifier || ""`), and a title ending in a bare dash reads like a
29
+ * bug.
30
+ */
31
+ function dockerTitleSuffix(args) {
32
+ return args.hostIdentifier ? ` - ${args.hostIdentifier}` : "";
33
+ }
9
34
  /*
10
35
  * Filter contract: the Docker agent stamps container identity as OTLP
11
36
  * RESOURCE attributes, so ClickHouse stores them `resource.`-prefixed:
@@ -17,9 +42,16 @@ import MetricsAggregationType from "../Metrics/MetricsAggregationType";
17
42
  * independently — one incident per container instead of one incident for
18
43
  * the whole host, where the busiest container silences every other one.
19
44
  *
20
- * NOTE: this is `resource.`-prefixed, unlike Docker Swarm, whose
21
- * docker_stats receiver keeps container identity in DATAPOINT labels
22
- * (plain `container.name`).
45
+ * The Docker SWARM agent runs the SAME docker_stats receiver with no
46
+ * attribute-moving transform (DockerSwarmAgent/otel-collector-config.yaml:
47
+ * receivers `[docker_stats]`, processors `[memory_limiter, resource,
48
+ * batch]`, where `resource` only upserts `docker.swarm.cluster.name` and
49
+ * `oneuptime.agent.version`), so Swarm container identity is stored
50
+ * `resource.`-prefixed too. DockerSwarmAlertTemplates.ts groups by the bare
51
+ * `container.name`; that key matches no stored attribute, and
52
+ * aggregatePerSeriesFromRawMetrics labels a missing key "" — collapsing
53
+ * every Swarm container into ONE series with an empty label. Do not copy
54
+ * that spelling.
23
55
  */
24
56
  export function buildDockerMonitorStep(args) {
25
57
  const monitorStep = new MonitorStep();
@@ -58,79 +90,10 @@ export function buildDockerMonitorStep(args) {
58
90
  return monitorStep;
59
91
  }
60
92
  export function buildDockerOfflineCriteriaInstance(args) {
61
- const instance = new MonitorCriteriaInstance();
62
- const incidentTitle = args.incidentTitle || `${args.monitorName} - Alert Triggered`;
63
- const incidentDescription = args.incidentDescription ||
64
- `${args.monitorName} has triggered an alert condition. See root cause for detailed Docker container information.`;
65
- instance.data = {
66
- id: ObjectID.generate().toString(),
67
- monitorStatusId: args.offlineMonitorStatusId,
68
- filterCondition: FilterCondition.Any,
69
- filters: [
70
- {
71
- checkOn: CheckOn.MetricValue,
72
- filterType: args.filterType,
73
- metricMonitorOptions: {
74
- metricAggregationType: EvaluateOverTimeType.AnyValue,
75
- metricAlias: args.metricAlias,
76
- },
77
- value: args.value,
78
- },
79
- ],
80
- incidents: [
81
- {
82
- title: incidentTitle,
83
- description: incidentDescription,
84
- incidentSeverityId: args.incidentSeverityId,
85
- autoResolveIncident: true,
86
- id: ObjectID.generate().toString(),
87
- onCallPolicyIds: [],
88
- },
89
- ],
90
- alerts: [
91
- {
92
- title: incidentTitle,
93
- description: incidentDescription,
94
- alertSeverityId: args.alertSeverityId,
95
- autoResolveAlert: true,
96
- id: ObjectID.generate().toString(),
97
- onCallPolicyIds: [],
98
- },
99
- ],
100
- changeMonitorStatus: true,
101
- createIncidents: true,
102
- createAlerts: true,
103
- name: args.criteriaName || `${args.monitorName} - Unhealthy`,
104
- description: args.criteriaDescription || `Criteria for detecting unhealthy state.`,
105
- };
106
- return instance;
93
+ return buildUnhealthyCriteriaInstance(Object.assign(Object.assign({}, args), { resourceNoun: "container" }));
107
94
  }
108
95
  export function buildDockerOnlineCriteriaInstance(args) {
109
- const instance = new MonitorCriteriaInstance();
110
- instance.data = {
111
- id: ObjectID.generate().toString(),
112
- monitorStatusId: args.onlineMonitorStatusId,
113
- filterCondition: FilterCondition.Any,
114
- filters: [
115
- {
116
- checkOn: CheckOn.MetricValue,
117
- filterType: args.filterType,
118
- metricMonitorOptions: {
119
- metricAggregationType: EvaluateOverTimeType.AnyValue,
120
- metricAlias: args.metricAlias,
121
- },
122
- value: args.value,
123
- },
124
- ],
125
- incidents: [],
126
- alerts: [],
127
- changeMonitorStatus: true,
128
- createIncidents: false,
129
- createAlerts: false,
130
- name: "Healthy",
131
- description: "Criteria for healthy state.",
132
- };
133
- return instance;
96
+ return buildHealthyCriteriaInstance(args);
134
97
  }
135
98
  export function buildDockerMonitorConfig(args) {
136
99
  return {
@@ -161,11 +124,125 @@ export function buildDockerMonitorConfig(args) {
161
124
  rollingTime: args.rollingTime,
162
125
  };
163
126
  }
127
+ /*
128
+ * Two queries over the SAME cumulative counter, differenced per bucket.
129
+ *
130
+ * Some Docker signals are monotonic LIFETIME counters, not levels.
131
+ * `container.cpu.throttling_data.throttled_time` is the total nanoseconds
132
+ * the cgroup has ever been throttled; `container.restarts` is Docker's
133
+ * lifetime RestartCount. Thresholding either one directly has two failure
134
+ * modes, and BOTH shipped:
135
+ *
136
+ * - it fires on history. A container throttled once an hour ago, or that
137
+ * crash-looped last week, still reports a non-zero lifetime total
138
+ * forever — so "> 0" / "> 5" is true for essentially every container
139
+ * that has ever had a bad day. Sustained evaluation makes this worse,
140
+ * not better: every per-minute bucket of a lifetime counter breaches.
141
+ * - it can never recover. A monotonic counter cannot come back down, so
142
+ * the complementary healthy comparison ("= 0", "<= 4.5") is unreachable
143
+ * by construction. The alert stays open until a human closes it, and
144
+ * the next evaluation reopens it.
145
+ *
146
+ * The alerting path has no rate operator. `transformAsRate` on
147
+ * MetricQueryConfigData is CHART-only (MetricCharts.tsx is its only reader;
148
+ * monitorDocker never looks at it), and `transformValue` is a function, so
149
+ * it cannot survive the JSON round-trip a monitor step takes through
150
+ * Postgres. Nothing between ingest and alerting differences a cumulative
151
+ * OTLP sum either — OtelMetricsIngestService only RECORDS
152
+ * `aggregationTemporality`/`isMonotonic` so the browser can suggest a rate
153
+ * view. So the delta has to be built from what the worker does honour: two
154
+ * queries over the same metric, one Max and one Min, plus a formula
155
+ * subtracting them. `aggregatePerSeriesFromRawMetrics` buckets rows per
156
+ * (series, minute) using EACH query's own aggregation, so `max - min` is
157
+ * the counter's increase WITHIN each minute, and the criteria's
158
+ * `EvaluateOverTimeType.Sum` totals those increases across the window.
159
+ *
160
+ * READ THE THRESHOLD AGAINST THE AGENT'S SCRAPE INTERVAL. Two consequences:
161
+ *
162
+ * 1. The delta only sees growth BETWEEN samples inside one bucket. The
163
+ * shipped agent scrapes every 30s
164
+ * (DockerAgent/otel-collector-config.yaml), giving exactly two samples
165
+ * per one-minute bucket, so roughly HALF the window's growth is
166
+ * counted. That is not a rounding error — every threshold below is
167
+ * effectively "about twice this much real activity". It only ever
168
+ * UNDERCOUNTS, so ordinary data cannot manufacture a breach. Do not
169
+ * raise a threshold to "compensate"; it is already compensated for.
170
+ * 2. At a scrape interval of 60s or slower each bucket holds a single
171
+ * sample, `max - min` is identically 0, and every template built on
172
+ * this helper stops alerting entirely, silently. Anyone raising
173
+ * `collection_interval` past 30s has to revisit these.
174
+ *
175
+ * It CAN spike on a counter RESET. A container restart recreates the
176
+ * cgroup, so a bucket straddling the restart sees [large, small] and
177
+ * reports the whole pre-restart lifetime total as one minute of growth — a
178
+ * spurious alert that clears itself once that minute leaves the rolling
179
+ * window. Prometheus-style reset detection would need consecutive raw
180
+ * samples the worker never exposes, so this is accepted rather than fixed.
181
+ * It is bounded, unlike the permanent alert it replaces.
182
+ *
183
+ * If the formula fails to evaluate, appendFormulaResults pushes an empty
184
+ * result and NEITHER criteria fires (NoDataPolicy.Ignore): the monitor
185
+ * holds its previous status rather than flipping.
186
+ */
187
+ export function buildDockerDeltaMonitorConfig(args) {
188
+ const buildQueryConfig = (alias, aggregationType) => {
189
+ return {
190
+ metricAliasData: {
191
+ metricVariable: alias,
192
+ title: alias,
193
+ description: alias,
194
+ legend: alias,
195
+ // Unset so MetricResultUnitConverter passes the raw value through.
196
+ legendUnit: undefined,
197
+ },
198
+ metricQueryData: Object.assign({ filterData: {
199
+ metricName: args.metricName,
200
+ attributes: {},
201
+ aggegationType: aggregationType,
202
+ aggregateBy: {},
203
+ } }, (args.groupByAttributeKey
204
+ ? { groupByAttributeKeys: [args.groupByAttributeKey] }
205
+ : {})),
206
+ };
207
+ };
208
+ const expression = args.scaleDivisor
209
+ ? `(${args.maxAlias} - ${args.minAlias}) / ${args.scaleDivisor}`
210
+ : `${args.maxAlias} - ${args.minAlias}`;
211
+ return {
212
+ hostIdentifier: args.hostIdentifier,
213
+ containerFilters: {},
214
+ metricViewConfig: {
215
+ /*
216
+ * The Max query is FIRST so `queryConfigs[0]` still describes the
217
+ * underlying metric, the way it does for a single-query template.
218
+ */
219
+ queryConfigs: [
220
+ buildQueryConfig(args.maxAlias, MetricsAggregationType.Max),
221
+ buildQueryConfig(args.minAlias, MetricsAggregationType.Min),
222
+ ],
223
+ formulaConfigs: [
224
+ {
225
+ metricAliasData: {
226
+ metricVariable: args.resultAlias,
227
+ title: args.resultLegend,
228
+ description: args.resultLegend,
229
+ legend: args.resultLegend,
230
+ legendUnit: args.resultLegendUnit,
231
+ },
232
+ metricFormulaData: {
233
+ metricFormula: expression,
234
+ },
235
+ },
236
+ ],
237
+ },
238
+ rollingTime: args.rollingTime,
239
+ };
240
+ }
164
241
  // --- Template Definitions ---
165
242
  const highCpuTemplate = {
166
243
  id: "docker-high-cpu",
167
244
  name: "High Container CPU Usage",
168
- description: "Alert when container CPU usage exceeds 80% sustained. One alert per container.",
245
+ description: "Alert when a container's CPU usage stays above 80% of ONE CPU core for the whole window. This is the same number `docker stats` prints, so 100% is one full core and a container spread across several cores reads above 100. One alert per container.",
169
246
  category: "Resource",
170
247
  severity: "Warning",
171
248
  getMonitorStep: (args) => {
@@ -192,10 +269,10 @@ const highCpuTemplate = {
192
269
  metricAlias,
193
270
  filterType: FilterType.GreaterThan,
194
271
  value: 80,
195
- incidentTitle: `[Docker] High CPU Usage (>80%) - ${args.monitorName}`,
196
- incidentDescription: `A Docker container's CPU usage has exceeded 80%. Sustained high CPU usage can cause performance degradation and throttling. Check the root cause for the specific container and host details.`,
197
- criteriaName: "High CPU - Usage > 80%",
198
- criteriaDescription: "Triggers when any container's CPU usage exceeds 80% over the monitoring window.",
272
+ incidentTitle: `[Docker] High CPU Usage (>80% of one core)${dockerTitleSuffix(args)}`,
273
+ incidentDescription: `A Docker container's CPU usage stayed above 80% of a single CPU core for the whole evaluation window. \`container.cpu.utilization\` is the figure \`docker stats\` reports: 100% is one full core, NOT 100% of the host, so a container using two cores reads 200. On a multi-core host this threshold is therefore an absolute CPU budget rather than a share of the machine — raise it if this container is meant to use more than one core. Check the root cause for the container and the observed values.`,
274
+ criteriaName: "High CPU - Usage > 80% of one core",
275
+ criteriaDescription: "Triggers when a container's CPU usage stays above 80% of one CPU core across the monitoring window.",
199
276
  }),
200
277
  onlineCriteriaInstance: buildDockerOnlineCriteriaInstance({
201
278
  onlineMonitorStatusId: args.onlineMonitorStatusId,
@@ -209,7 +286,7 @@ const highCpuTemplate = {
209
286
  const highMemoryTemplate = {
210
287
  id: "docker-high-memory",
211
288
  name: "High Container Memory Usage",
212
- description: "Alert when container memory usage exceeds 85% of its limit. One alert per container.",
289
+ description: "Alert when container memory usage stays above 85% of its memory limit — or of HOST memory, when the container was started without a limit. One alert per container.",
213
290
  category: "Resource",
214
291
  severity: "Warning",
215
292
  getMonitorStep: (args) => {
@@ -236,10 +313,10 @@ const highMemoryTemplate = {
236
313
  metricAlias,
237
314
  filterType: FilterType.GreaterThan,
238
315
  value: 85,
239
- incidentTitle: `[Docker] High Memory Usage (>85%) - ${args.monitorName}`,
240
- incidentDescription: `A Docker container's memory usage has exceeded 85% of its limit. High memory usage can lead to OOM kills and container restarts. Check the root cause for the specific container and host details.`,
316
+ incidentTitle: `[Docker] High Memory Usage (>85%)${dockerTitleSuffix(args)}`,
317
+ incidentDescription: `A Docker container's memory usage stayed above 85% for the whole evaluation window. \`container.memory.percent\` divides by the container's memory limit when one is set and by the HOST's total memory when it is not, so check whether this container was started with \`--memory\` before treating this as an impending OOM kill: an unlimited container at 86% is using 86% of the machine and will not be OOM-killed for hitting a limit that does not exist. Check the root cause for the container and the observed values.`,
241
318
  criteriaName: "High Memory - Usage > 85%",
242
- criteriaDescription: "Triggers when any container's memory usage exceeds 85% over the monitoring window.",
319
+ criteriaDescription: "Triggers when a container's memory usage stays above 85% of its limit (or of host memory when unlimited) across the monitoring window.",
243
320
  }),
244
321
  onlineCriteriaInstance: buildDockerOnlineCriteriaInstance({
245
322
  onlineMonitorStatusId: args.onlineMonitorStatusId,
@@ -253,18 +330,43 @@ const highMemoryTemplate = {
253
330
  const containerRestartLoopTemplate = {
254
331
  id: "docker-restart-loop",
255
332
  name: "Container Restart Loop",
256
- description: "Alert when a container has restarted more than 5 times, indicating a crash loop. One alert per container.",
333
+ description: "Alert when a container's restart count climbs by more than 3 within fifteen minutes, indicating a crash loop. One alert per container.",
257
334
  category: "Container",
258
335
  severity: "Critical",
259
336
  getMonitorStep: (args) => {
260
337
  const metricAlias = "container_restarts";
261
338
  return buildDockerMonitorStep({
262
- dockerMonitor: buildDockerMonitorConfig({
339
+ /*
340
+ * `container.restarts` is Docker's LIFETIME RestartCount, not a
341
+ * windowed count, and nothing in the pipeline deltas it. Comparing it
342
+ * to a constant asks "has this container ever crash-looped" — true
343
+ * forever once true, and unrecoverable against a counter that only
344
+ * goes up. The loop signal is how much the counter GREW. See
345
+ * buildDockerDeltaMonitorConfig.
346
+ */
347
+ dockerMonitor: buildDockerDeltaMonitorConfig({
263
348
  hostIdentifier: args.hostIdentifier,
264
349
  metricName: "container.restarts",
265
- metricAlias,
266
- rollingTime: RollingTime.Past5Minutes,
267
- aggregationType: MetricsAggregationType.Max,
350
+ maxAlias: "container_restarts_max",
351
+ minAlias: "container_restarts_min",
352
+ resultAlias: metricAlias,
353
+ resultLegend: "Container Restarts (in window)",
354
+ /*
355
+ * Deliberately no resultLegendUnit: a restart count is
356
+ * dimensionless, and MetricMonitorCriteria reads a formula's
357
+ * legendUnit as the sample unit to convert from.
358
+ */
359
+ /*
360
+ * Fifteen minutes, not five. The per-minute Max-minus-Min delta is
361
+ * a LOWER BOUND: the agent scrapes every 30s and buckets are one
362
+ * minute, so an isolated restart is only counted when it lands
363
+ * between the two samples of the SAME minute — roughly half are
364
+ * missed. Bursts inside one 30s gap are counted in full, and
365
+ * Docker's restart backoff (doubling, capped at 60s) puts a real
366
+ * crash loop at ~20 restarts per fifteen minutes, so the threshold
367
+ * below still clears with room to spare.
368
+ */
369
+ rollingTime: RollingTime.Past15Minutes,
268
370
  groupByAttributeKey: "resource.container.name",
269
371
  }),
270
372
  offlineCriteriaInstance: buildDockerOfflineCriteriaInstance({
@@ -274,17 +376,34 @@ const containerRestartLoopTemplate = {
274
376
  monitorName: args.monitorName,
275
377
  metricAlias,
276
378
  filterType: FilterType.GreaterThan,
277
- value: 5,
278
- incidentTitle: `[Docker] Container Restart Loop Detected - ${args.monitorName}`,
279
- incidentDescription: `A Docker container is repeatedly crashing and restarting. The container restart count has exceeded 5. This indicates a crash loop that needs immediate attention. Check the root cause for the specific container, exit code, and logs.`,
280
- criteriaName: "Restart Loop - Restarts > 5",
281
- criteriaDescription: "Triggers when any container restart count exceeds 5 in the monitoring window.",
379
+ value: 3,
380
+ /*
381
+ * Sum over the window, not the sustained AllValues default: each
382
+ * sample is ONE MINUTE'S restart increment, and most minutes of a
383
+ * crash loop are zero, so "every bucket breached" is unreachable.
384
+ * The window total is the loop count. This is the semantics the
385
+ * docs have always described for this template ("> 3 / Sum" in
386
+ * App/FeatureSet/Docs/Content/en/monitor/docker-monitor.md) and
387
+ * which the code never implemented.
388
+ */
389
+ metricAggregationType: EvaluateOverTimeType.Sum,
390
+ incidentTitle: `[Docker] Container Restart Loop Detected${dockerTitleSuffix(args)}`,
391
+ incidentDescription: `A Docker container restarted more than 3 times in the last fifteen minutes — it is crash-looping, not recovering from a one-off failure. Check the root cause for the specific container, then read that container's logs and its restart policy.`,
392
+ criteriaName: "Restart Loop - Restarts > 3 in 15 min",
393
+ criteriaDescription: "Triggers when a container's restart counter increases by more than 3 across the monitoring window.",
282
394
  }),
283
395
  onlineCriteriaInstance: buildDockerOnlineCriteriaInstance({
284
396
  onlineMonitorStatusId: args.onlineMonitorStatusId,
285
397
  metricAlias,
286
398
  filterType: FilterType.LessThanOrEqualTo,
287
- value: 5,
399
+ value: 3,
400
+ /*
401
+ * Must match the unhealthy side. A pair evaluating the same alias
402
+ * under different window aggregations is not complementary, and the
403
+ * dead band derived from 3 (recover at 2.7) would be measuring a
404
+ * different quantity from the one that fired.
405
+ */
406
+ metricAggregationType: EvaluateOverTimeType.Sum,
288
407
  }),
289
408
  });
290
409
  },
@@ -292,23 +411,29 @@ const containerRestartLoopTemplate = {
292
411
  const highCpuThrottlingTemplate = {
293
412
  id: "docker-cpu-throttling",
294
413
  name: "Container CPU Throttling",
295
- description: "Alert when a container is being CPU-throttled, indicating it needs more CPU resources. One alert per container.",
414
+ description: "Alert when a container accumulates more than a second of CPU throttling in five minutes, meaning it is hitting its CPU limit. One alert per container.",
296
415
  category: "Resource",
297
416
  severity: "Warning",
298
417
  getMonitorStep: (args) => {
299
418
  const metricAlias = "cpu_throttled";
300
419
  return buildDockerMonitorStep({
301
- dockerMonitor: buildDockerMonitorConfig({
420
+ /*
421
+ * throttled_time is a lifetime NANOSECOND counter, so this template
422
+ * alerts on how much it GREW in the window, not on its value. See
423
+ * buildDockerDeltaMonitorConfig for why the value itself is unusable,
424
+ * and for what the delta does and does not see.
425
+ */
426
+ dockerMonitor: buildDockerDeltaMonitorConfig({
302
427
  hostIdentifier: args.hostIdentifier,
303
428
  metricName: "container.cpu.throttling_data.throttled_time",
304
- metricAlias,
429
+ maxAlias: "cpu_throttled_max",
430
+ minAlias: "cpu_throttled_min",
431
+ resultAlias: metricAlias,
432
+ resultLegend: "CPU Throttled Time",
433
+ resultLegendUnit: "ms",
434
+ // The counter is nanoseconds; report the growth in milliseconds.
435
+ scaleDivisor: 1000000,
305
436
  rollingTime: RollingTime.Past5Minutes,
306
- /*
307
- * Max WITHIN each container's series, so throttled time is never
308
- * summed across containers — grouping by container name attributes
309
- * the throttling to the container that actually suffered it.
310
- */
311
- aggregationType: MetricsAggregationType.Max,
312
437
  groupByAttributeKey: "resource.container.name",
313
438
  }),
314
439
  offlineCriteriaInstance: buildDockerOfflineCriteriaInstance({
@@ -318,17 +443,35 @@ const highCpuThrottlingTemplate = {
318
443
  monitorName: args.monitorName,
319
444
  metricAlias,
320
445
  filterType: FilterType.GreaterThan,
321
- value: 0,
322
- incidentTitle: `[Docker] CPU Throttling Detected - ${args.monitorName}`,
323
- incidentDescription: `A Docker container is being CPU-throttled. This means the container is hitting its CPU limit and performance is degraded. Consider increasing the CPU limit or optimizing the application.`,
324
- criteriaName: "CPU Throttling - Throttled Time > 0",
325
- criteriaDescription: "Triggers when any container reports CPU throttling.",
446
+ value: 1000,
447
+ /*
448
+ * Sum, not the AllValues default. Each sample here is ONE MINUTE'S
449
+ * growth, so "how much throttling in the window" is their total.
450
+ * AllValues would instead demand a full second of throttling in
451
+ * every single minute — a much rarer event than the one this
452
+ * template is named for, so the default would quietly disable it.
453
+ * Note the threshold is MEASURED, not real, throttling: at the
454
+ * agent's 30s scrape roughly half is captured, so 1000 ms here is
455
+ * about two seconds of actual throttling per five minutes.
456
+ */
457
+ metricAggregationType: EvaluateOverTimeType.Sum,
458
+ incidentTitle: `[Docker] CPU Throttling Detected${dockerTitleSuffix(args)}`,
459
+ incidentDescription: `A Docker container accumulated more than 1000 ms of CPU throttling in the last 5 minutes. The container is hitting its CPU limit and the kernel's CFS quota is stalling it — throttling is silent, so it surfaces as latency rather than as an error. Consider raising the container's CPU limit or reducing its work. Check the root cause for the container and the throttled time observed.`,
460
+ criteriaName: "CPU Throttling - Throttled Time > 1000 ms per 5 min",
461
+ criteriaDescription: "Triggers when a container's CPU throttled time grows by more than 1000 ms over the monitoring window.",
326
462
  }),
327
463
  onlineCriteriaInstance: buildDockerOnlineCriteriaInstance({
328
464
  onlineMonitorStatusId: args.onlineMonitorStatusId,
329
465
  metricAlias,
330
- filterType: FilterType.EqualTo,
331
- value: 0,
466
+ filterType: FilterType.LessThanOrEqualTo,
467
+ value: 1000,
468
+ /*
469
+ * Must match the unhealthy side. A pair evaluating the same alias
470
+ * under different window aggregations is not complementary, and the
471
+ * dead band derived from 1000 (recover at 900) would be measuring a
472
+ * different quantity from the one that fired.
473
+ */
474
+ metricAggregationType: EvaluateOverTimeType.Sum,
332
475
  }),
333
476
  });
334
477
  },
@@ -336,7 +479,7 @@ const highCpuThrottlingTemplate = {
336
479
  const highProcessCountTemplate = {
337
480
  id: "docker-high-pids",
338
481
  name: "High Container Process Count",
339
- description: "Alert when a container has an unusually high number of processes, which may indicate a fork bomb or resource leak. One alert per container.",
482
+ description: "Alert when a container's task count (processes PLUS threads) stays above 2000, which may indicate a fork bomb, a thread leak, or an unbounded worker pool. One alert per container.",
340
483
  category: "Container",
341
484
  severity: "Warning",
342
485
  getMonitorStep: (args) => {
@@ -357,21 +500,43 @@ const highProcessCountTemplate = {
357
500
  monitorName: args.monitorName,
358
501
  metricAlias,
359
502
  filterType: FilterType.GreaterThan,
360
- value: 500,
361
- incidentTitle: `[Docker] High Process Count (>500) - ${args.monitorName}`,
362
- incidentDescription: `A Docker container has an unusually high number of processes (>500). This may indicate a fork bomb, resource leak, or misconfigured application. Check the container for runaway processes.`,
363
- criteriaName: "High PIDs - Count > 500",
364
- criteriaDescription: "Triggers when container process count exceeds 500.",
503
+ value: 2000,
504
+ incidentTitle: `[Docker] High Process/Thread Count (>2000)${dockerTitleSuffix(args)}`,
505
+ incidentDescription: `A Docker container held more than 2000 tasks for the whole evaluation window. \`container.pids.count\` reads the cgroup pids controller, which counts TASKS — kernel threads as well as processes — so a JVM, an nginx with a large worker pool, or a Go binary sits far above its process count. Sustained above 2000 usually means a fork bomb, a thread leak, or a pool sized without a ceiling. Check the root cause for the container and the observed counts.`,
506
+ criteriaName: "High PIDs - Task Count > 2000",
507
+ criteriaDescription: "Triggers when a container's task (process + thread) count stays above 2000 across the monitoring window.",
365
508
  }),
366
509
  onlineCriteriaInstance: buildDockerOnlineCriteriaInstance({
367
510
  onlineMonitorStatusId: args.onlineMonitorStatusId,
368
511
  metricAlias,
369
512
  filterType: FilterType.LessThanOrEqualTo,
370
- value: 500,
513
+ value: 2000,
371
514
  }),
372
515
  });
373
516
  },
374
517
  };
518
+ /*
519
+ * KNOWN INERT — do not copy this shape, and do not assume it gives adopters
520
+ * container-down coverage.
521
+ *
522
+ * `container.uptime` is seconds-since-start from the docker_stats receiver,
523
+ * which only scrapes RUNNING containers, so the value is a positive double
524
+ * and `= 0` is unreachable. Absence cannot substitute either: a stopped
525
+ * container emits no datapoint, so it produces no series, and
526
+ * MonitorCriteriaEvaluator discards a grouped criteria whose per-series
527
+ * match list is empty — `onNoDataPolicy: Trigger` would be inert too. The
528
+ * worker's only absent-series injectors are host- and IoT-device-scoped
529
+ * (injectExpectedAbsentHostSeries / injectExpectedAbsentIoTDeviceSeries,
530
+ * gated by HostAbsenceSeries.getHostAbsenceGroupByKey).
531
+ *
532
+ * Real per-container down detection needs an absent-CONTAINER injector in
533
+ * App/FeatureSet/Workers/Jobs/TelemetryMonitor/MonitorTelemetryMonitor.ts.
534
+ * Until that exists this template cannot fire. Removing it is the honest
535
+ * alternative, but that also touches TemplateGroupByKeys.test.ts and six
536
+ * localised docs tables, so it is deliberately left for a follow-up rather
537
+ * than half-done here. PodmanAlertTemplates and DockerSwarmAlertTemplates
538
+ * carry the identical inert design.
539
+ */
375
540
  const containerUptimeTemplate = {
376
541
  id: "docker-container-down",
377
542
  name: "Container Down (Low Uptime)",
@@ -397,7 +562,7 @@ const containerUptimeTemplate = {
397
562
  metricAlias,
398
563
  filterType: FilterType.EqualTo,
399
564
  value: 0,
400
- incidentTitle: `[Docker] Container Down - ${args.monitorName}`,
565
+ incidentTitle: `[Docker] Container Down${dockerTitleSuffix(args)}`,
401
566
  incidentDescription: `A Docker container has stopped running. The container uptime is zero, indicating it has crashed, been stopped, or been removed. Check the container status and logs for details.`,
402
567
  criteriaName: "Container Down - Uptime = 0",
403
568
  criteriaDescription: "Triggers when container uptime drops to zero.",
@@ -1 +1 @@
1
- {"version":3,"file":"DockerAlertTemplates.js","sourceRoot":"","sources":["../../../../Types/Monitor/DockerAlertTemplates.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DockerAlertTemplates.js","sourceRoot":"","sources":["../../../../Types/Monitor/DockerAlertTemplates.ts"],"names":[],"mappings":"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"}