@oneuptime/common 12.0.32 → 12.0.34

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 (1191) hide show
  1. package/Models/AnalyticsModels/RumSession.ts +117 -1
  2. package/Models/AnalyticsModels/RumSessionChunk.ts +13 -0
  3. package/Models/AnalyticsModels/Span.ts +14 -0
  4. package/Models/DatabaseModels/AlertCustomField.ts +77 -3
  5. package/Models/DatabaseModels/ApiKeyPermission.ts +3 -27
  6. package/Models/DatabaseModels/EnterpriseLicense.ts +56 -0
  7. package/Models/DatabaseModels/IncidentCustomField.ts +77 -3
  8. package/Models/DatabaseModels/Index.ts +10 -0
  9. package/Models/DatabaseModels/InventoryItemCustomField.ts +77 -3
  10. package/Models/DatabaseModels/Monitor.ts +76 -0
  11. package/Models/DatabaseModels/MonitorCustomField.ts +77 -3
  12. package/Models/DatabaseModels/NetworkAlertPolicy.ts +690 -0
  13. package/Models/DatabaseModels/NetworkDevice.ts +176 -1
  14. package/Models/DatabaseModels/NetworkSite.ts +201 -2
  15. package/Models/DatabaseModels/NetworkSiteType.ts +102 -3
  16. package/Models/DatabaseModels/NetworkSnmpCredentialProfile.ts +841 -0
  17. package/Models/DatabaseModels/OnCallDutyPolicyCustomField.ts +77 -3
  18. package/Models/DatabaseModels/RumApplication.ts +6 -6
  19. package/Models/DatabaseModels/ScheduledMaintenanceCustomField.ts +77 -3
  20. package/Models/DatabaseModels/StatusPageCustomField.ts +77 -3
  21. package/Models/DatabaseModels/TeamCustomField.ts +77 -3
  22. package/Models/DatabaseModels/TeamMember.ts +0 -9
  23. package/Models/DatabaseModels/TeamMemberCustomField.ts +77 -3
  24. package/Models/DatabaseModels/TeamPermission.ts +3 -24
  25. package/Models/DatabaseModels/TelemetryException.ts +119 -0
  26. package/Models/DatabaseModels/TelemetryIngestionKey.ts +260 -0
  27. package/Models/DatabaseModels/UserNotificationEmailRollupBatch.ts +334 -0
  28. package/Models/DatabaseModels/UserNotificationEmailRollupItem.ts +370 -0
  29. package/Models/DatabaseModels/UserNotificationEmailRollupSetting.ts +282 -0
  30. package/Models/DatabaseModels/UserTelegram.ts +0 -4
  31. package/Scripts/benchmark-fanin-capacity.js +181 -0
  32. package/Server/API/EnterpriseLicenseAPI.ts +391 -64
  33. package/Server/API/LlmProviderAPI.ts +137 -22
  34. package/Server/API/TelemetryAPI.ts +1284 -164
  35. package/Server/API/UserNotificationSettingAPI.ts +55 -0
  36. package/Server/API/UserTelegramAPI.ts +48 -4
  37. package/Server/EnvironmentConfig.ts +49 -2
  38. package/Server/Infrastructure/Postgres/SchemaMigrations/1790700000000-AddNetworkSiteTypeParentHierarchy.ts +55 -0
  39. package/Server/Infrastructure/Postgres/SchemaMigrations/1790900000000-AddEnterpriseLicenseUsageProvenance.ts +31 -0
  40. package/Server/Infrastructure/Postgres/SchemaMigrations/1790900000000-AddTelemetryExceptionErrorClass.ts +124 -0
  41. package/Server/Infrastructure/Postgres/SchemaMigrations/1791000000000-AddUserNotificationEmailRollup.ts +132 -0
  42. package/Server/Infrastructure/Postgres/SchemaMigrations/1791100000000-AddUserNotificationEmailRollupSetting.ts +79 -0
  43. package/Server/Infrastructure/Postgres/SchemaMigrations/1791200000000-AddNetworkSnmpCredentialProfilesAndAlertPolicies.ts +191 -0
  44. package/Server/Infrastructure/Postgres/SchemaMigrations/1791300000000-AddTelemetryIngestionKeyType.ts +91 -0
  45. package/Server/Infrastructure/Postgres/SchemaMigrations/1791400000000-SessionReplayRecordEverySessionByDefault.ts +67 -0
  46. package/Server/Infrastructure/Postgres/SchemaMigrations/1791500000000-WidenCustomFieldDropdownOptions.ts +139 -0
  47. package/Server/Infrastructure/Postgres/SchemaMigrations/1791600000000-AddCustomFieldValueMapping.ts +121 -0
  48. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +20 -0
  49. package/Server/Infrastructure/QueueWorker.ts +59 -23
  50. package/Server/Infrastructure/Semaphore.ts +2 -0
  51. package/Server/Middleware/BearerTokenAuthorization.ts +12 -0
  52. package/Server/Middleware/ProjectAuthorization.ts +11 -0
  53. package/Server/Middleware/SCIMAuthorization.ts +12 -0
  54. package/Server/Middleware/TelemetryIngest.ts +464 -7
  55. package/Server/Services/AIBillingService.ts +101 -27
  56. package/Server/Services/AccessTokenService.ts +1 -0
  57. package/Server/Services/AlertCustomFieldService.ts +98 -0
  58. package/Server/Services/AlertService.ts +37 -0
  59. package/Server/Services/ApiKeyPermissionService.ts +461 -29
  60. package/Server/Services/CustomFieldMappingService.ts +879 -0
  61. package/Server/Services/EnterpriseLicenseInstanceService.ts +197 -0
  62. package/Server/Services/EnterpriseLicenseService.ts +55 -0
  63. package/Server/Services/GlobalConfigService.ts +194 -0
  64. package/Server/Services/IncidentCustomFieldService.ts +98 -0
  65. package/Server/Services/IncidentService.ts +35 -0
  66. package/Server/Services/Index.ts +10 -0
  67. package/Server/Services/MetricService.ts +194 -0
  68. package/Server/Services/MonitorService.ts +175 -21
  69. package/Server/Services/MonitorStatusTimelineService.ts +150 -8
  70. package/Server/Services/MonitorTemplateService.ts +217 -1
  71. package/Server/Services/NetworkAlertPolicyEngineService.ts +2159 -0
  72. package/Server/Services/NetworkAlertPolicyService.ts +944 -0
  73. package/Server/Services/NetworkDeviceAutoImportRuleEngineService.ts +87 -35
  74. package/Server/Services/NetworkDeviceAutoImportRuleService.ts +60 -15
  75. package/Server/Services/NetworkDeviceService.ts +1032 -73
  76. package/Server/Services/NetworkSiteService.ts +1502 -129
  77. package/Server/Services/NetworkSiteTypeService.ts +1216 -0
  78. package/Server/Services/NetworkSnmpCredentialProfileService.ts +238 -0
  79. package/Server/Services/NotificationService.ts +118 -28
  80. package/Server/Services/ProjectService.ts +127 -48
  81. package/Server/Services/RoutineEmailSettingsService.ts +73 -0
  82. package/Server/Services/RumSessionReplayViewService.ts +104 -24
  83. package/Server/Services/ScheduledMaintenanceCustomFieldService.ts +98 -0
  84. package/Server/Services/ScheduledMaintenanceService.ts +32 -0
  85. package/Server/Services/StatusPagePrivateUserService.ts +103 -3
  86. package/Server/Services/TeamMemberService.ts +78 -0
  87. package/Server/Services/TeamPermissionService.ts +235 -3
  88. package/Server/Services/TelemetryIngestionKeyService.ts +722 -19
  89. package/Server/Services/UserNotificationEmailRollupBatchService.ts +78 -0
  90. package/Server/Services/UserNotificationEmailRollupItemService.ts +79 -0
  91. package/Server/Services/UserNotificationEmailRollupSettingService.ts +113 -0
  92. package/Server/Services/UserNotificationSettingService.ts +90 -25
  93. package/Server/Services/UserService.ts +95 -0
  94. package/Server/Services/UserTelegramService.ts +326 -5
  95. package/Server/Types/Database/QueryHelper.ts +4 -2
  96. package/Server/Utils/AI/Chat/ObservabilityChatPrompt.ts +14 -3
  97. package/Server/Utils/AI/SRE/Insights/Detectors/ExceptionSpikeDetector.ts +10 -0
  98. package/Server/Utils/AI/SRE/Insights/Detectors/NewExceptionDetector.ts +10 -0
  99. package/Server/Utils/AI/SRE/Insights/InsightTriageRunner.ts +62 -1
  100. package/Server/Utils/AI/Toolbox/AlertTools.ts +15 -1
  101. package/Server/Utils/APIKey/AccessPermission.ts +5 -2
  102. package/Server/Utils/Billing/BillingFailureNoticeThrottle.ts +80 -0
  103. package/Server/Utils/CustomField/CustomFieldDefinitionMappingHooks.ts +54 -0
  104. package/Server/Utils/CustomField/CustomFieldMappingRegistry.ts +415 -0
  105. package/Server/Utils/CustomField/CustomFieldMappingValidator.ts +335 -0
  106. package/Server/Utils/DataSource/EgressGuard.ts +177 -8
  107. package/Server/Utils/DataSource/HttpFetch.ts +9 -2
  108. package/Server/Utils/EmailRollup/EmailRollupConstants.ts +131 -0
  109. package/Server/Utils/EmailRollup/EmailRollupFlushRunner.ts +925 -0
  110. package/Server/Utils/EmailRollup/EmailRollupRenderer.ts +781 -0
  111. package/Server/Utils/EmailRollup/EmailRollupWriter.ts +368 -0
  112. package/Server/Utils/FrontendEnvironment.ts +40 -0
  113. package/Server/Utils/LLM/LLMService.ts +78 -0
  114. package/Server/Utils/LogRedaction.ts +28 -0
  115. package/Server/Utils/Logger.ts +90 -1
  116. package/Server/Utils/Monitor/Criteria/CompareCriteria.ts +338 -77
  117. package/Server/Utils/Monitor/Criteria/DatabaseMonitorCriteria.ts +190 -0
  118. package/Server/Utils/Monitor/Criteria/EvaluateOverTime.ts +9 -2
  119. package/Server/Utils/Monitor/Criteria/IncomingRequestCriteria.ts +30 -4
  120. package/Server/Utils/Monitor/Criteria/SnmpMonitorCriteria.ts +61 -1
  121. package/Server/Utils/Monitor/MonitorAlert.ts +29 -6
  122. package/Server/Utils/Monitor/MonitorCriteriaDataExtractor.ts +14 -0
  123. package/Server/Utils/Monitor/MonitorCriteriaEvaluator.ts +159 -15
  124. package/Server/Utils/Monitor/MonitorCriteriaObservationBuilder.ts +255 -4
  125. package/Server/Utils/Monitor/MonitorIncident.ts +22 -6
  126. package/Server/Utils/Monitor/MonitorMetricUtil.ts +41 -0
  127. package/Server/Utils/Monitor/MonitorTemplateUtil.ts +72 -0
  128. package/Server/Utils/Monitor/NetworkDeviceHydrationUtil.ts +499 -19
  129. package/Server/Utils/Monitor/NetworkDeviceMetricUtil.ts +66 -10
  130. package/Server/Utils/Monitor/NetworkDeviceWalkUtil.ts +238 -44
  131. package/Server/Utils/Monitor/NetworkInventoryUtil.ts +146 -39
  132. package/Server/Utils/Monitor/SeriesContextEnricher.ts +304 -0
  133. package/Server/Utils/NetworkDevice/DeviceHealthAggregation.ts +31 -18
  134. package/Server/Utils/NetworkSite/NetworkSiteHierarchyLock.ts +213 -0
  135. package/Server/Utils/OutboundUserAgent.ts +152 -0
  136. package/Server/Utils/SSRFProtection.ts +217 -10
  137. package/Server/Utils/SessionReplay/SessionReplayGateCache.ts +239 -138
  138. package/Server/Utils/SessionReplay/SessionReplayHealthCounters.ts +305 -0
  139. package/Server/Utils/SessionReplay/SessionReplayReadService.ts +1430 -289
  140. package/Server/Utils/StartServer.ts +53 -36
  141. package/Server/Utils/TelegramVerificationToken.ts +185 -0
  142. package/Server/Utils/Telemetry/CaptureSpan.ts +32 -8
  143. package/Server/Utils/Telemetry/ErrorClassResolver.ts +120 -0
  144. package/Server/Utils/Telemetry/PinServiceName.ts +197 -0
  145. package/Server/Utils/Telemetry/SpanUtil.ts +33 -0
  146. package/Server/Utils/Telemetry/TelemetryFanInWriter.ts +38 -16
  147. package/Server/Utils/Telemetry/TelemetryIngestionKeyGuard.ts +92 -0
  148. package/Server/Utils/Telemetry/TelemetryIngestionKeyRateLimiter.ts +217 -0
  149. package/Server/Utils/Telemetry.ts +198 -51
  150. package/Server/Utils/VM/VMAPI.ts +1 -0
  151. package/Server/Utils/VM/VMRunner.ts +975 -95
  152. package/Server/Views/Partials/SensitiveUrlToken.ejs +140 -0
  153. package/Tests/App/AdminDashboard/AdminHeaderSmallScreens.test.tsx +202 -0
  154. package/Tests/App/Dashboard/AddNeighborToMonitoringModal.test.tsx +134 -33
  155. package/Tests/App/Dashboard/AskAiSuggestedPrompts.test.ts +279 -0
  156. package/Tests/App/Dashboard/DashboardEditPermissions.test.tsx +517 -0
  157. package/Tests/App/Dashboard/DashboardHeaderSmallScreens.test.tsx +404 -0
  158. package/Tests/App/Dashboard/DashboardVariablesDiscard.test.tsx +26 -0
  159. package/Tests/App/Dashboard/DeviceStatusHero.test.tsx +588 -0
  160. package/Tests/App/Dashboard/DiscoveryScanWizardValidation.test.tsx +486 -9
  161. package/Tests/App/Dashboard/MonitorCreateFromMonitorBackedDevice.test.tsx +632 -0
  162. package/Tests/App/Dashboard/MonitorRecommendationCreateProgress.test.tsx +682 -0
  163. package/Tests/App/Dashboard/MonitorTypePicker.test.tsx +4 -2
  164. package/Tests/App/Dashboard/NetworkDeviceCreateFormMonitorBinding.test.tsx +676 -0
  165. package/Tests/App/Dashboard/NetworkDeviceCreateFormPingMonitor.test.tsx +791 -0
  166. package/Tests/App/Dashboard/NetworkDeviceCreateFormProbeAndSnmp.test.tsx +833 -0
  167. package/Tests/App/Dashboard/NetworkDeviceCriteriaFilter.test.ts +161 -0
  168. package/Tests/App/Dashboard/NetworkDeviceSettingsMonitoringSection.test.tsx +458 -0
  169. package/Tests/App/Dashboard/NetworkSideMenu.test.tsx +41 -5
  170. package/Tests/App/Dashboard/NotificationEmailPreferences.test.tsx +399 -0
  171. package/Tests/App/Dashboard/PingMonitorProvisioning.test.ts +368 -0
  172. package/Tests/App/Dashboard/RecommendationCard.test.tsx +796 -0
  173. package/Tests/App/Dashboard/RecommendationToolbar.test.tsx +519 -0
  174. package/Tests/App/Dashboard/RecommendationsList.test.tsx +661 -0
  175. package/Tests/App/Dashboard/UseBulkCreatePingMonitors.test.tsx +899 -0
  176. package/Tests/App/Dashboard/UseBulkSnmpCredentialProfileActions.test.tsx +732 -0
  177. package/Tests/App/SensitiveUrlTokenBootstrap.test.ts +256 -0
  178. package/Tests/App/StatusPage/StatusPageIndexPageRobotsMeta.test.ts +11 -1
  179. package/Tests/App/StatusPage/StatusPageLastUpdated.test.tsx +263 -0
  180. package/Tests/App/StatusPage/StatusPageLoginCodeBootstrap.test.ts +9 -4
  181. package/Tests/App/StatusPage/StatusPageOverviewLiveAndSearch.test.tsx +753 -0
  182. package/Tests/App/StatusPage/StatusPageResourceSearchBox.test.tsx +224 -0
  183. package/Tests/Models/AnalyticsModels/RumSessionReplayColumns.test.ts +262 -0
  184. package/Tests/Models/CustomFieldMappingColumns.test.ts +166 -0
  185. package/Tests/Models/DatabaseModels/SessionReplayModels.test.ts +20 -6
  186. package/Tests/Models/NetworkSiteHierarchy.test.ts +41 -4
  187. package/Tests/ResponsiveVisibility.test.ts +115 -0
  188. package/Tests/ResponsiveVisibility.ts +183 -0
  189. package/Tests/Server/API/EnterpriseLicenseReportUserCount.test.ts +951 -7
  190. package/Tests/Server/API/LlmProviderConnectionTest.test.ts +522 -0
  191. package/Tests/Server/API/SessionReplayAPI.test.ts +1940 -216
  192. package/Tests/Server/API/UserNotificationSettingAPI.test.ts +186 -0
  193. package/Tests/Server/API/UserTelegramAPISecurity.test.ts +231 -0
  194. package/Tests/Server/EnvironmentConfigFrontendSecurity.test.ts +234 -0
  195. package/Tests/Server/Infrastructure/Postgres/CustomFieldValueMappingMigration.test.ts +202 -0
  196. package/Tests/Server/Infrastructure/Postgres/InventoryItemArchiveMigration.test.ts +41 -0
  197. package/Tests/Server/Infrastructure/Postgres/NetworkSnmpCredentialProfilesAndAlertPoliciesMigration.test.ts +854 -0
  198. package/Tests/Server/Infrastructure/Postgres/SchemaMigrationsOrdering.test.ts +18 -0
  199. package/Tests/Server/Infrastructure/Postgres/SessionReplayRecordEverySessionByDefaultMigration.test.ts +169 -0
  200. package/Tests/Server/Infrastructure/Postgres/UserNotificationEmailRollupTableMigration.test.ts +535 -0
  201. package/Tests/Server/Infrastructure/QueueWorkerTimeout.test.ts +210 -0
  202. package/Tests/Server/Infrastructure/TelemetryExporterDeploymentConfig.test.ts +130 -0
  203. package/Tests/Server/Middleware/ProjectAuthorizationApiKeyMiddleware.test.ts +4 -1
  204. package/Tests/Server/Middleware/TelemetryIngestBrowserKey.test.ts +1163 -0
  205. package/Tests/Server/Middleware/TelemetryIngestTokenLog.test.ts +5 -3
  206. package/Tests/Server/Services/AIChatPrivacyPin.test.ts +560 -0
  207. package/Tests/Server/Services/AddTelemetryIngestionKeyTypeMigration.test.ts +555 -0
  208. package/Tests/Server/Services/ApiKeyPermissionSecurity.test.ts +678 -0
  209. package/Tests/Server/Services/ApiKeyPermissionService.test.ts +276 -28
  210. package/Tests/Server/Services/BillingRechargeOwnerEmailGuards.test.ts +783 -0
  211. package/Tests/Server/Services/CustomFieldDropdownOptionsColumnWidth.test.ts +431 -0
  212. package/Tests/Server/Services/CustomFieldMappingService.test.ts +850 -0
  213. package/Tests/Server/Services/DiscoveryScanClaimHookFreeSafety.test.ts +32 -0
  214. package/Tests/Server/Services/EnterpriseLicenseInstanceServiceDeletionUsage.test.ts +707 -0
  215. package/Tests/Server/Services/EnterpriseLicenseServiceUsageAggregationLock.test.ts +329 -0
  216. package/Tests/Server/Services/GlobalConfigService.test.ts +414 -1
  217. package/Tests/Server/Services/MetricRawEntityKeyPrune.test.ts +592 -0
  218. package/Tests/Server/Services/MonitorServiceDeleteNetworkDeviceCleanup.test.ts +294 -0
  219. package/Tests/Server/Services/MonitorStatusBridgeProbePath.test.ts +802 -0
  220. package/Tests/Server/Services/MonitorStatusTimelineService.test.ts +72 -2
  221. package/Tests/Server/Services/NetworkAlertPolicyEngineHooks.test.ts +752 -0
  222. package/Tests/Server/Services/NetworkAlertPolicyEngineService.test.ts +1849 -0
  223. package/Tests/Server/Services/NetworkAlertPolicyModel.test.ts +1793 -0
  224. package/Tests/Server/Services/NetworkDeviceAutoImportRuleEngineService.test.ts +273 -5
  225. package/Tests/Server/Services/NetworkDeviceAutoImportRuleService.test.ts +97 -12
  226. package/Tests/Server/Services/NetworkDeviceAutoMonitorLifecycle.test.ts +148 -3
  227. package/Tests/Server/Services/NetworkDeviceMonitorBindingUpdateGuard.test.ts +514 -0
  228. package/Tests/Server/Services/NetworkDeviceMonitorStatusStamp.test.ts +447 -58
  229. package/Tests/Server/Services/NetworkDeviceMonitoringMethodTransition.test.ts +739 -0
  230. package/Tests/Server/Services/NetworkDevicePollingTenancy.test.ts +501 -0
  231. package/Tests/Server/Services/NetworkDeviceSiteDefaultProbe.test.ts +432 -0
  232. package/Tests/Server/Services/NetworkSiteMonitoringDefaults.test.ts +498 -0
  233. package/Tests/Server/Services/NetworkSiteRollupPolicyAndMaintenance.test.ts +337 -55
  234. package/Tests/Server/Services/NetworkSiteService.test.ts +1868 -131
  235. package/Tests/Server/Services/NetworkSiteTypeService.test.ts +1109 -0
  236. package/Tests/Server/Services/NetworkSnmpCredentialProfileModel.test.ts +926 -0
  237. package/Tests/Server/Services/NetworkSnmpCredentialProfileService.test.ts +796 -0
  238. package/Tests/Server/Services/ProjectServiceNetworkSiteTypeDefaults.test.ts +214 -0
  239. package/Tests/Server/Services/RoutineEmailSettingsPostgres.test.ts +329 -0
  240. package/Tests/Server/Services/RumSessionReplayViewService.test.ts +267 -0
  241. package/Tests/Server/Services/StatusPagePrivateUserEmailChangePasswordResetExpiry.test.ts +269 -0
  242. package/Tests/Server/Services/TeamMemberAutoAcceptInvitation.test.ts +9 -0
  243. package/Tests/Server/Services/TeamMemberInviteRegistrationToken.test.ts +9 -0
  244. package/Tests/Server/Services/TeamPrivilegeEscalation.test.ts +834 -0
  245. package/Tests/Server/Services/TelemetryIngestionKeyPolicyResolution.test.ts +814 -0
  246. package/Tests/Server/Services/TelemetryIngestionKeyValidation.test.ts +998 -0
  247. package/Tests/Server/Services/UserEmailChangePasswordResetExpiry.test.ts +472 -0
  248. package/Tests/Server/Services/UserNotificationEmailRollupModels.test.ts +569 -0
  249. package/Tests/Server/Services/UserNotificationEmailRollupSettingModel.test.ts +314 -0
  250. package/Tests/Server/Services/UserNotificationEmailRollupSettingService.test.ts +409 -0
  251. package/Tests/Server/Services/UserNotificationSettingRollupRouting.test.ts +997 -0
  252. package/Tests/Server/Services/UserNotificationSettingWorkspaceChannels.test.ts +110 -1
  253. package/Tests/Server/Services/UserTelegramVerificationSecurity.test.ts +688 -0
  254. package/Tests/Server/Types/Database/Permissions/DashboardAccessPermission.test.ts +321 -0
  255. package/Tests/Server/Types/Database/QueryHelperOperators.test.ts +17 -0
  256. package/Tests/Server/Utils/AI/AlertMonitorFilters.test.ts +124 -0
  257. package/Tests/Server/Utils/AI/Insights/InsightTriageRunner.test.ts +208 -0
  258. package/Tests/Server/Utils/AI/LLMServiceToolCalling.test.ts +235 -0
  259. package/Tests/Server/Utils/AI/ObservabilityChatPrompt.test.ts +253 -0
  260. package/Tests/Server/Utils/AI/SRE/Insights/FixRouting.test.ts +497 -0
  261. package/Tests/Server/Utils/AI/Toolbox/Serializer.test.ts +383 -0
  262. package/Tests/Server/Utils/APIKey/AccessPermission.test.ts +7 -3
  263. package/Tests/Server/Utils/AnalyticsDatabase/ClusterConfig.test.ts +315 -0
  264. package/Tests/Server/Utils/Captcha.test.ts +422 -0
  265. package/Tests/Server/Utils/CustomField/CustomFieldMappingValidator.test.ts +437 -0
  266. package/Tests/Server/Utils/DataSource/EgressGuard.test.ts +300 -11
  267. package/Tests/Server/Utils/DataSource/HttpFetch.test.ts +96 -2
  268. package/Tests/Server/Utils/Database/MigrationFailureLog.test.ts +466 -0
  269. package/Tests/Server/Utils/EmailRollup/EmailRollupBurstWindow.test.ts +83 -0
  270. package/Tests/Server/Utils/EmailRollup/EmailRollupFlushRunnerBehaviour.test.ts +1096 -0
  271. package/Tests/Server/Utils/EmailRollup/EmailRollupFlushRunnerClaim.test.ts +466 -0
  272. package/Tests/Server/Utils/EmailRollup/EmailRollupFlushRunnerPreferences.test.ts +362 -0
  273. package/Tests/Server/Utils/EmailRollup/EmailRollupRenderer.test.ts +1428 -0
  274. package/Tests/Server/Utils/EmailRollup/EmailRollupTestHarness.ts +828 -0
  275. package/Tests/Server/Utils/EmailRollup/EmailRollupWriter.test.ts +864 -0
  276. package/Tests/Server/Utils/FrontendEnvironment.test.ts +190 -0
  277. package/Tests/Server/Utils/LogRedaction.test.ts +26 -0
  278. package/Tests/Server/Utils/LoggerCredentialLeak.test.ts +23 -9
  279. package/Tests/Server/Utils/LoggerFaultDemotion.test.ts +346 -0
  280. package/Tests/Server/Utils/Monitor/Criteria/CompareCriteriaAggregation.test.ts +584 -0
  281. package/Tests/Server/Utils/Monitor/Criteria/DatabaseMonitorCriteria.test.ts +633 -0
  282. package/Tests/Server/Utils/Monitor/Criteria/IncomingRequestHeaderCriteria.test.ts +236 -0
  283. package/Tests/Server/Utils/Monitor/Criteria/SnmpMonitorCriteria.test.ts +196 -0
  284. package/Tests/Server/Utils/Monitor/DatabaseMetricWrite.test.ts +367 -0
  285. package/Tests/Server/Utils/Monitor/MonitorCriteriaEvaluator.test.ts +437 -0
  286. package/Tests/Server/Utils/Monitor/MonitorCriteriaObservationBuilderUnits.test.ts +100 -0
  287. package/Tests/Server/Utils/Monitor/MonitorStepResourceIdentity.test.ts +5 -0
  288. package/Tests/Server/Utils/Monitor/MonitorTemplateUtilSeriesContext.test.ts +176 -0
  289. package/Tests/Server/Utils/Monitor/NetworkDeviceHydrationUtil.test.ts +512 -31
  290. package/Tests/Server/Utils/Monitor/NetworkDeviceMetricUtil.test.ts +252 -0
  291. package/Tests/Server/Utils/Monitor/NetworkDeviceWalkUtil.test.ts +479 -42
  292. package/Tests/Server/Utils/Monitor/NetworkInventoryUtil.test.ts +351 -5
  293. package/Tests/Server/Utils/Monitor/SeriesContextEnricher.test.ts +356 -0
  294. package/Tests/Server/Utils/NetworkDevice/DeviceHealthAggregation.test.ts +136 -12
  295. package/Tests/Server/Utils/NetworkSite/NetworkSiteHierarchyLock.test.ts +306 -0
  296. package/Tests/Server/Utils/OutboundUserAgent.test.ts +266 -0
  297. package/Tests/Server/Utils/SSRFProtectionCloudServiceAddresses.test.ts +595 -0
  298. package/Tests/Server/Utils/SecurityEvent/ThreatIntel/TaxiiClientUserAgent.test.ts +141 -0
  299. package/Tests/Server/Utils/SessionReplay/SessionReplayGateCachePolicy.test.ts +198 -1
  300. package/Tests/Server/Utils/SessionReplay/SessionReplayHealthCounters.test.ts +453 -0
  301. package/Tests/Server/Utils/SessionReplay/SessionReplayReadServiceQueries.test.ts +1378 -0
  302. package/Tests/Server/Utils/SessionReplayOriginAllowListRefactor.test.ts +420 -0
  303. package/Tests/Server/Utils/TelegramVerificationToken.test.ts +253 -0
  304. package/Tests/Server/Utils/Telemetry/ErrorClassResolver.test.ts +298 -0
  305. package/Tests/Server/Utils/Telemetry/PinServiceName.test.ts +666 -0
  306. package/Tests/Server/Utils/Telemetry/TelemetryFanInWriterCapacity.test.ts +458 -0
  307. package/Tests/Server/Utils/Telemetry/TelemetryIngestionKeyGuard.test.ts +424 -0
  308. package/Tests/Server/Utils/Telemetry/TelemetryIngestionKeyRateLimiter.test.ts +528 -0
  309. package/Tests/Server/Utils/Telemetry.test.ts +456 -66
  310. package/Tests/Server/Utils/TelemetryExporterEnvironment.test.ts +56 -0
  311. package/Tests/Server/Utils/VM/VMRunnerHostBridgeLatency.test.ts +74 -0
  312. package/Tests/Server/Utils/VM/VMRunnerPrivateNetworkWiring.test.ts +100 -7
  313. package/Tests/Server/Utils/VM/VMRunnerSsrf.test.ts +1176 -6
  314. package/Tests/Types/CustomField/CustomFieldMappingCatalog.test.ts +220 -0
  315. package/Tests/Types/CustomField/CustomFieldValueMapping.test.ts +348 -0
  316. package/Tests/Types/JSONFunctions.test.ts +260 -0
  317. package/Tests/Types/Monitor/CephAlertTemplates.test.ts +422 -53
  318. package/Tests/Types/Monitor/DatabaseMetricCatalog.test.ts +388 -0
  319. package/Tests/Types/Monitor/DockerAlertTemplates.test.ts +495 -15
  320. package/Tests/Types/Monitor/DockerSwarmAlertTemplates.test.ts +191 -45
  321. package/Tests/Types/Monitor/HostAlertTemplates.test.ts +370 -42
  322. package/Tests/Types/Monitor/IotAlertTemplates.test.ts +375 -20
  323. package/Tests/Types/Monitor/KubernetesAlertTemplates.test.ts +636 -42
  324. package/Tests/Types/Monitor/KubernetesMetricCatalog.test.ts +189 -0
  325. package/Tests/Types/Monitor/KubernetesTemplateGroupByKeys.test.ts +95 -14
  326. package/Tests/Types/Monitor/MonitorStepDatabaseMonitor.test.ts +243 -0
  327. package/Tests/Types/Monitor/MonitorStepDefaultTelemetryConfig.test.ts +1 -0
  328. package/Tests/Types/Monitor/MonitorType.test.ts +1 -0
  329. package/Tests/Types/Monitor/MonitorTypeKeywords.test.ts +16 -7
  330. package/Tests/Types/Monitor/NetworkDeviceAlertPack.test.ts +60 -0
  331. package/Tests/Types/Monitor/PodmanAlertTemplates.test.ts +190 -21
  332. package/Tests/Types/Monitor/ProxmoxAlertTemplates.test.ts +352 -22
  333. package/Tests/Types/Monitor/Recommendation/MonitorRecommendationAlertDebuggability.test.ts +363 -0
  334. package/Tests/Types/Monitor/Recommendation/MonitorRecommendationNotificationMode.test.ts +93 -18
  335. package/Tests/Types/Monitor/Recommendation/MonitorRecommendationSeverityMapper.test.ts +259 -0
  336. package/Tests/Types/Monitor/Recommendation/RecommendationCriteriaBuilder.test.ts +476 -0
  337. package/Tests/Types/Monitor/RumAlertTemplates.test.ts +136 -0
  338. package/Tests/Types/Monitor/SeriesContext/SeriesDebugHints.test.ts +661 -0
  339. package/Tests/Types/Monitor/SeriesContext/SeriesLabelDisplay.test.ts +507 -0
  340. package/Tests/Types/Monitor/ServiceAlertTemplates.test.ts +270 -0
  341. package/Tests/Types/Monitor/TemplateGroupByKeys.test.ts +38 -10
  342. package/Tests/Types/Monitor/Utils/RecommendationCriteriaAssertions.ts +102 -0
  343. package/Tests/Types/NetworkDevice/NetworkAlertPolicyScope.test.ts +655 -0
  344. package/Tests/Types/NetworkDevice/NetworkDeviceMonitoringMethod.test.ts +115 -26
  345. package/Tests/Types/NetworkSite/DefaultNetworkSiteType.test.ts +39 -0
  346. package/Tests/Types/NotificationSetting/NotificationEmailRollupPolicy.test.ts +299 -0
  347. package/Tests/Types/NotificationSetting/RoutineEmailEvents.test.ts +47 -0
  348. package/Tests/Types/Rum/SessionReplayApiContracts.test.ts +608 -0
  349. package/Tests/Types/Rum/SessionReplayCustomEvents.test.ts +434 -0
  350. package/Tests/Types/Telemetry/ErrorClass.test.ts +483 -0
  351. package/Tests/Types/WebsiteRequest.test.ts +285 -3
  352. package/Tests/UI/Components/BasicRadioButtons.test.tsx +336 -0
  353. package/Tests/UI/Components/Charts/ChartBucketIdentity.test.ts +16 -3
  354. package/Tests/UI/Components/Charts/ChartTrailingBucketGap.test.ts +691 -0
  355. package/Tests/UI/Components/ComponentsModal.test.tsx +12 -4
  356. package/Tests/UI/Components/ComponentsModalUsability.test.tsx +518 -0
  357. package/Tests/UI/Components/CustomFields/CustomFieldsDetailMapping.test.tsx +324 -0
  358. package/Tests/UI/Components/CustomFields/MapFromCustomFieldInput.test.tsx +176 -0
  359. package/Tests/UI/Components/Graphs/DayUptimeGraph.test.tsx +484 -0
  360. package/Tests/UI/Components/HeaderRightRail.test.tsx +157 -0
  361. package/Tests/UI/Components/IconDropdownItem.test.tsx +102 -0
  362. package/Tests/UI/Components/JSONTablePrototypePollution.test.tsx +117 -0
  363. package/Tests/UI/Components/KeyboardShortcutsModal.test.tsx +214 -0
  364. package/Tests/UI/Components/ModelTable/ModelTableWrapContent.test.tsx +561 -0
  365. package/Tests/UI/Components/MonitorGraphs/UptimeBarDayModal.test.tsx +302 -0
  366. package/Tests/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.test.ts +43 -12
  367. package/Tests/UI/Components/ProgressBar.test.tsx +38 -2
  368. package/Tests/UI/Components/ShortcutDialogGuard.test.tsx +74 -0
  369. package/Tests/UI/Components/SideMenuItem.test.tsx +226 -4
  370. package/Tests/UI/Components/SideMenuSection.test.tsx +310 -0
  371. package/Tests/UI/Components/SideOverSubmitState.test.tsx +335 -0
  372. package/Tests/UI/Components/StatusPage/ResourceGroupSectionAutoExpand.test.tsx +248 -0
  373. package/Tests/UI/Components/TableCellWrapping.test.tsx +625 -0
  374. package/Tests/UI/Components/TableLoadingStates.test.tsx +205 -0
  375. package/Tests/UI/Components/Workflow/NodePlacement.test.ts +148 -0
  376. package/Tests/UI/Components/Workflow/Workflow.test.tsx +981 -0
  377. package/Tests/UI/ConfigBrowserTelemetry.test.ts +70 -0
  378. package/Tests/UI/Rum/ChunkLoader.test.ts +1036 -2
  379. package/Tests/UI/Rum/FidelityNotices.test.ts +187 -0
  380. package/Tests/UI/Rum/InactivityMap.test.ts +341 -0
  381. package/Tests/UI/Rum/PrivacySummaryCard.test.tsx +259 -0
  382. package/Tests/UI/Rum/RecordingHealthCard.test.tsx +855 -0
  383. package/Tests/UI/Rum/RecordingHealthStrip.test.tsx +594 -0
  384. package/Tests/UI/Rum/ReplayCard.test.tsx +451 -0
  385. package/Tests/UI/Rum/ReplayCorrelationPanel.test.tsx +536 -0
  386. package/Tests/UI/Rum/ReplayEngine.test.ts +2503 -0
  387. package/Tests/UI/Rum/ReplayEngineTypes.test.ts +171 -0
  388. package/Tests/UI/Rum/ReplayHeader.test.tsx +711 -0
  389. package/Tests/UI/Rum/ReplayLink.test.tsx +119 -0
  390. package/Tests/UI/Rum/ReplayPinControl.test.tsx +408 -0
  391. package/Tests/UI/Rum/ReplayPlaybackIntent.test.ts +152 -0
  392. package/Tests/UI/Rum/ReplayRail.test.tsx +1296 -0
  393. package/Tests/UI/Rum/ReplayRailDetail.test.tsx +900 -0
  394. package/Tests/UI/Rum/ReplayScrubber.test.tsx +763 -147
  395. package/Tests/UI/Rum/ReplaySignalTypes.test.ts +189 -0
  396. package/Tests/UI/Rum/ReplaySignals.test.ts +1579 -0
  397. package/Tests/UI/Rum/ReplayStage.test.tsx +396 -473
  398. package/Tests/UI/Rum/ReplayStageOverlays.test.tsx +918 -0
  399. package/Tests/UI/Rum/ReplayTimeline.test.tsx +696 -0
  400. package/Tests/UI/Rum/SessionReplayEmptyState.test.tsx +499 -0
  401. package/Tests/UI/Rum/SessionReplaySearchBar.test.tsx +346 -0
  402. package/Tests/UI/Rum/SessionReplaySetupGuide.test.tsx +545 -0
  403. package/Tests/UI/Rum/SessionReplayTable.test.tsx +991 -0
  404. package/Tests/UI/Rum/TargetedCapturePanel.test.tsx +254 -0
  405. package/Tests/UI/Telemetry/BrowserExporterIsolation.test.ts +71 -0
  406. package/Tests/UI/Utils/GlobalKeyboardShortcut.test.ts +344 -0
  407. package/Tests/UI/Utils/PageScrollLock.test.tsx +377 -0
  408. package/Tests/UI/Utils/PermissionGate.test.ts +78 -0
  409. package/Tests/UI/Utils/SensitiveUrlToken.test.ts +140 -0
  410. package/Tests/Utils/API.test.ts +308 -0
  411. package/Tests/Utils/EnterpriseLicenseSeats.test.ts +69 -0
  412. package/Tests/Utils/EnterpriseLicenseSync.test.ts +7 -1
  413. package/Tests/Utils/EnterpriseLicenseUsage.test.ts +433 -2
  414. package/Tests/Utils/HTTPResponseBodyReader.test.ts +323 -0
  415. package/Tests/Utils/Monitor/MonitorMetricType.test.ts +280 -1
  416. package/Tests/Utils/Monitor/MonitorSummarySnapshotUtil.test.ts +1 -0
  417. package/Tests/Utils/Monitor/NetworkTopologyUtil.test.ts +38 -0
  418. package/Tests/Utils/NetworkDevice/DeviceHealthStateUtil.test.ts +284 -23
  419. package/Tests/Utils/NetworkDevice/DeviceReachabilityUtil.test.ts +177 -0
  420. package/Tests/Utils/NetworkDevice/MonitoringMethodThreadedClassifiers.test.ts +992 -0
  421. package/Tests/Utils/NetworkDevice/NetworkAlertPolicyBootstrapUtil.test.ts +427 -0
  422. package/Tests/Utils/NetworkDevice/ReachabilityStampConsistency.test.ts +185 -0
  423. package/Tests/Utils/NetworkDevice/SnmpCredentialUtil.test.ts +268 -0
  424. package/Tests/Utils/NetworkDiscovery/AutoImportRuleMatcher.test.ts +55 -5
  425. package/Tests/Utils/NetworkDiscovery/DiscoveredDeviceBuilder.test.ts +98 -21
  426. package/Tests/Utils/NetworkDiscovery/DiscoveryImportEligibility.test.ts +98 -20
  427. package/Tests/Utils/NetworkDiscovery/DiscoveryReverseDnsChain.test.ts +8 -7
  428. package/Tests/Utils/NetworkDiscovery/DiscoveryScanStatus.test.ts +117 -0
  429. package/Tests/Utils/NetworkDiscovery/PingMonitorBuilderForAddress.test.ts +274 -0
  430. package/Tests/Utils/NetworkSite/SiteStatusRollupUtil.test.ts +230 -51
  431. package/Tests/Utils/NetworkSite/TypeHierarchyUtil.test.ts +209 -0
  432. package/Tests/Utils/Rum/ChunkMath.test.ts +83 -0
  433. package/Tests/Utils/Rum/SessionReplayHealthDiagnosis.test.ts +993 -0
  434. package/Tests/Utils/Rum/SessionReplayStringMap.test.ts +245 -0
  435. package/Tests/Utils/StatusPage/ResourceSearch.test.ts +631 -0
  436. package/Tests/Utils/Telemetry/CaptureSpanExportGating.test.ts +145 -0
  437. package/Tests/Utils/Telemetry/OriginAllowList.test.ts +633 -0
  438. package/Tests/Utils/Uptime/DayUptimeGraphUtil.test.ts +461 -0
  439. package/Tests/Utils/ValueFormatter.test.ts +148 -0
  440. package/Types/AI/ExceptionAIClassification.ts +10 -24
  441. package/Types/CustomField/CustomFieldMappingCatalog.ts +161 -0
  442. package/Types/CustomField/CustomFieldMappingSourceResource.ts +19 -0
  443. package/Types/CustomField/CustomFieldValueMapping.ts +288 -0
  444. package/Types/Email/EmailTemplateType.ts +2 -0
  445. package/Types/EnterpriseLicense/EnterpriseLicenseInstanceSummary.ts +5 -0
  446. package/Types/EnterpriseLicense/EnterpriseLicenseUsageSnapshot.ts +13 -0
  447. package/Types/EnterpriseLicense/EnterpriseLicenseUserCountSource.ts +6 -0
  448. package/Types/Exception/ApiException.ts +10 -0
  449. package/Types/Exception/BadDataException.ts +11 -0
  450. package/Types/Exception/BadRequestException.ts +11 -0
  451. package/Types/Exception/Exception.ts +65 -0
  452. package/Types/Exception/ForbiddenException.ts +10 -0
  453. package/Types/Exception/NotAuthenticatedException.ts +10 -0
  454. package/Types/Exception/NotAuthorizedException.ts +10 -0
  455. package/Types/Exception/NotFoundException.ts +11 -0
  456. package/Types/Exception/PayloadTooLargeException.ts +11 -0
  457. package/Types/Exception/PaymentRequiredException.ts +10 -0
  458. package/Types/Exception/ServiceUnavailableException.ts +10 -0
  459. package/Types/Exception/SsoAuthorizationException.ts +10 -0
  460. package/Types/Exception/TenantNotFoundException.ts +11 -0
  461. package/Types/Exception/TimeoutException.ts +10 -0
  462. package/Types/Exception/TooManyRequestsException.ts +10 -0
  463. package/Types/Exception/UnableToReachServer.ts +10 -0
  464. package/Types/Exception/WebsiteRequestException.ts +10 -0
  465. package/Types/Icon/IconProp.ts +1 -0
  466. package/Types/JSONFunctions.ts +189 -43
  467. package/Types/Monitor/CephAlertTemplates.ts +157 -195
  468. package/Types/Monitor/CriteriaFilter.ts +60 -2
  469. package/Types/Monitor/DatabaseMetricCatalog.ts +693 -0
  470. package/Types/Monitor/DatabaseMonitor/DatabaseMonitorResponse.ts +83 -0
  471. package/Types/Monitor/DockerAlertTemplates.ts +338 -128
  472. package/Types/Monitor/DockerSwarmAlertTemplates.ts +95 -112
  473. package/Types/Monitor/HostAlertTemplates.ts +302 -130
  474. package/Types/Monitor/IotAlertTemplates.ts +112 -104
  475. package/Types/Monitor/KubernetesAlertTemplates.ts +415 -224
  476. package/Types/Monitor/KubernetesMetricCatalog.ts +23 -19
  477. package/Types/Monitor/MonitorCriteriaInstance.ts +76 -0
  478. package/Types/Monitor/MonitorMetricType.ts +71 -0
  479. package/Types/Monitor/MonitorStep.ts +76 -0
  480. package/Types/Monitor/MonitorStepDatabaseMonitor.ts +171 -0
  481. package/Types/Monitor/MonitorStepSqlMonitor.ts +2 -20
  482. package/Types/Monitor/MonitorType.ts +47 -1
  483. package/Types/Monitor/PodmanAlertTemplates.ts +116 -163
  484. package/Types/Monitor/ProxmoxAlertTemplates.ts +217 -99
  485. package/Types/Monitor/Recommendation/MonitorRecommendationSeverityMapper.ts +98 -6
  486. package/Types/Monitor/Recommendation/MonitorRecommendationUtil.ts +44 -7
  487. package/Types/Monitor/Recommendation/RecommendationCriteriaBuilder.ts +383 -0
  488. package/Types/Monitor/RumAlertTemplates.ts +46 -7
  489. package/Types/Monitor/SeriesContext/SeriesDebugHints.ts +596 -0
  490. package/Types/Monitor/SeriesContext/SeriesLabelDisplay.ts +554 -0
  491. package/Types/Monitor/ServiceAlertTemplates.ts +98 -11
  492. package/Types/Monitor/SnmpMonitor/NetworkDeviceAlertPack.ts +22 -1
  493. package/Types/Monitor/SqlConnectionConfig.ts +31 -0
  494. package/Types/Monitor/UptimeHistoryLabels.ts +56 -0
  495. package/Types/NetworkDevice/NetworkAlertPolicyScope.ts +343 -0
  496. package/Types/NetworkDevice/NetworkDeviceMonitoringMethod.ts +42 -22
  497. package/Types/NetworkSite/DefaultNetworkSiteTypeHierarchy.ts +30 -0
  498. package/Types/NotificationSetting/NotificationEmailRollupCategory.ts +255 -0
  499. package/Types/NotificationSetting/NotificationEmailRollupPolicy.ts +104 -0
  500. package/Types/NotificationSetting/RoutineEmailEvents.ts +30 -0
  501. package/Types/Permission.ts +90 -0
  502. package/Types/Probe/ProbeMonitorResponse.ts +16 -0
  503. package/Types/Rum/SessionReplay.ts +209 -0
  504. package/Types/Rum/SessionReplayApi.ts +722 -0
  505. package/Types/Rum/SessionReplayCaptureTrigger.ts +21 -12
  506. package/Types/Rum/SessionReplayConsentMode.ts +11 -7
  507. package/Types/Rum/SessionReplayCustomEvents.ts +549 -0
  508. package/Types/Rum/SessionReplayHealth.ts +238 -0
  509. package/Types/Telemetry/ErrorClass.ts +274 -0
  510. package/Types/Telemetry/TelemetryIngestSurface.ts +95 -0
  511. package/Types/Telemetry/TelemetryIngestionKeyPolicy.ts +75 -0
  512. package/Types/Telemetry/TelemetryIngestionKeyType.ts +29 -0
  513. package/Types/Telemetry/UnitOfWork.ts +59 -0
  514. package/Types/WebsiteRequest.ts +85 -3
  515. package/UI/Components/Charts/Area/AreaChart.tsx +13 -2
  516. package/UI/Components/Charts/Bar/BarChart.tsx +6 -2
  517. package/UI/Components/Charts/Line/LineChart.tsx +13 -2
  518. package/UI/Components/Charts/Types/XAxis/XAxis.ts +29 -0
  519. package/UI/Components/Charts/Utils/DataPoint.ts +22 -3
  520. package/UI/Components/Charts/Utils/TimeAnnotation.ts +76 -9
  521. package/UI/Components/Charts/Utils/XAxis.ts +217 -0
  522. package/UI/Components/CommandPalette/CommandPalette.tsx +2 -8
  523. package/UI/Components/CustomFields/CustomFieldsDetail.tsx +143 -25
  524. package/UI/Components/CustomFields/MapFromCustomFieldInput.tsx +216 -0
  525. package/UI/Components/EditionLabel/EditionLabel.tsx +4 -0
  526. package/UI/Components/Graphs/DayUptimeGraph.tsx +173 -8
  527. package/UI/Components/Graphs/UptimeBarTooltip.tsx +22 -278
  528. package/UI/Components/Graphs/UptimeDaySummary.tsx +327 -0
  529. package/UI/Components/Header/Header.tsx +25 -9
  530. package/UI/Components/Header/IconDropdown/IconDropdownItem.tsx +10 -1
  531. package/UI/Components/Header/IconDropdown/IconDropdownMenu.tsx +6 -1
  532. package/UI/Components/Header/ProjectPicker/ProjectPicker.tsx +6 -1
  533. package/UI/Components/HeaderAlert/NotificationBell/NotificationBellDropdown.tsx +6 -1
  534. package/UI/Components/Icon/Icon.tsx +11 -0
  535. package/UI/Components/JSONTable/JSONTable.tsx +2 -2
  536. package/UI/Components/KeyboardShortcut/KeyboardShortcutsModal.tsx +125 -0
  537. package/UI/Components/KeyboardShortcut/Screenshots/README.md +19 -0
  538. package/UI/Components/KeyboardShortcut/Screenshots/keyboard-shortcuts-command-palette.png +0 -0
  539. package/UI/Components/KeyboardShortcut/Screenshots/keyboard-shortcuts-dialog-dark.png +0 -0
  540. package/UI/Components/KeyboardShortcut/Screenshots/keyboard-shortcuts-dialog.png +0 -0
  541. package/UI/Components/KeyboardShortcut/Screenshots/keyboard-shortcuts-help-menu.png +0 -0
  542. package/UI/Components/KeyboardShortcut/Screenshots/keyboard-shortcuts-narrow.png +0 -0
  543. package/UI/Components/Modal/Modal.tsx +2 -8
  544. package/UI/Components/ModelTable/Column.ts +15 -0
  545. package/UI/Components/Monitor/SeriesDebugCommandsViewer.tsx +64 -0
  546. package/UI/Components/Monitor/SeriesLabelsViewer.tsx +93 -0
  547. package/UI/Components/MonitorGraphs/Uptime.tsx +14 -2
  548. package/UI/Components/MonitorGraphs/UptimeBarDayModal.tsx +63 -10
  549. package/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.ts +88 -0
  550. package/UI/Components/ProgressBar/ProgressBar.tsx +12 -1
  551. package/UI/Components/RadioButtons/BasicRadioButtons.tsx +37 -7
  552. package/UI/Components/SideMenu/SideMenu.tsx +123 -5
  553. package/UI/Components/SideMenu/SideMenuItem.tsx +76 -84
  554. package/UI/Components/SideMenu/SideMenuSection.tsx +55 -23
  555. package/UI/Components/SideOver/SideOver.tsx +21 -20
  556. package/UI/Components/StatusPage/ResourceGroupSection.tsx +40 -0
  557. package/UI/Components/Table/CellClassName.ts +81 -0
  558. package/UI/Components/Table/TableRow.tsx +20 -14
  559. package/UI/Components/Table/TableSkeletonRows.tsx +9 -9
  560. package/UI/Components/Table/Types/Column.ts +36 -0
  561. package/UI/Components/Tooltip/Tooltip.tsx +11 -1
  562. package/UI/Components/Workflow/ComponentsModal.tsx +60 -39
  563. package/UI/Components/Workflow/NodePlacement.ts +57 -0
  564. package/UI/Components/Workflow/Workflow.tsx +47 -18
  565. package/UI/Config.ts +15 -33
  566. package/UI/Utils/GlobalKeyboardShortcut.ts +208 -0
  567. package/UI/Utils/PageScrollLock.ts +79 -3
  568. package/UI/Utils/PermissionGate.ts +61 -0
  569. package/UI/Utils/SensitiveUrlToken.ts +112 -0
  570. package/UI/Utils/Telemetry/BrowserTelemetryConfig.ts +28 -0
  571. package/UI/Utils/Telemetry/Telemetry.ts +10 -8
  572. package/UI/Utils/TestLLMProvider.ts +11 -0
  573. package/Utils/API.ts +129 -3
  574. package/Utils/EnterpriseLicense/EnterpriseLicenseSeats.ts +16 -0
  575. package/Utils/EnterpriseLicense/EnterpriseLicenseUsage.ts +191 -11
  576. package/Utils/HTTPResponseBodyReader.ts +221 -0
  577. package/Utils/Monitor/MonitorMetricType.ts +153 -1
  578. package/Utils/Monitor/NetworkTopologyUtil.ts +23 -3
  579. package/Utils/NetworkDevice/DeviceHealthStateUtil.ts +65 -14
  580. package/Utils/NetworkDevice/DeviceReachabilityUtil.ts +43 -14
  581. package/Utils/NetworkDevice/NetworkAlertPolicyBootstrapUtil.ts +247 -0
  582. package/Utils/NetworkDevice/SnmpCredentialUtil.ts +68 -0
  583. package/Utils/NetworkDiscovery/AutoImportRuleMatcher.ts +15 -7
  584. package/Utils/NetworkDiscovery/DiscoveredDeviceBuilder.ts +52 -17
  585. package/Utils/NetworkDiscovery/DiscoveryImportEligibility.ts +55 -23
  586. package/Utils/NetworkDiscovery/DiscoveryScanStatus.ts +77 -0
  587. package/Utils/NetworkDiscovery/PingMonitorBuilder.ts +115 -13
  588. package/Utils/NetworkSite/SiteStatusRollupUtil.ts +66 -20
  589. package/Utils/NetworkSite/TypeHierarchyUtil.ts +313 -0
  590. package/Utils/Rum/ChunkMath.ts +106 -0
  591. package/Utils/Rum/SessionReplayHealth.ts +732 -0
  592. package/Utils/Rum/SessionReplayStringMap.ts +226 -0
  593. package/Utils/Schema/ModelSchema.ts +1 -0
  594. package/Utils/StatusPage/ResourceSearch.ts +290 -0
  595. package/Utils/Telemetry/OriginAllowList.ts +355 -0
  596. package/Utils/Uptime/DayUptimeGraphUtil.ts +205 -0
  597. package/Utils/ValueFormatter.ts +35 -1
  598. package/build/dist/Models/AnalyticsModels/RumSession.js +102 -19
  599. package/build/dist/Models/AnalyticsModels/RumSession.js.map +1 -1
  600. package/build/dist/Models/AnalyticsModels/RumSessionChunk.js +11 -9
  601. package/build/dist/Models/AnalyticsModels/RumSessionChunk.js.map +1 -1
  602. package/build/dist/Models/AnalyticsModels/Span.js +14 -0
  603. package/build/dist/Models/AnalyticsModels/Span.js.map +1 -1
  604. package/build/dist/Models/DatabaseModels/AlertCustomField.js +79 -3
  605. package/build/dist/Models/DatabaseModels/AlertCustomField.js.map +1 -1
  606. package/build/dist/Models/DatabaseModels/ApiKeyPermission.js +3 -27
  607. package/build/dist/Models/DatabaseModels/ApiKeyPermission.js.map +1 -1
  608. package/build/dist/Models/DatabaseModels/EnterpriseLicense.js +59 -0
  609. package/build/dist/Models/DatabaseModels/EnterpriseLicense.js.map +1 -1
  610. package/build/dist/Models/DatabaseModels/IncidentCustomField.js +79 -3
  611. package/build/dist/Models/DatabaseModels/IncidentCustomField.js.map +1 -1
  612. package/build/dist/Models/DatabaseModels/Index.js +10 -0
  613. package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
  614. package/build/dist/Models/DatabaseModels/InventoryItemCustomField.js +79 -3
  615. package/build/dist/Models/DatabaseModels/InventoryItemCustomField.js.map +1 -1
  616. package/build/dist/Models/DatabaseModels/Monitor.js +75 -0
  617. package/build/dist/Models/DatabaseModels/Monitor.js.map +1 -1
  618. package/build/dist/Models/DatabaseModels/MonitorCustomField.js +79 -3
  619. package/build/dist/Models/DatabaseModels/MonitorCustomField.js.map +1 -1
  620. package/build/dist/Models/DatabaseModels/NetworkAlertPolicy.js +713 -0
  621. package/build/dist/Models/DatabaseModels/NetworkAlertPolicy.js.map +1 -0
  622. package/build/dist/Models/DatabaseModels/NetworkDevice.js +180 -1
  623. package/build/dist/Models/DatabaseModels/NetworkDevice.js.map +1 -1
  624. package/build/dist/Models/DatabaseModels/NetworkSite.js +200 -2
  625. package/build/dist/Models/DatabaseModels/NetworkSite.js.map +1 -1
  626. package/build/dist/Models/DatabaseModels/NetworkSiteType.js +102 -3
  627. package/build/dist/Models/DatabaseModels/NetworkSiteType.js.map +1 -1
  628. package/build/dist/Models/DatabaseModels/NetworkSnmpCredentialProfile.js +878 -0
  629. package/build/dist/Models/DatabaseModels/NetworkSnmpCredentialProfile.js.map +1 -0
  630. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyCustomField.js +79 -3
  631. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyCustomField.js.map +1 -1
  632. package/build/dist/Models/DatabaseModels/RumApplication.js +6 -6
  633. package/build/dist/Models/DatabaseModels/RumApplication.js.map +1 -1
  634. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceCustomField.js +79 -3
  635. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceCustomField.js.map +1 -1
  636. package/build/dist/Models/DatabaseModels/StatusPageCustomField.js +79 -3
  637. package/build/dist/Models/DatabaseModels/StatusPageCustomField.js.map +1 -1
  638. package/build/dist/Models/DatabaseModels/TeamCustomField.js +79 -3
  639. package/build/dist/Models/DatabaseModels/TeamCustomField.js.map +1 -1
  640. package/build/dist/Models/DatabaseModels/TeamMember.js +0 -9
  641. package/build/dist/Models/DatabaseModels/TeamMember.js.map +1 -1
  642. package/build/dist/Models/DatabaseModels/TeamMemberCustomField.js +79 -3
  643. package/build/dist/Models/DatabaseModels/TeamMemberCustomField.js.map +1 -1
  644. package/build/dist/Models/DatabaseModels/TeamPermission.js +3 -24
  645. package/build/dist/Models/DatabaseModels/TeamPermission.js.map +1 -1
  646. package/build/dist/Models/DatabaseModels/TelemetryException.js +123 -0
  647. package/build/dist/Models/DatabaseModels/TelemetryException.js.map +1 -1
  648. package/build/dist/Models/DatabaseModels/TelemetryIngestionKey.js +267 -0
  649. package/build/dist/Models/DatabaseModels/TelemetryIngestionKey.js.map +1 -1
  650. package/build/dist/Models/DatabaseModels/UserNotificationEmailRollupBatch.js +363 -0
  651. package/build/dist/Models/DatabaseModels/UserNotificationEmailRollupBatch.js.map +1 -0
  652. package/build/dist/Models/DatabaseModels/UserNotificationEmailRollupItem.js +402 -0
  653. package/build/dist/Models/DatabaseModels/UserNotificationEmailRollupItem.js.map +1 -0
  654. package/build/dist/Models/DatabaseModels/UserNotificationEmailRollupSetting.js +296 -0
  655. package/build/dist/Models/DatabaseModels/UserNotificationEmailRollupSetting.js.map +1 -0
  656. package/build/dist/Models/DatabaseModels/UserTelegram.js +0 -4
  657. package/build/dist/Models/DatabaseModels/UserTelegram.js.map +1 -1
  658. package/build/dist/Server/API/EnterpriseLicenseAPI.js +273 -60
  659. package/build/dist/Server/API/EnterpriseLicenseAPI.js.map +1 -1
  660. package/build/dist/Server/API/LlmProviderAPI.js +108 -13
  661. package/build/dist/Server/API/LlmProviderAPI.js.map +1 -1
  662. package/build/dist/Server/API/TelemetryAPI.js +769 -109
  663. package/build/dist/Server/API/TelemetryAPI.js.map +1 -1
  664. package/build/dist/Server/API/UserNotificationSettingAPI.js +35 -0
  665. package/build/dist/Server/API/UserNotificationSettingAPI.js.map +1 -0
  666. package/build/dist/Server/API/UserTelegramAPI.js +28 -6
  667. package/build/dist/Server/API/UserTelegramAPI.js.map +1 -1
  668. package/build/dist/Server/EnvironmentConfig.js +41 -2
  669. package/build/dist/Server/EnvironmentConfig.js.map +1 -1
  670. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1790700000000-AddNetworkSiteTypeParentHierarchy.js +24 -0
  671. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1790700000000-AddNetworkSiteTypeParentHierarchy.js.map +1 -0
  672. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1790900000000-AddEnterpriseLicenseUsageProvenance.js +16 -0
  673. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1790900000000-AddEnterpriseLicenseUsageProvenance.js.map +1 -0
  674. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1790900000000-AddTelemetryExceptionErrorClass.js +111 -0
  675. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1790900000000-AddTelemetryExceptionErrorClass.js.map +1 -0
  676. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791000000000-AddUserNotificationEmailRollup.js +77 -0
  677. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791000000000-AddUserNotificationEmailRollup.js.map +1 -0
  678. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791100000000-AddUserNotificationEmailRollupSetting.js +50 -0
  679. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791100000000-AddUserNotificationEmailRollupSetting.js.map +1 -0
  680. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791200000000-AddNetworkSnmpCredentialProfilesAndAlertPolicies.js +83 -0
  681. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791200000000-AddNetworkSnmpCredentialProfilesAndAlertPolicies.js.map +1 -0
  682. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791300000000-AddTelemetryIngestionKeyType.js +60 -0
  683. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791300000000-AddTelemetryIngestionKeyType.js.map +1 -0
  684. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791400000000-SessionReplayRecordEverySessionByDefault.js +53 -0
  685. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791400000000-SessionReplayRecordEverySessionByDefault.js.map +1 -0
  686. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791500000000-WidenCustomFieldDropdownOptions.js +82 -0
  687. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791500000000-WidenCustomFieldDropdownOptions.js.map +1 -0
  688. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791600000000-AddCustomFieldValueMapping.js +46 -0
  689. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791600000000-AddCustomFieldValueMapping.js.map +1 -0
  690. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +20 -0
  691. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  692. package/build/dist/Server/Infrastructure/QueueWorker.js +52 -12
  693. package/build/dist/Server/Infrastructure/QueueWorker.js.map +1 -1
  694. package/build/dist/Server/Infrastructure/Semaphore.js +1 -0
  695. package/build/dist/Server/Infrastructure/Semaphore.js.map +1 -1
  696. package/build/dist/Server/Middleware/BearerTokenAuthorization.js +12 -0
  697. package/build/dist/Server/Middleware/BearerTokenAuthorization.js.map +1 -1
  698. package/build/dist/Server/Middleware/ProjectAuthorization.js +11 -0
  699. package/build/dist/Server/Middleware/ProjectAuthorization.js.map +1 -1
  700. package/build/dist/Server/Middleware/SCIMAuthorization.js +12 -0
  701. package/build/dist/Server/Middleware/SCIMAuthorization.js.map +1 -1
  702. package/build/dist/Server/Middleware/TelemetryIngest.js +326 -8
  703. package/build/dist/Server/Middleware/TelemetryIngest.js.map +1 -1
  704. package/build/dist/Server/Services/AIBillingService.js +70 -16
  705. package/build/dist/Server/Services/AIBillingService.js.map +1 -1
  706. package/build/dist/Server/Services/AccessTokenService.js +1 -0
  707. package/build/dist/Server/Services/AccessTokenService.js.map +1 -1
  708. package/build/dist/Server/Services/AlertCustomFieldService.js +93 -0
  709. package/build/dist/Server/Services/AlertCustomFieldService.js.map +1 -1
  710. package/build/dist/Server/Services/AlertService.js +34 -0
  711. package/build/dist/Server/Services/AlertService.js.map +1 -1
  712. package/build/dist/Server/Services/ApiKeyPermissionService.js +331 -28
  713. package/build/dist/Server/Services/ApiKeyPermissionService.js.map +1 -1
  714. package/build/dist/Server/Services/CustomFieldMappingService.js +614 -0
  715. package/build/dist/Server/Services/CustomFieldMappingService.js.map +1 -0
  716. package/build/dist/Server/Services/EnterpriseLicenseInstanceService.js +167 -0
  717. package/build/dist/Server/Services/EnterpriseLicenseInstanceService.js.map +1 -1
  718. package/build/dist/Server/Services/EnterpriseLicenseService.js +39 -0
  719. package/build/dist/Server/Services/EnterpriseLicenseService.js.map +1 -1
  720. package/build/dist/Server/Services/GlobalConfigService.js +133 -0
  721. package/build/dist/Server/Services/GlobalConfigService.js.map +1 -1
  722. package/build/dist/Server/Services/IncidentCustomFieldService.js +93 -0
  723. package/build/dist/Server/Services/IncidentCustomFieldService.js.map +1 -1
  724. package/build/dist/Server/Services/IncidentService.js +32 -0
  725. package/build/dist/Server/Services/IncidentService.js.map +1 -1
  726. package/build/dist/Server/Services/Index.js +10 -0
  727. package/build/dist/Server/Services/Index.js.map +1 -1
  728. package/build/dist/Server/Services/MetricService.js +163 -0
  729. package/build/dist/Server/Services/MetricService.js.map +1 -1
  730. package/build/dist/Server/Services/MonitorService.js +148 -21
  731. package/build/dist/Server/Services/MonitorService.js.map +1 -1
  732. package/build/dist/Server/Services/MonitorStatusTimelineService.js +127 -8
  733. package/build/dist/Server/Services/MonitorStatusTimelineService.js.map +1 -1
  734. package/build/dist/Server/Services/MonitorTemplateService.js +162 -0
  735. package/build/dist/Server/Services/MonitorTemplateService.js.map +1 -1
  736. package/build/dist/Server/Services/NetworkAlertPolicyEngineService.js +1683 -0
  737. package/build/dist/Server/Services/NetworkAlertPolicyEngineService.js.map +1 -0
  738. package/build/dist/Server/Services/NetworkAlertPolicyService.js +732 -0
  739. package/build/dist/Server/Services/NetworkAlertPolicyService.js.map +1 -0
  740. package/build/dist/Server/Services/NetworkDeviceAutoImportRuleEngineService.js +89 -36
  741. package/build/dist/Server/Services/NetworkDeviceAutoImportRuleEngineService.js.map +1 -1
  742. package/build/dist/Server/Services/NetworkDeviceAutoImportRuleService.js +54 -11
  743. package/build/dist/Server/Services/NetworkDeviceAutoImportRuleService.js.map +1 -1
  744. package/build/dist/Server/Services/NetworkDeviceService.js +841 -70
  745. package/build/dist/Server/Services/NetworkDeviceService.js.map +1 -1
  746. package/build/dist/Server/Services/NetworkSiteService.js +1145 -107
  747. package/build/dist/Server/Services/NetworkSiteService.js.map +1 -1
  748. package/build/dist/Server/Services/NetworkSiteTypeService.js +863 -0
  749. package/build/dist/Server/Services/NetworkSiteTypeService.js.map +1 -1
  750. package/build/dist/Server/Services/NetworkSnmpCredentialProfileService.js +217 -0
  751. package/build/dist/Server/Services/NetworkSnmpCredentialProfileService.js.map +1 -0
  752. package/build/dist/Server/Services/NotificationService.js +80 -17
  753. package/build/dist/Server/Services/NotificationService.js.map +1 -1
  754. package/build/dist/Server/Services/ProjectService.js +88 -30
  755. package/build/dist/Server/Services/ProjectService.js.map +1 -1
  756. package/build/dist/Server/Services/RoutineEmailSettingsService.js +69 -0
  757. package/build/dist/Server/Services/RoutineEmailSettingsService.js.map +1 -0
  758. package/build/dist/Server/Services/RumSessionReplayViewService.js +86 -24
  759. package/build/dist/Server/Services/RumSessionReplayViewService.js.map +1 -1
  760. package/build/dist/Server/Services/ScheduledMaintenanceCustomFieldService.js +93 -0
  761. package/build/dist/Server/Services/ScheduledMaintenanceCustomFieldService.js.map +1 -1
  762. package/build/dist/Server/Services/ScheduledMaintenanceService.js +29 -0
  763. package/build/dist/Server/Services/ScheduledMaintenanceService.js.map +1 -1
  764. package/build/dist/Server/Services/StatusPagePrivateUserService.js +92 -2
  765. package/build/dist/Server/Services/StatusPagePrivateUserService.js.map +1 -1
  766. package/build/dist/Server/Services/TeamMemberService.js +62 -2
  767. package/build/dist/Server/Services/TeamMemberService.js.map +1 -1
  768. package/build/dist/Server/Services/TeamPermissionService.js +166 -3
  769. package/build/dist/Server/Services/TeamPermissionService.js.map +1 -1
  770. package/build/dist/Server/Services/TelemetryIngestionKeyService.js +562 -18
  771. package/build/dist/Server/Services/TelemetryIngestionKeyService.js.map +1 -1
  772. package/build/dist/Server/Services/UserNotificationEmailRollupBatchService.js +76 -0
  773. package/build/dist/Server/Services/UserNotificationEmailRollupBatchService.js.map +1 -0
  774. package/build/dist/Server/Services/UserNotificationEmailRollupItemService.js +77 -0
  775. package/build/dist/Server/Services/UserNotificationEmailRollupItemService.js.map +1 -0
  776. package/build/dist/Server/Services/UserNotificationEmailRollupSettingService.js +111 -0
  777. package/build/dist/Server/Services/UserNotificationEmailRollupSettingService.js.map +1 -0
  778. package/build/dist/Server/Services/UserNotificationSettingService.js +66 -20
  779. package/build/dist/Server/Services/UserNotificationSettingService.js.map +1 -1
  780. package/build/dist/Server/Services/UserService.js +90 -0
  781. package/build/dist/Server/Services/UserService.js.map +1 -1
  782. package/build/dist/Server/Services/UserTelegramService.js +257 -4
  783. package/build/dist/Server/Services/UserTelegramService.js.map +1 -1
  784. package/build/dist/Server/Types/Database/QueryHelper.js +1 -1
  785. package/build/dist/Server/Types/Database/QueryHelper.js.map +1 -1
  786. package/build/dist/Server/Utils/AI/Chat/ObservabilityChatPrompt.js +14 -3
  787. package/build/dist/Server/Utils/AI/Chat/ObservabilityChatPrompt.js.map +1 -1
  788. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/ExceptionSpikeDetector.js +10 -0
  789. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/ExceptionSpikeDetector.js.map +1 -1
  790. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/NewExceptionDetector.js +10 -0
  791. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/NewExceptionDetector.js.map +1 -1
  792. package/build/dist/Server/Utils/AI/SRE/Insights/InsightTriageRunner.js +54 -1
  793. package/build/dist/Server/Utils/AI/SRE/Insights/InsightTriageRunner.js.map +1 -1
  794. package/build/dist/Server/Utils/AI/Toolbox/AlertTools.js +18 -4
  795. package/build/dist/Server/Utils/AI/Toolbox/AlertTools.js.map +1 -1
  796. package/build/dist/Server/Utils/APIKey/AccessPermission.js +2 -2
  797. package/build/dist/Server/Utils/APIKey/AccessPermission.js.map +1 -1
  798. package/build/dist/Server/Utils/Billing/BillingFailureNoticeThrottle.js +59 -0
  799. package/build/dist/Server/Utils/Billing/BillingFailureNoticeThrottle.js.map +1 -0
  800. package/build/dist/Server/Utils/CustomField/CustomFieldDefinitionMappingHooks.js +27 -0
  801. package/build/dist/Server/Utils/CustomField/CustomFieldDefinitionMappingHooks.js.map +1 -0
  802. package/build/dist/Server/Utils/CustomField/CustomFieldMappingRegistry.js +226 -0
  803. package/build/dist/Server/Utils/CustomField/CustomFieldMappingRegistry.js.map +1 -0
  804. package/build/dist/Server/Utils/CustomField/CustomFieldMappingValidator.js +189 -0
  805. package/build/dist/Server/Utils/CustomField/CustomFieldMappingValidator.js.map +1 -0
  806. package/build/dist/Server/Utils/DataSource/EgressGuard.js +121 -7
  807. package/build/dist/Server/Utils/DataSource/EgressGuard.js.map +1 -1
  808. package/build/dist/Server/Utils/DataSource/HttpFetch.js +2 -1
  809. package/build/dist/Server/Utils/DataSource/HttpFetch.js.map +1 -1
  810. package/build/dist/Server/Utils/EmailRollup/EmailRollupConstants.js +124 -0
  811. package/build/dist/Server/Utils/EmailRollup/EmailRollupConstants.js.map +1 -0
  812. package/build/dist/Server/Utils/EmailRollup/EmailRollupFlushRunner.js +733 -0
  813. package/build/dist/Server/Utils/EmailRollup/EmailRollupFlushRunner.js.map +1 -0
  814. package/build/dist/Server/Utils/EmailRollup/EmailRollupRenderer.js +497 -0
  815. package/build/dist/Server/Utils/EmailRollup/EmailRollupRenderer.js.map +1 -0
  816. package/build/dist/Server/Utils/EmailRollup/EmailRollupWriter.js +257 -0
  817. package/build/dist/Server/Utils/EmailRollup/EmailRollupWriter.js.map +1 -0
  818. package/build/dist/Server/Utils/FrontendEnvironment.js +33 -0
  819. package/build/dist/Server/Utils/FrontendEnvironment.js.map +1 -0
  820. package/build/dist/Server/Utils/LLM/LLMService.js +64 -1
  821. package/build/dist/Server/Utils/LLM/LLMService.js.map +1 -1
  822. package/build/dist/Server/Utils/LogRedaction.js +28 -0
  823. package/build/dist/Server/Utils/LogRedaction.js.map +1 -1
  824. package/build/dist/Server/Utils/Logger.js +73 -1
  825. package/build/dist/Server/Utils/Logger.js.map +1 -1
  826. package/build/dist/Server/Utils/Monitor/Criteria/CompareCriteria.js +287 -68
  827. package/build/dist/Server/Utils/Monitor/Criteria/CompareCriteria.js.map +1 -1
  828. package/build/dist/Server/Utils/Monitor/Criteria/DatabaseMonitorCriteria.js +141 -0
  829. package/build/dist/Server/Utils/Monitor/Criteria/DatabaseMonitorCriteria.js.map +1 -0
  830. package/build/dist/Server/Utils/Monitor/Criteria/EvaluateOverTime.js +8 -1
  831. package/build/dist/Server/Utils/Monitor/Criteria/EvaluateOverTime.js.map +1 -1
  832. package/build/dist/Server/Utils/Monitor/Criteria/IncomingRequestCriteria.js +20 -4
  833. package/build/dist/Server/Utils/Monitor/Criteria/IncomingRequestCriteria.js.map +1 -1
  834. package/build/dist/Server/Utils/Monitor/Criteria/SnmpMonitorCriteria.js +51 -1
  835. package/build/dist/Server/Utils/Monitor/Criteria/SnmpMonitorCriteria.js.map +1 -1
  836. package/build/dist/Server/Utils/Monitor/MonitorAlert.js +29 -6
  837. package/build/dist/Server/Utils/Monitor/MonitorAlert.js.map +1 -1
  838. package/build/dist/Server/Utils/Monitor/MonitorCriteriaDataExtractor.js +7 -0
  839. package/build/dist/Server/Utils/Monitor/MonitorCriteriaDataExtractor.js.map +1 -1
  840. package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js +125 -13
  841. package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js.map +1 -1
  842. package/build/dist/Server/Utils/Monitor/MonitorCriteriaObservationBuilder.js +158 -6
  843. package/build/dist/Server/Utils/Monitor/MonitorCriteriaObservationBuilder.js.map +1 -1
  844. package/build/dist/Server/Utils/Monitor/MonitorIncident.js +22 -6
  845. package/build/dist/Server/Utils/Monitor/MonitorIncident.js.map +1 -1
  846. package/build/dist/Server/Utils/Monitor/MonitorMetricUtil.js +33 -0
  847. package/build/dist/Server/Utils/Monitor/MonitorMetricUtil.js.map +1 -1
  848. package/build/dist/Server/Utils/Monitor/MonitorTemplateUtil.js +54 -0
  849. package/build/dist/Server/Utils/Monitor/MonitorTemplateUtil.js.map +1 -1
  850. package/build/dist/Server/Utils/Monitor/NetworkDeviceHydrationUtil.js +330 -21
  851. package/build/dist/Server/Utils/Monitor/NetworkDeviceHydrationUtil.js.map +1 -1
  852. package/build/dist/Server/Utils/Monitor/NetworkDeviceMetricUtil.js +55 -10
  853. package/build/dist/Server/Utils/Monitor/NetworkDeviceMetricUtil.js.map +1 -1
  854. package/build/dist/Server/Utils/Monitor/NetworkDeviceWalkUtil.js +178 -49
  855. package/build/dist/Server/Utils/Monitor/NetworkDeviceWalkUtil.js.map +1 -1
  856. package/build/dist/Server/Utils/Monitor/NetworkInventoryUtil.js +119 -29
  857. package/build/dist/Server/Utils/Monitor/NetworkInventoryUtil.js.map +1 -1
  858. package/build/dist/Server/Utils/Monitor/SeriesContextEnricher.js +237 -0
  859. package/build/dist/Server/Utils/Monitor/SeriesContextEnricher.js.map +1 -0
  860. package/build/dist/Server/Utils/NetworkDevice/DeviceHealthAggregation.js +30 -17
  861. package/build/dist/Server/Utils/NetworkDevice/DeviceHealthAggregation.js.map +1 -1
  862. package/build/dist/Server/Utils/NetworkSite/NetworkSiteHierarchyLock.js +158 -0
  863. package/build/dist/Server/Utils/NetworkSite/NetworkSiteHierarchyLock.js.map +1 -0
  864. package/build/dist/Server/Utils/OutboundUserAgent.js +123 -0
  865. package/build/dist/Server/Utils/OutboundUserAgent.js.map +1 -0
  866. package/build/dist/Server/Utils/SSRFProtection.js +136 -9
  867. package/build/dist/Server/Utils/SSRFProtection.js.map +1 -1
  868. package/build/dist/Server/Utils/SessionReplay/SessionReplayGateCache.js +174 -89
  869. package/build/dist/Server/Utils/SessionReplay/SessionReplayGateCache.js.map +1 -1
  870. package/build/dist/Server/Utils/SessionReplay/SessionReplayHealthCounters.js +223 -0
  871. package/build/dist/Server/Utils/SessionReplay/SessionReplayHealthCounters.js.map +1 -0
  872. package/build/dist/Server/Utils/SessionReplay/SessionReplayReadService.js +945 -164
  873. package/build/dist/Server/Utils/SessionReplay/SessionReplayReadService.js.map +1 -1
  874. package/build/dist/Server/Utils/StartServer.js +41 -28
  875. package/build/dist/Server/Utils/StartServer.js.map +1 -1
  876. package/build/dist/Server/Utils/TelegramVerificationToken.js +129 -0
  877. package/build/dist/Server/Utils/TelegramVerificationToken.js.map +1 -0
  878. package/build/dist/Server/Utils/Telemetry/CaptureSpan.js +28 -8
  879. package/build/dist/Server/Utils/Telemetry/CaptureSpan.js.map +1 -1
  880. package/build/dist/Server/Utils/Telemetry/ErrorClassResolver.js +95 -0
  881. package/build/dist/Server/Utils/Telemetry/ErrorClassResolver.js.map +1 -0
  882. package/build/dist/Server/Utils/Telemetry/PinServiceName.js +163 -0
  883. package/build/dist/Server/Utils/Telemetry/PinServiceName.js.map +1 -0
  884. package/build/dist/Server/Utils/Telemetry/SpanUtil.js +29 -0
  885. package/build/dist/Server/Utils/Telemetry/SpanUtil.js.map +1 -1
  886. package/build/dist/Server/Utils/Telemetry/TelemetryFanInWriter.js +28 -15
  887. package/build/dist/Server/Utils/Telemetry/TelemetryFanInWriter.js.map +1 -1
  888. package/build/dist/Server/Utils/Telemetry/TelemetryIngestionKeyGuard.js +64 -0
  889. package/build/dist/Server/Utils/Telemetry/TelemetryIngestionKeyGuard.js.map +1 -0
  890. package/build/dist/Server/Utils/Telemetry/TelemetryIngestionKeyRateLimiter.js +171 -0
  891. package/build/dist/Server/Utils/Telemetry/TelemetryIngestionKeyRateLimiter.js.map +1 -0
  892. package/build/dist/Server/Utils/Telemetry.js +162 -46
  893. package/build/dist/Server/Utils/Telemetry.js.map +1 -1
  894. package/build/dist/Server/Utils/VM/VMAPI.js.map +1 -1
  895. package/build/dist/Server/Utils/VM/VMRunner.js +780 -69
  896. package/build/dist/Server/Utils/VM/VMRunner.js.map +1 -1
  897. package/build/dist/Types/AI/ExceptionAIClassification.js +10 -24
  898. package/build/dist/Types/AI/ExceptionAIClassification.js.map +1 -1
  899. package/build/dist/Types/CustomField/CustomFieldMappingCatalog.js +60 -0
  900. package/build/dist/Types/CustomField/CustomFieldMappingCatalog.js.map +1 -0
  901. package/build/dist/Types/CustomField/CustomFieldMappingSourceResource.js +20 -0
  902. package/build/dist/Types/CustomField/CustomFieldMappingSourceResource.js.map +1 -0
  903. package/build/dist/Types/CustomField/CustomFieldValueMapping.js +141 -0
  904. package/build/dist/Types/CustomField/CustomFieldValueMapping.js.map +1 -0
  905. package/build/dist/Types/Email/EmailTemplateType.js +1 -0
  906. package/build/dist/Types/Email/EmailTemplateType.js.map +1 -1
  907. package/build/dist/Types/EnterpriseLicense/EnterpriseLicenseUsageSnapshot.js +2 -0
  908. package/build/dist/Types/EnterpriseLicense/EnterpriseLicenseUsageSnapshot.js.map +1 -0
  909. package/build/dist/Types/EnterpriseLicense/EnterpriseLicenseUserCountSource.js +7 -0
  910. package/build/dist/Types/EnterpriseLicense/EnterpriseLicenseUserCountSource.js.map +1 -0
  911. package/build/dist/Types/Exception/ApiException.js +9 -0
  912. package/build/dist/Types/Exception/ApiException.js.map +1 -1
  913. package/build/dist/Types/Exception/BadDataException.js +10 -0
  914. package/build/dist/Types/Exception/BadDataException.js.map +1 -1
  915. package/build/dist/Types/Exception/BadRequestException.js +10 -0
  916. package/build/dist/Types/Exception/BadRequestException.js.map +1 -1
  917. package/build/dist/Types/Exception/Exception.js +56 -0
  918. package/build/dist/Types/Exception/Exception.js.map +1 -1
  919. package/build/dist/Types/Exception/ForbiddenException.js +9 -0
  920. package/build/dist/Types/Exception/ForbiddenException.js.map +1 -1
  921. package/build/dist/Types/Exception/NotAuthenticatedException.js +9 -0
  922. package/build/dist/Types/Exception/NotAuthenticatedException.js.map +1 -1
  923. package/build/dist/Types/Exception/NotAuthorizedException.js +9 -0
  924. package/build/dist/Types/Exception/NotAuthorizedException.js.map +1 -1
  925. package/build/dist/Types/Exception/NotFoundException.js +10 -0
  926. package/build/dist/Types/Exception/NotFoundException.js.map +1 -1
  927. package/build/dist/Types/Exception/PayloadTooLargeException.js +10 -0
  928. package/build/dist/Types/Exception/PayloadTooLargeException.js.map +1 -1
  929. package/build/dist/Types/Exception/PaymentRequiredException.js +9 -0
  930. package/build/dist/Types/Exception/PaymentRequiredException.js.map +1 -1
  931. package/build/dist/Types/Exception/ServiceUnavailableException.js +9 -0
  932. package/build/dist/Types/Exception/ServiceUnavailableException.js.map +1 -1
  933. package/build/dist/Types/Exception/SsoAuthorizationException.js +9 -0
  934. package/build/dist/Types/Exception/SsoAuthorizationException.js.map +1 -1
  935. package/build/dist/Types/Exception/TenantNotFoundException.js +10 -0
  936. package/build/dist/Types/Exception/TenantNotFoundException.js.map +1 -1
  937. package/build/dist/Types/Exception/TimeoutException.js +9 -0
  938. package/build/dist/Types/Exception/TimeoutException.js.map +1 -1
  939. package/build/dist/Types/Exception/TooManyRequestsException.js +9 -0
  940. package/build/dist/Types/Exception/TooManyRequestsException.js.map +1 -1
  941. package/build/dist/Types/Exception/UnableToReachServer.js +9 -0
  942. package/build/dist/Types/Exception/UnableToReachServer.js.map +1 -1
  943. package/build/dist/Types/Exception/WebsiteRequestException.js +9 -0
  944. package/build/dist/Types/Exception/WebsiteRequestException.js.map +1 -1
  945. package/build/dist/Types/Icon/IconProp.js +1 -0
  946. package/build/dist/Types/Icon/IconProp.js.map +1 -1
  947. package/build/dist/Types/JSONFunctions.js +118 -37
  948. package/build/dist/Types/JSONFunctions.js.map +1 -1
  949. package/build/dist/Types/Monitor/CephAlertTemplates.js +130 -171
  950. package/build/dist/Types/Monitor/CephAlertTemplates.js.map +1 -1
  951. package/build/dist/Types/Monitor/CriteriaFilter.js +45 -2
  952. package/build/dist/Types/Monitor/CriteriaFilter.js.map +1 -1
  953. package/build/dist/Types/Monitor/DatabaseMetricCatalog.js +594 -0
  954. package/build/dist/Types/Monitor/DatabaseMetricCatalog.js.map +1 -0
  955. package/build/dist/Types/Monitor/DatabaseMonitor/DatabaseMonitorResponse.js +21 -0
  956. package/build/dist/Types/Monitor/DatabaseMonitor/DatabaseMonitorResponse.js.map +1 -0
  957. package/build/dist/Types/Monitor/DockerAlertTemplates.js +286 -121
  958. package/build/dist/Types/Monitor/DockerAlertTemplates.js.map +1 -1
  959. package/build/dist/Types/Monitor/DockerSwarmAlertTemplates.js +84 -105
  960. package/build/dist/Types/Monitor/DockerSwarmAlertTemplates.js.map +1 -1
  961. package/build/dist/Types/Monitor/HostAlertTemplates.js +250 -122
  962. package/build/dist/Types/Monitor/HostAlertTemplates.js.map +1 -1
  963. package/build/dist/Types/Monitor/IotAlertTemplates.js +81 -81
  964. package/build/dist/Types/Monitor/IotAlertTemplates.js.map +1 -1
  965. package/build/dist/Types/Monitor/KubernetesAlertTemplates.js +375 -215
  966. package/build/dist/Types/Monitor/KubernetesAlertTemplates.js.map +1 -1
  967. package/build/dist/Types/Monitor/KubernetesMetricCatalog.js +19 -19
  968. package/build/dist/Types/Monitor/KubernetesMetricCatalog.js.map +1 -1
  969. package/build/dist/Types/Monitor/MonitorCriteriaInstance.js +70 -0
  970. package/build/dist/Types/Monitor/MonitorCriteriaInstance.js.map +1 -1
  971. package/build/dist/Types/Monitor/MonitorMetricType.js +61 -0
  972. package/build/dist/Types/Monitor/MonitorMetricType.js.map +1 -1
  973. package/build/dist/Types/Monitor/MonitorStep.js +54 -0
  974. package/build/dist/Types/Monitor/MonitorStep.js.map +1 -1
  975. package/build/dist/Types/Monitor/MonitorStepDatabaseMonitor.js +122 -0
  976. package/build/dist/Types/Monitor/MonitorStepDatabaseMonitor.js.map +1 -0
  977. package/build/dist/Types/Monitor/MonitorStepSqlMonitor.js.map +1 -1
  978. package/build/dist/Types/Monitor/MonitorType.js +45 -1
  979. package/build/dist/Types/Monitor/MonitorType.js.map +1 -1
  980. package/build/dist/Types/Monitor/PodmanAlertTemplates.js +104 -153
  981. package/build/dist/Types/Monitor/PodmanAlertTemplates.js.map +1 -1
  982. package/build/dist/Types/Monitor/ProxmoxAlertTemplates.js +156 -91
  983. package/build/dist/Types/Monitor/ProxmoxAlertTemplates.js.map +1 -1
  984. package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationSeverityMapper.js +67 -6
  985. package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationSeverityMapper.js.map +1 -1
  986. package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationUtil.js +38 -7
  987. package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationUtil.js.map +1 -1
  988. package/build/dist/Types/Monitor/Recommendation/RecommendationCriteriaBuilder.js +261 -0
  989. package/build/dist/Types/Monitor/Recommendation/RecommendationCriteriaBuilder.js.map +1 -0
  990. package/build/dist/Types/Monitor/RumAlertTemplates.js +46 -7
  991. package/build/dist/Types/Monitor/RumAlertTemplates.js.map +1 -1
  992. package/build/dist/Types/Monitor/SeriesContext/SeriesDebugHints.js +422 -0
  993. package/build/dist/Types/Monitor/SeriesContext/SeriesDebugHints.js.map +1 -0
  994. package/build/dist/Types/Monitor/SeriesContext/SeriesLabelDisplay.js +441 -0
  995. package/build/dist/Types/Monitor/SeriesContext/SeriesLabelDisplay.js.map +1 -0
  996. package/build/dist/Types/Monitor/ServiceAlertTemplates.js +79 -15
  997. package/build/dist/Types/Monitor/ServiceAlertTemplates.js.map +1 -1
  998. package/build/dist/Types/Monitor/SnmpMonitor/NetworkDeviceAlertPack.js +21 -1
  999. package/build/dist/Types/Monitor/SnmpMonitor/NetworkDeviceAlertPack.js.map +1 -1
  1000. package/build/dist/Types/Monitor/SqlConnectionConfig.js +2 -0
  1001. package/build/dist/Types/Monitor/SqlConnectionConfig.js.map +1 -0
  1002. package/build/dist/Types/Monitor/UptimeHistoryLabels.js +17 -0
  1003. package/build/dist/Types/Monitor/UptimeHistoryLabels.js.map +1 -0
  1004. package/build/dist/Types/NetworkDevice/NetworkAlertPolicyScope.js +172 -0
  1005. package/build/dist/Types/NetworkDevice/NetworkAlertPolicyScope.js.map +1 -0
  1006. package/build/dist/Types/NetworkDevice/NetworkDeviceMonitoringMethod.js +40 -22
  1007. package/build/dist/Types/NetworkDevice/NetworkDeviceMonitoringMethod.js.map +1 -1
  1008. package/build/dist/Types/NetworkSite/DefaultNetworkSiteTypeHierarchy.js +26 -0
  1009. package/build/dist/Types/NetworkSite/DefaultNetworkSiteTypeHierarchy.js.map +1 -0
  1010. package/build/dist/Types/NotificationSetting/NotificationEmailRollupCategory.js +186 -0
  1011. package/build/dist/Types/NotificationSetting/NotificationEmailRollupCategory.js.map +1 -0
  1012. package/build/dist/Types/NotificationSetting/NotificationEmailRollupPolicy.js +87 -0
  1013. package/build/dist/Types/NotificationSetting/NotificationEmailRollupPolicy.js.map +1 -0
  1014. package/build/dist/Types/NotificationSetting/RoutineEmailEvents.js +29 -0
  1015. package/build/dist/Types/NotificationSetting/RoutineEmailEvents.js.map +1 -0
  1016. package/build/dist/Types/Permission.js +80 -0
  1017. package/build/dist/Types/Permission.js.map +1 -1
  1018. package/build/dist/Types/Rum/SessionReplay.js +117 -0
  1019. package/build/dist/Types/Rum/SessionReplay.js.map +1 -1
  1020. package/build/dist/Types/Rum/SessionReplayApi.js +181 -0
  1021. package/build/dist/Types/Rum/SessionReplayApi.js.map +1 -0
  1022. package/build/dist/Types/Rum/SessionReplayCaptureTrigger.js +21 -12
  1023. package/build/dist/Types/Rum/SessionReplayCaptureTrigger.js.map +1 -1
  1024. package/build/dist/Types/Rum/SessionReplayConsentMode.js +11 -7
  1025. package/build/dist/Types/Rum/SessionReplayConsentMode.js.map +1 -1
  1026. package/build/dist/Types/Rum/SessionReplayCustomEvents.js +172 -0
  1027. package/build/dist/Types/Rum/SessionReplayCustomEvents.js.map +1 -0
  1028. package/build/dist/Types/Rum/SessionReplayHealth.js +37 -0
  1029. package/build/dist/Types/Rum/SessionReplayHealth.js.map +1 -0
  1030. package/build/dist/Types/Telemetry/ErrorClass.js +216 -0
  1031. package/build/dist/Types/Telemetry/ErrorClass.js.map +1 -0
  1032. package/build/dist/Types/Telemetry/TelemetryIngestSurface.js +85 -0
  1033. package/build/dist/Types/Telemetry/TelemetryIngestSurface.js.map +1 -0
  1034. package/build/dist/Types/Telemetry/TelemetryIngestionKeyPolicy.js +15 -0
  1035. package/build/dist/Types/Telemetry/TelemetryIngestionKeyPolicy.js.map +1 -0
  1036. package/build/dist/Types/Telemetry/TelemetryIngestionKeyType.js +30 -0
  1037. package/build/dist/Types/Telemetry/TelemetryIngestionKeyType.js.map +1 -0
  1038. package/build/dist/Types/Telemetry/UnitOfWork.js +59 -0
  1039. package/build/dist/Types/Telemetry/UnitOfWork.js.map +1 -0
  1040. package/build/dist/Types/WebsiteRequest.js +55 -3
  1041. package/build/dist/Types/WebsiteRequest.js.map +1 -1
  1042. package/build/dist/UI/Components/Charts/Area/AreaChart.js +13 -2
  1043. package/build/dist/UI/Components/Charts/Area/AreaChart.js.map +1 -1
  1044. package/build/dist/UI/Components/Charts/Bar/BarChart.js +6 -2
  1045. package/build/dist/UI/Components/Charts/Bar/BarChart.js.map +1 -1
  1046. package/build/dist/UI/Components/Charts/Line/LineChart.js +13 -2
  1047. package/build/dist/UI/Components/Charts/Line/LineChart.js.map +1 -1
  1048. package/build/dist/UI/Components/Charts/Types/XAxis/XAxis.js.map +1 -1
  1049. package/build/dist/UI/Components/Charts/Utils/DataPoint.js +15 -3
  1050. package/build/dist/UI/Components/Charts/Utils/DataPoint.js.map +1 -1
  1051. package/build/dist/UI/Components/Charts/Utils/TimeAnnotation.js +40 -9
  1052. package/build/dist/UI/Components/Charts/Utils/TimeAnnotation.js.map +1 -1
  1053. package/build/dist/UI/Components/Charts/Utils/XAxis.js +186 -0
  1054. package/build/dist/UI/Components/Charts/Utils/XAxis.js.map +1 -1
  1055. package/build/dist/UI/Components/CommandPalette/CommandPalette.js +2 -7
  1056. package/build/dist/UI/Components/CommandPalette/CommandPalette.js.map +1 -1
  1057. package/build/dist/UI/Components/CustomFields/CustomFieldsDetail.js +80 -6
  1058. package/build/dist/UI/Components/CustomFields/CustomFieldsDetail.js.map +1 -1
  1059. package/build/dist/UI/Components/CustomFields/MapFromCustomFieldInput.js +118 -0
  1060. package/build/dist/UI/Components/CustomFields/MapFromCustomFieldInput.js.map +1 -0
  1061. package/build/dist/UI/Components/EditionLabel/EditionLabel.js +3 -0
  1062. package/build/dist/UI/Components/EditionLabel/EditionLabel.js.map +1 -1
  1063. package/build/dist/UI/Components/Graphs/DayUptimeGraph.js +112 -7
  1064. package/build/dist/UI/Components/Graphs/DayUptimeGraph.js.map +1 -1
  1065. package/build/dist/UI/Components/Graphs/UptimeBarTooltip.js +5 -162
  1066. package/build/dist/UI/Components/Graphs/UptimeBarTooltip.js.map +1 -1
  1067. package/build/dist/UI/Components/Graphs/UptimeDaySummary.js +181 -0
  1068. package/build/dist/UI/Components/Graphs/UptimeDaySummary.js.map +1 -0
  1069. package/build/dist/UI/Components/Header/Header.js +2 -3
  1070. package/build/dist/UI/Components/Header/Header.js.map +1 -1
  1071. package/build/dist/UI/Components/Header/IconDropdown/IconDropdownItem.js +2 -1
  1072. package/build/dist/UI/Components/Header/IconDropdown/IconDropdownItem.js.map +1 -1
  1073. package/build/dist/UI/Components/Header/IconDropdown/IconDropdownMenu.js +7 -1
  1074. package/build/dist/UI/Components/Header/IconDropdown/IconDropdownMenu.js.map +1 -1
  1075. package/build/dist/UI/Components/Header/ProjectPicker/ProjectPicker.js +7 -1
  1076. package/build/dist/UI/Components/Header/ProjectPicker/ProjectPicker.js.map +1 -1
  1077. package/build/dist/UI/Components/HeaderAlert/NotificationBell/NotificationBellDropdown.js +7 -1
  1078. package/build/dist/UI/Components/HeaderAlert/NotificationBell/NotificationBellDropdown.js.map +1 -1
  1079. package/build/dist/UI/Components/Icon/Icon.js +5 -0
  1080. package/build/dist/UI/Components/Icon/Icon.js.map +1 -1
  1081. package/build/dist/UI/Components/JSONTable/JSONTable.js +2 -2
  1082. package/build/dist/UI/Components/JSONTable/JSONTable.js.map +1 -1
  1083. package/build/dist/UI/Components/KeyboardShortcut/KeyboardShortcutsModal.js +35 -0
  1084. package/build/dist/UI/Components/KeyboardShortcut/KeyboardShortcutsModal.js.map +1 -0
  1085. package/build/dist/UI/Components/Modal/Modal.js +2 -7
  1086. package/build/dist/UI/Components/Modal/Modal.js.map +1 -1
  1087. package/build/dist/UI/Components/Monitor/SeriesDebugCommandsViewer.js +34 -0
  1088. package/build/dist/UI/Components/Monitor/SeriesDebugCommandsViewer.js.map +1 -0
  1089. package/build/dist/UI/Components/Monitor/SeriesLabelsViewer.js +49 -0
  1090. package/build/dist/UI/Components/Monitor/SeriesLabelsViewer.js.map +1 -0
  1091. package/build/dist/UI/Components/MonitorGraphs/Uptime.js +1 -1
  1092. package/build/dist/UI/Components/MonitorGraphs/Uptime.js.map +1 -1
  1093. package/build/dist/UI/Components/MonitorGraphs/UptimeBarDayModal.js +32 -6
  1094. package/build/dist/UI/Components/MonitorGraphs/UptimeBarDayModal.js.map +1 -1
  1095. package/build/dist/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.js +77 -0
  1096. package/build/dist/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.js.map +1 -1
  1097. package/build/dist/UI/Components/ProgressBar/ProgressBar.js +12 -1
  1098. package/build/dist/UI/Components/ProgressBar/ProgressBar.js.map +1 -1
  1099. package/build/dist/UI/Components/RadioButtons/BasicRadioButtons.js +6 -6
  1100. package/build/dist/UI/Components/RadioButtons/BasicRadioButtons.js.map +1 -1
  1101. package/build/dist/UI/Components/SideMenu/SideMenu.js +67 -5
  1102. package/build/dist/UI/Components/SideMenu/SideMenu.js.map +1 -1
  1103. package/build/dist/UI/Components/SideMenu/SideMenuItem.js +49 -53
  1104. package/build/dist/UI/Components/SideMenu/SideMenuItem.js.map +1 -1
  1105. package/build/dist/UI/Components/SideMenu/SideMenuSection.js +25 -7
  1106. package/build/dist/UI/Components/SideMenu/SideMenuSection.js.map +1 -1
  1107. package/build/dist/UI/Components/SideOver/SideOver.js +5 -20
  1108. package/build/dist/UI/Components/SideOver/SideOver.js.map +1 -1
  1109. package/build/dist/UI/Components/StatusPage/ResourceGroupSection.js +22 -1
  1110. package/build/dist/UI/Components/StatusPage/ResourceGroupSection.js.map +1 -1
  1111. package/build/dist/UI/Components/Table/CellClassName.js +55 -0
  1112. package/build/dist/UI/Components/Table/CellClassName.js.map +1 -0
  1113. package/build/dist/UI/Components/Table/TableRow.js +16 -13
  1114. package/build/dist/UI/Components/Table/TableRow.js.map +1 -1
  1115. package/build/dist/UI/Components/Table/TableSkeletonRows.js +9 -8
  1116. package/build/dist/UI/Components/Table/TableSkeletonRows.js.map +1 -1
  1117. package/build/dist/UI/Components/Tooltip/Tooltip.js +25 -1
  1118. package/build/dist/UI/Components/Tooltip/Tooltip.js.map +1 -1
  1119. package/build/dist/UI/Components/Workflow/ComponentsModal.js +47 -30
  1120. package/build/dist/UI/Components/Workflow/ComponentsModal.js.map +1 -1
  1121. package/build/dist/UI/Components/Workflow/NodePlacement.js +37 -0
  1122. package/build/dist/UI/Components/Workflow/NodePlacement.js.map +1 -0
  1123. package/build/dist/UI/Components/Workflow/Workflow.js +35 -18
  1124. package/build/dist/UI/Components/Workflow/Workflow.js.map +1 -1
  1125. package/build/dist/UI/Config.js +10 -20
  1126. package/build/dist/UI/Config.js.map +1 -1
  1127. package/build/dist/UI/Utils/GlobalKeyboardShortcut.js +138 -0
  1128. package/build/dist/UI/Utils/GlobalKeyboardShortcut.js.map +1 -0
  1129. package/build/dist/UI/Utils/PageScrollLock.js +31 -3
  1130. package/build/dist/UI/Utils/PageScrollLock.js.map +1 -1
  1131. package/build/dist/UI/Utils/PermissionGate.js +42 -1
  1132. package/build/dist/UI/Utils/PermissionGate.js.map +1 -1
  1133. package/build/dist/UI/Utils/SensitiveUrlToken.js +97 -0
  1134. package/build/dist/UI/Utils/SensitiveUrlToken.js.map +1 -0
  1135. package/build/dist/UI/Utils/Telemetry/BrowserTelemetryConfig.js +14 -0
  1136. package/build/dist/UI/Utils/Telemetry/BrowserTelemetryConfig.js.map +1 -0
  1137. package/build/dist/UI/Utils/Telemetry/Telemetry.js +7 -5
  1138. package/build/dist/UI/Utils/Telemetry/Telemetry.js.map +1 -1
  1139. package/build/dist/UI/Utils/TestLLMProvider.js +4 -5
  1140. package/build/dist/UI/Utils/TestLLMProvider.js.map +1 -1
  1141. package/build/dist/Utils/API.js +67 -5
  1142. package/build/dist/Utils/API.js.map +1 -1
  1143. package/build/dist/Utils/EnterpriseLicense/EnterpriseLicenseSeats.js +15 -0
  1144. package/build/dist/Utils/EnterpriseLicense/EnterpriseLicenseSeats.js.map +1 -1
  1145. package/build/dist/Utils/EnterpriseLicense/EnterpriseLicenseUsage.js +111 -9
  1146. package/build/dist/Utils/EnterpriseLicense/EnterpriseLicenseUsage.js.map +1 -1
  1147. package/build/dist/Utils/HTTPResponseBodyReader.js +157 -0
  1148. package/build/dist/Utils/HTTPResponseBodyReader.js.map +1 -0
  1149. package/build/dist/Utils/Monitor/MonitorMetricType.js +109 -1
  1150. package/build/dist/Utils/Monitor/MonitorMetricType.js.map +1 -1
  1151. package/build/dist/Utils/Monitor/NetworkTopologyUtil.js +8 -3
  1152. package/build/dist/Utils/Monitor/NetworkTopologyUtil.js.map +1 -1
  1153. package/build/dist/Utils/NetworkDevice/DeviceHealthStateUtil.js +27 -7
  1154. package/build/dist/Utils/NetworkDevice/DeviceHealthStateUtil.js.map +1 -1
  1155. package/build/dist/Utils/NetworkDevice/DeviceReachabilityUtil.js +7 -5
  1156. package/build/dist/Utils/NetworkDevice/DeviceReachabilityUtil.js.map +1 -1
  1157. package/build/dist/Utils/NetworkDevice/NetworkAlertPolicyBootstrapUtil.js +180 -0
  1158. package/build/dist/Utils/NetworkDevice/NetworkAlertPolicyBootstrapUtil.js.map +1 -0
  1159. package/build/dist/Utils/NetworkDevice/SnmpCredentialUtil.js +12 -0
  1160. package/build/dist/Utils/NetworkDevice/SnmpCredentialUtil.js.map +1 -0
  1161. package/build/dist/Utils/NetworkDiscovery/AutoImportRuleMatcher.js +15 -5
  1162. package/build/dist/Utils/NetworkDiscovery/AutoImportRuleMatcher.js.map +1 -1
  1163. package/build/dist/Utils/NetworkDiscovery/DiscoveredDeviceBuilder.js +44 -15
  1164. package/build/dist/Utils/NetworkDiscovery/DiscoveredDeviceBuilder.js.map +1 -1
  1165. package/build/dist/Utils/NetworkDiscovery/DiscoveryImportEligibility.js +52 -23
  1166. package/build/dist/Utils/NetworkDiscovery/DiscoveryImportEligibility.js.map +1 -1
  1167. package/build/dist/Utils/NetworkDiscovery/DiscoveryScanStatus.js +69 -0
  1168. package/build/dist/Utils/NetworkDiscovery/DiscoveryScanStatus.js.map +1 -0
  1169. package/build/dist/Utils/NetworkDiscovery/PingMonitorBuilder.js +85 -13
  1170. package/build/dist/Utils/NetworkDiscovery/PingMonitorBuilder.js.map +1 -1
  1171. package/build/dist/Utils/NetworkSite/SiteStatusRollupUtil.js +30 -15
  1172. package/build/dist/Utils/NetworkSite/SiteStatusRollupUtil.js.map +1 -1
  1173. package/build/dist/Utils/NetworkSite/TypeHierarchyUtil.js +191 -0
  1174. package/build/dist/Utils/NetworkSite/TypeHierarchyUtil.js.map +1 -0
  1175. package/build/dist/Utils/Rum/ChunkMath.js +76 -0
  1176. package/build/dist/Utils/Rum/ChunkMath.js.map +1 -1
  1177. package/build/dist/Utils/Rum/SessionReplayHealth.js +534 -0
  1178. package/build/dist/Utils/Rum/SessionReplayHealth.js.map +1 -0
  1179. package/build/dist/Utils/Rum/SessionReplayStringMap.js +165 -0
  1180. package/build/dist/Utils/Rum/SessionReplayStringMap.js.map +1 -0
  1181. package/build/dist/Utils/Schema/ModelSchema.js +1 -0
  1182. package/build/dist/Utils/Schema/ModelSchema.js.map +1 -1
  1183. package/build/dist/Utils/StatusPage/ResourceSearch.js +200 -0
  1184. package/build/dist/Utils/StatusPage/ResourceSearch.js.map +1 -0
  1185. package/build/dist/Utils/Telemetry/OriginAllowList.js +299 -0
  1186. package/build/dist/Utils/Telemetry/OriginAllowList.js.map +1 -0
  1187. package/build/dist/Utils/Uptime/DayUptimeGraphUtil.js +147 -0
  1188. package/build/dist/Utils/Uptime/DayUptimeGraphUtil.js.map +1 -0
  1189. package/build/dist/Utils/ValueFormatter.js +32 -1
  1190. package/build/dist/Utils/ValueFormatter.js.map +1 -1
  1191. package/package.json +2 -2
@@ -1,9 +1,9 @@
1
1
  import ObjectID from "../ObjectID";
2
2
  import MonitorStep from "./MonitorStep";
3
3
  import MonitorCriteria from "./MonitorCriteria";
4
- import MonitorCriteriaInstance from "./MonitorCriteriaInstance";
4
+ import { buildHealthyCriteriaInstance, buildUnhealthyCriteriaInstance, } from "./Recommendation/RecommendationCriteriaBuilder";
5
5
  import FilterCondition from "../Filter/FilterCondition";
6
- import { CheckOn, FilterType, EvaluateOverTimeType } from "./CriteriaFilter";
6
+ import { FilterType } from "./CriteriaFilter";
7
7
  import RollingTime from "../RollingTime/RollingTime";
8
8
  import MetricsAggregationType from "../Metrics/MetricsAggregationType";
9
9
  /*
@@ -54,79 +54,10 @@ export function buildProxmoxMonitorStep(args) {
54
54
  return monitorStep;
55
55
  }
56
56
  export function buildProxmoxOfflineCriteriaInstance(args) {
57
- const instance = new MonitorCriteriaInstance();
58
- const incidentTitle = args.incidentTitle || `${args.monitorName} - Alert Triggered`;
59
- const incidentDescription = args.incidentDescription ||
60
- `${args.monitorName} has triggered an alert condition. See root cause for detailed Proxmox cluster information.`;
61
- instance.data = {
62
- id: ObjectID.generate().toString(),
63
- monitorStatusId: args.offlineMonitorStatusId,
64
- filterCondition: FilterCondition.Any,
65
- filters: [
66
- {
67
- checkOn: CheckOn.MetricValue,
68
- filterType: args.filterType,
69
- metricMonitorOptions: {
70
- metricAggregationType: EvaluateOverTimeType.AnyValue,
71
- metricAlias: args.metricAlias,
72
- },
73
- value: args.value,
74
- },
75
- ],
76
- incidents: [
77
- {
78
- title: incidentTitle,
79
- description: incidentDescription,
80
- incidentSeverityId: args.incidentSeverityId,
81
- autoResolveIncident: true,
82
- id: ObjectID.generate().toString(),
83
- onCallPolicyIds: [],
84
- },
85
- ],
86
- alerts: [
87
- {
88
- title: incidentTitle,
89
- description: incidentDescription,
90
- alertSeverityId: args.alertSeverityId,
91
- autoResolveAlert: true,
92
- id: ObjectID.generate().toString(),
93
- onCallPolicyIds: [],
94
- },
95
- ],
96
- changeMonitorStatus: true,
97
- createIncidents: true,
98
- createAlerts: true,
99
- name: args.criteriaName || `${args.monitorName} - Unhealthy`,
100
- description: args.criteriaDescription || `Criteria for detecting unhealthy state.`,
101
- };
102
- return instance;
57
+ return buildUnhealthyCriteriaInstance(Object.assign(Object.assign({}, args), { resourceNoun: "Proxmox resource" }));
103
58
  }
104
59
  export function buildProxmoxOnlineCriteriaInstance(args) {
105
- const instance = new MonitorCriteriaInstance();
106
- instance.data = {
107
- id: ObjectID.generate().toString(),
108
- monitorStatusId: args.onlineMonitorStatusId,
109
- filterCondition: FilterCondition.Any,
110
- filters: [
111
- {
112
- checkOn: CheckOn.MetricValue,
113
- filterType: args.filterType,
114
- metricMonitorOptions: {
115
- metricAggregationType: EvaluateOverTimeType.AnyValue,
116
- metricAlias: args.metricAlias,
117
- },
118
- value: args.value,
119
- },
120
- ],
121
- incidents: [],
122
- alerts: [],
123
- changeMonitorStatus: true,
124
- createIncidents: false,
125
- createAlerts: false,
126
- name: "Healthy",
127
- description: "Criteria for healthy state.",
128
- };
129
- return instance;
60
+ return buildHealthyCriteriaInstance(args);
130
61
  }
131
62
  export function buildProxmoxMonitorConfig(args) {
132
63
  return {
@@ -140,7 +71,7 @@ export function buildProxmoxMonitorConfig(args) {
140
71
  title: args.metricAlias,
141
72
  description: args.metricAlias,
142
73
  legend: args.metricAlias,
143
- legendUnit: undefined,
74
+ legendUnit: args.legendUnit,
144
75
  },
145
76
  metricQueryData: Object.assign({ filterData: {
146
77
  metricName: args.metricName,
@@ -157,6 +88,45 @@ export function buildProxmoxMonitorConfig(args) {
157
88
  rollingTime: args.rollingTime,
158
89
  };
159
90
  }
91
+ /**
92
+ * Build a monitor that watches SEVERAL metrics with no formula, so one
93
+ * criteria can qualify another (Ceph's buildCephMultiQueryMonitorConfig is
94
+ * the same shape). Every query shares the group-by key, which is what lets
95
+ * the per-series evaluator line them up: series fingerprints are computed
96
+ * from the grouped LABELS alone (MetricSeriesFingerprint.computeFingerprint),
97
+ * so two queries grouped by `id` land on the same fingerprint and
98
+ * `FilterCondition.All` is satisfied by the SAME series — the same `id` —
99
+ * rather than merely somewhere in the cluster.
100
+ */
101
+ export function buildProxmoxMultiQueryMonitorConfig(args) {
102
+ return {
103
+ clusterIdentifier: args.clusterIdentifier,
104
+ resourceFilters: {},
105
+ metricViewConfig: {
106
+ queryConfigs: args.queries.map((query) => {
107
+ return {
108
+ metricAliasData: {
109
+ metricVariable: query.alias,
110
+ title: query.alias,
111
+ description: query.alias,
112
+ legend: query.alias,
113
+ legendUnit: undefined,
114
+ },
115
+ metricQueryData: Object.assign({ filterData: {
116
+ metricName: query.metricName,
117
+ attributes: query.attributes || {},
118
+ aggegationType: args.aggregationType,
119
+ aggregateBy: {},
120
+ } }, (args.groupByAttributeKey
121
+ ? { groupByAttributeKeys: [args.groupByAttributeKey] }
122
+ : {})),
123
+ };
124
+ }),
125
+ formulaConfigs: [],
126
+ },
127
+ rollingTime: args.rollingTime,
128
+ };
129
+ }
160
130
  /**
161
131
  * Build a ratio monitor: `(numerator / denominator) * 100`, optionally
162
132
  * grouped by an OpenTelemetry attribute so one incident fires per group
@@ -264,6 +234,12 @@ const nodeOfflineTemplate = {
264
234
  metricAlias,
265
235
  filterType: FilterType.GreaterThanOrEqualTo,
266
236
  value: 1,
237
+ /*
238
+ * `pve_up` is strictly 0 or 1, so the shared 10% recovery dead band
239
+ * would put this at `>= 1.1` — unreachable, leaving the monitor
240
+ * permanently unable to report healthy.
241
+ */
242
+ isBinaryMetric: true,
267
243
  }),
268
244
  });
269
245
  },
@@ -271,23 +247,56 @@ const nodeOfflineTemplate = {
271
247
  const guestDownTemplate = {
272
248
  id: "pve-guest-down",
273
249
  name: "Guest Down",
274
- description: "Alert when any VM or container reports as down (pve_up = 0, scoped to guests via pve.scope). One incident per guest. Intentionally stopped guests also report 0add a pve.id filter to scope to guests that should always run.",
250
+ description: "Alert when a VM or container that is configured to start on boot stops running (pve_up = 0 while pve_onboot_status = 1, scoped to guests via pve.scope). One incident per guest. Guests you stopped on purpose are excluded automatically — a guest with onboot disabled never fires.",
275
251
  category: "Availability",
276
252
  severity: "Warning",
277
253
  getMonitorStep: (args) => {
278
254
  const metricAlias = "guest_up";
255
+ const onbootAlias = "guest_onboot";
256
+ /*
257
+ * "Down" alone is not an incident on a hypervisor. pve_up reads 0 for
258
+ * every intentionally stopped template VM and powered-down test
259
+ * container, so a one-click "Guest Down" monitor scoped only by
260
+ * pve.scope opens a Warning for each of them — and the alert body used
261
+ * to tell the recipient to go and re-scope the monitor themselves.
262
+ *
263
+ * pve_onboot_status is Proxmox's own declaration of which guests are
264
+ * supposed to be running (`onboot: 1` in the guest config). Requiring
265
+ * it turns the criteria into "a guest Proxmox says should be running is
266
+ * not running", which is the only version of this that is safe to
267
+ * enable with one click.
268
+ *
269
+ * Fail-closed on purpose: buildSeriesBreakdown emits every fingerprint
270
+ * seen across BOTH queries and hands an absent query an empty slot, so
271
+ * a guest with no pve_onboot_status series evaluates that filter under
272
+ * NoDataPolicy.Ignore to "not breaching", FilterCondition.All is not
273
+ * satisfied, and nothing fires. A missed Warning on a non-default
274
+ * exporter beats a permanent false page on every default install.
275
+ */
279
276
  return buildProxmoxMonitorStep({
280
- proxmoxMonitor: buildProxmoxMonitorConfig({
277
+ proxmoxMonitor: buildProxmoxMultiQueryMonitorConfig({
281
278
  clusterIdentifier: args.clusterIdentifier,
282
- metricName: "pve_up",
283
- metricAlias,
279
+ queries: [
280
+ {
281
+ alias: metricAlias,
282
+ metricName: "pve_up",
283
+ attributes: { "pve.scope": "guest" },
284
+ },
285
+ {
286
+ alias: onbootAlias,
287
+ metricName: "pve_onboot_status",
288
+ attributes: { "pve.scope": "guest" },
289
+ },
290
+ ],
284
291
  rollingTime: RollingTime.Past5Minutes,
285
292
  /*
286
293
  * Min per guest — a single down scrape trips the threshold instead
287
- * of being masked by scrapes where the guest was still up.
294
+ * of being masked by scrapes where the guest was still up. Min is
295
+ * also the catalog default for pve_onboot_status, and is the
296
+ * conservative reading there: the guest must have been marked
297
+ * start-on-boot in every scrape of the window.
288
298
  */
289
299
  aggregationType: MetricsAggregationType.Min,
290
- attributes: { "pve.scope": "guest" },
291
300
  groupByAttributeKey: "id",
292
301
  }),
293
302
  offlineCriteriaInstance: buildProxmoxOfflineCriteriaInstance({
@@ -298,16 +307,52 @@ const guestDownTemplate = {
298
307
  metricAlias,
299
308
  filterType: FilterType.LessThan,
300
309
  value: 1,
310
+ /*
311
+ * Both must hold for the SAME guest: down AND meant to be running.
312
+ * Per-series All is what makes "same guest" true rather than "some
313
+ * guest is down and some other guest has onboot set" — the two
314
+ * queries share the `id` group-by, so they land on one fingerprint.
315
+ */
316
+ filterCondition: FilterCondition.All,
317
+ additionalFilters: [
318
+ {
319
+ metricAlias: onbootAlias,
320
+ filterType: FilterType.GreaterThan,
321
+ value: 0,
322
+ },
323
+ ],
301
324
  incidentTitle: `[Proxmox] Guest Down - ${args.monitorName}`,
302
- incidentDescription: `A Proxmox guest (VM or container) is reporting as down (pve_up = 0). It has stopped or crashed. Check the root cause for the affected guest id. Note: intentionally stopped guests also report pve_up = 0 add a pve.id attribute filter to scope this monitor to guests that should always be running.`,
303
- criteriaName: "Guest Down - pve_up < 1",
304
- criteriaDescription: "Triggers when any guest reports pve_up below 1 over the monitoring window.",
325
+ incidentDescription: `A Proxmox guest (VM or container) configured to start on boot (onboot = 1) is reporting as down (pve_up = 0) for the whole evaluation window. It stopped or crashed rather than being shut down on purpose guests with onboot disabled are excluded from this monitor. See the affected resource on this alert for the guest id, then check that node's task log for a failed start, a fenced HA resource, or an out-of-memory kill.`,
326
+ criteriaName: "Guest Down - pve_up < 1 while onboot = 1",
327
+ criteriaDescription: "Triggers when a guest configured to start on boot reports pve_up below 1 for the whole monitoring window.",
305
328
  }),
306
329
  onlineCriteriaInstance: buildProxmoxOnlineCriteriaInstance({
307
330
  onlineMonitorStatusId: args.onlineMonitorStatusId,
308
331
  metricAlias,
309
332
  filterType: FilterType.GreaterThanOrEqualTo,
310
333
  value: 1,
334
+ /*
335
+ * `pve_up` is strictly 0 or 1, so the shared 10% recovery dead band
336
+ * would put this at `>= 1.1` — unreachable, leaving the monitor
337
+ * permanently unable to report healthy.
338
+ */
339
+ isBinaryMetric: true,
340
+ /*
341
+ * Recovery is FilterCondition.Any (the builder default), so either
342
+ * half clears it: the guest came back, or someone deliberately
343
+ * turned start-on-boot off and it is no longer this monitor's
344
+ * business. The onboot half is also required by the shared suite
345
+ * invariant that every firing alias has a recovering filter on the
346
+ * same alias; {> 0} / {= 0} is the zero-threshold pair, which gets
347
+ * no dead band.
348
+ */
349
+ additionalFilters: [
350
+ {
351
+ metricAlias: onbootAlias,
352
+ filterType: FilterType.EqualTo,
353
+ value: 0,
354
+ },
355
+ ],
311
356
  }),
312
357
  });
313
358
  },
@@ -450,7 +495,7 @@ const nodeHighMemoryTemplate = {
450
495
  const guestHighCpuTemplate = {
451
496
  id: "pve-guest-high-cpu",
452
497
  name: "High Guest CPU Usage",
453
- description: "Alert when any VM or container uses more than 90% of its allocated vCPUs (pve_cpu_usage_ratio > 0.9, scoped to guests). One incident per guest.",
498
+ description: "Alert when a VM or container sits above 95% of its allocated vCPUs (pve_cpu_usage_ratio > 0.95, scoped to guests) for a sustained 15 minutes. One incident per guest. Deliberately higher and slower than the node template: a guest is SUPPOSED to use the vCPUs it was given, so only a guest that never comes down is worth a page.",
454
499
  category: "Guest",
455
500
  severity: "Warning",
456
501
  getMonitorStep: (args) => {
@@ -460,7 +505,16 @@ const guestHighCpuTemplate = {
460
505
  clusterIdentifier: args.clusterIdentifier,
461
506
  metricName: "pve_cpu_usage_ratio",
462
507
  metricAlias,
463
- rollingTime: RollingTime.Past5Minutes,
508
+ /*
509
+ * Fifteen minutes, not five. The criteria is sustained (AllValues),
510
+ * so this window IS the alert's patience: a build, a backup, a
511
+ * database vacuum or a batch job pegs a right-sized 2-vCPU guest
512
+ * for several minutes by design, and paging for it is the "a pod at
513
+ * 91% of its CPU limit is healthy" false positive. Fifteen
514
+ * consecutive minutes at the ceiling is starvation; five is a
515
+ * workload.
516
+ */
517
+ rollingTime: RollingTime.Past15Minutes,
464
518
  /*
465
519
  * Avg per guest — pve_cpu_usage_ratio is already a true 0-1 ratio
466
520
  * (one series per guest), so the per-minute average is the
@@ -477,17 +531,28 @@ const guestHighCpuTemplate = {
477
531
  monitorName: args.monitorName,
478
532
  metricAlias,
479
533
  filterType: FilterType.GreaterThan,
480
- value: 0.9,
481
- incidentTitle: `[Proxmox] High Guest CPU Usage (>90%) - ${args.monitorName}`,
482
- incidentDescription: `A guest (VM or container) is using more than 90% of its allocated vCPUs. The workload inside the guest may be CPU-starved. Check the root cause for the affected guest id, then consider allocating more vCPUs or investigating the workload inside the guest.`,
483
- criteriaName: "High Guest CPU - Usage Ratio > 0.9",
484
- criteriaDescription: "Triggers when any guest's average CPU usage ratio exceeds 0.9 over the monitoring window.",
534
+ /*
535
+ * 0.95, not 0.9. `pve_cpu_usage_ratio` is usage as a fraction of
536
+ * AVAILABLE CPU, and for a guest "available" is its own vCPU
537
+ * allocation a right-sized 2-vCPU guest running a build sits at
538
+ * 1.0 by design. 90% of an allocation is the allocation working;
539
+ * only a guest pinned within 5% of its ceiling for a quarter of an
540
+ * hour is starved. The node template stays at 0.9/5min on purpose:
541
+ * a node at 90% degrades every guest on it, which is a different
542
+ * and faster question.
543
+ */
544
+ value: 0.95,
545
+ incidentTitle: `[Proxmox] Sustained High Guest CPU Usage (>95%) - ${args.monitorName}`,
546
+ incidentDescription: `A guest (VM or container) has stayed above 95% of its allocated vCPUs for 15 minutes without a break. At that point the workload inside the guest is CPU-starved rather than merely busy. See the affected resource on this alert for the guest id, then consider allocating more vCPUs or investigating what is running inside the guest.`,
547
+ criteriaName: "High Guest CPU - Usage Ratio > 0.95 sustained",
548
+ criteriaDescription: "Triggers when a guest's average CPU usage ratio stays above 0.95 (95% of its allocated vCPUs) for every minute of the 15-minute window.",
485
549
  }),
486
550
  onlineCriteriaInstance: buildProxmoxOnlineCriteriaInstance({
487
551
  onlineMonitorStatusId: args.onlineMonitorStatusId,
488
552
  metricAlias,
489
553
  filterType: FilterType.LessThanOrEqualTo,
490
- value: 0.9,
554
+ // Recovers at 0.855 — the shared 10% dead band inside 0.95.
555
+ value: 0.95,
491
556
  }),
492
557
  });
493
558
  },
@@ -1 +1 @@
1
- {"version":3,"file":"ProxmoxAlertTemplates.js","sourceRoot":"","sources":["../../../../Types/Monitor/ProxmoxAlertTemplates.ts"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,aAAa,CAAC;AACnC,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAChE,OAAO,eAAe,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAE7E,OAAO,WAAW,MAAM,4BAA4B,CAAC;AACrD,OAAO,sBAAsB,MAAM,mCAAmC,CAAC;AA+BvE;;;;;;;;;GASG;AAEH,MAAM,UAAU,uBAAuB,CAAC,IAIvC;IACC,MAAM,WAAW,GAAgB,IAAI,WAAW,EAAE,CAAC;IAEnD,MAAM,eAAe,GAAoB,IAAI,eAAe,EAAE,CAAC;IAE/D,eAAe,CAAC,IAAI,GAAG;QACrB,4BAA4B,EAAE;YAC5B,IAAI,CAAC,uBAAuB;YAC5B,IAAI,CAAC,sBAAsB;SAC5B;KACF,CAAC;IAEF,WAAW,CAAC,IAAI,GAAG;QACjB,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;QAClC,kBAAkB,EAAE,SAAS;QAC7B,oBAAoB,EAAE,SAAS;QAC/B,sBAAsB,EAAE,SAAS;QACjC,eAAe,EAAE,eAAe;QAChC,WAAW,EAAE,KAAY;QACzB,cAAc,EAAE,SAAS;QACzB,WAAW,EAAE,SAAS;QACtB,UAAU,EAAE,SAAS;QACrB,eAAe,EAAE,SAAS;QAC1B,YAAY,EAAE,SAAS;QACvB,iBAAiB,EAAE,SAAS;QAC5B,UAAU,EAAE,SAAS;QACrB,YAAY,EAAE,SAAS;QACvB,aAAa,EAAE,SAAS;QACxB,gBAAgB,EAAE,SAAS;QAC3B,WAAW,EAAE,SAAS;QACtB,UAAU,EAAE,SAAS;QACrB,aAAa,EAAE,SAAS;QACxB,yBAAyB,EAAE,SAAS;QACpC,iBAAiB,EAAE,SAAS;QAC5B,cAAc,EAAE,SAAS;QACzB,aAAa,EAAE,SAAS;QACxB,cAAc,EAAE,IAAI,CAAC,cAAc;KACpC,CAAC;IAEF,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,MAAM,UAAU,mCAAmC,CAAC,IAYnD;IACC,MAAM,QAAQ,GAA4B,IAAI,uBAAuB,EAAE,CAAC;IAExE,MAAM,aAAa,GACjB,IAAI,CAAC,aAAa,IAAI,GAAG,IAAI,CAAC,WAAW,oBAAoB,CAAC;IAChE,MAAM,mBAAmB,GACvB,IAAI,CAAC,mBAAmB;QACxB,GAAG,IAAI,CAAC,WAAW,6FAA6F,CAAC;IAEnH,QAAQ,CAAC,IAAI,GAAG;QACd,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;QAClC,eAAe,EAAE,IAAI,CAAC,sBAAsB;QAC5C,eAAe,EAAE,eAAe,CAAC,GAAG;QACpC,OAAO,EAAE;YACP;gBACE,OAAO,EAAE,OAAO,CAAC,WAAW;gBAC5B,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,oBAAoB,EAAE;oBACpB,qBAAqB,EAAE,oBAAoB,CAAC,QAAQ;oBACpD,WAAW,EAAE,IAAI,CAAC,WAAW;iBAC9B;gBACD,KAAK,EAAE,IAAI,CAAC,KAAK;aAClB;SACF;QACD,SAAS,EAAE;YACT;gBACE,KAAK,EAAE,aAAa;gBACpB,WAAW,EAAE,mBAAmB;gBAChC,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;gBAC3C,mBAAmB,EAAE,IAAI;gBACzB,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;gBAClC,eAAe,EAAE,EAAE;aACpB;SACF;QACD,MAAM,EAAE;YACN;gBACE,KAAK,EAAE,aAAa;gBACpB,WAAW,EAAE,mBAAmB;gBAChC,eAAe,EAAE,IAAI,CAAC,eAAe;gBACrC,gBAAgB,EAAE,IAAI;gBACtB,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;gBAClC,eAAe,EAAE,EAAE;aACpB;SACF;QACD,mBAAmB,EAAE,IAAI;QACzB,eAAe,EAAE,IAAI;QACrB,YAAY,EAAE,IAAI;QAClB,IAAI,EAAE,IAAI,CAAC,YAAY,IAAI,GAAG,IAAI,CAAC,WAAW,cAAc;QAC5D,WAAW,EACT,IAAI,CAAC,mBAAmB,IAAI,yCAAyC;KACxE,CAAC;IAEF,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,kCAAkC,CAAC,IAKlD;IACC,MAAM,QAAQ,GAA4B,IAAI,uBAAuB,EAAE,CAAC;IAExE,QAAQ,CAAC,IAAI,GAAG;QACd,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;QAClC,eAAe,EAAE,IAAI,CAAC,qBAAqB;QAC3C,eAAe,EAAE,eAAe,CAAC,GAAG;QACpC,OAAO,EAAE;YACP;gBACE,OAAO,EAAE,OAAO,CAAC,WAAW;gBAC5B,UAAU,EAAE,IAAI,CAAC,UAAU;gBAC3B,oBAAoB,EAAE;oBACpB,qBAAqB,EAAE,oBAAoB,CAAC,QAAQ;oBACpD,WAAW,EAAE,IAAI,CAAC,WAAW;iBAC9B;gBACD,KAAK,EAAE,IAAI,CAAC,KAAK;aAClB;SACF;QACD,SAAS,EAAE,EAAE;QACb,MAAM,EAAE,EAAE;QACV,mBAAmB,EAAE,IAAI;QACzB,eAAe,EAAE,KAAK;QACtB,YAAY,EAAE,KAAK;QACnB,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,6BAA6B;KAC3C,CAAC;IAEF,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,IAQzC;IACC,OAAO;QACL,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;QACzC,eAAe,EAAE,EAAE;QACnB,gBAAgB,EAAE;YAChB,YAAY,EAAE;gBACZ;oBACE,eAAe,EAAE;wBACf,cAAc,EAAE,IAAI,CAAC,WAAW;wBAChC,KAAK,EAAE,IAAI,CAAC,WAAW;wBACvB,WAAW,EAAE,IAAI,CAAC,WAAW;wBAC7B,MAAM,EAAE,IAAI,CAAC,WAAW;wBACxB,UAAU,EAAE,SAAS;qBACtB;oBACD,eAAe,kBACb,UAAU,EAAE;4BACV,UAAU,EAAE,IAAI,CAAC,UAAU;4BAC3B,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,EAAE;4BACjC,cAAc,EAAE,IAAI,CAAC,eAAe;4BACpC,WAAW,EAAE,EAAE;yBAChB,IACE,CAAC,IAAI,CAAC,mBAAmB;wBAC1B,CAAC,CAAC,EAAE,oBAAoB,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,EAAE;wBACtD,CAAC,CAAC,EAAE,CAAC,CACR;iBACF;aACF;YACD,cAAc,EAAE,EAAE;SACnB;QACD,WAAW,EAAE,IAAI,CAAC,WAAW;KAC9B,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,UAAU,8BAA8B,CAAC,IAY9C;IACC,MAAM,eAAe,GACnB,IAAI,CAAC,eAAe,IAAI,sBAAsB,CAAC,GAAG,CAAC;IAErD,MAAM,gBAAgB,GAA+C,CACnE,KAAa,EACb,UAAkB,EACb,EAAE;QACP,OAAO;YACL,eAAe,EAAE;gBACf,cAAc,EAAE,KAAK;gBACrB,KAAK,EAAE,KAAK;gBACZ,WAAW,EAAE,KAAK;gBAClB,MAAM,EAAE,KAAK;gBACb,UAAU,EAAE,SAAS;aACtB;YACD,eAAe,kBACb,UAAU,EAAE;oBACV,UAAU,EAAE,UAAU;oBACtB,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,EAAE;oBACjC,cAAc,EAAE,eAAe;oBAC/B,WAAW,EAAE,EAAE;iBAChB,IACE,CAAC,IAAI,CAAC,mBAAmB;gBAC1B,CAAC,CAAC,EAAE,oBAAoB,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,EAAE;gBACtD,CAAC,CAAC,EAAE,CAAC,CACR;SACF,CAAC;IACJ,CAAC,CAAC;IAEF,OAAO;QACL,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;QACzC,eAAe,EAAE,EAAE;QACnB,gBAAgB,EAAE;YAChB,YAAY,EAAE;gBACZ,gBAAgB,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,mBAAmB,CAAC;gBAC/D,gBAAgB,CAAC,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,qBAAqB,CAAC;aACpE;YACD,cAAc,EAAE;gBACd;oBACE,eAAe,EAAE;wBACf,cAAc,EAAE,IAAI,CAAC,WAAW;wBAChC,KAAK,EAAE,IAAI,CAAC,YAAY;wBACxB,WAAW,EAAE,IAAI,CAAC,YAAY;wBAC9B,MAAM,EAAE,IAAI,CAAC,YAAY;wBACzB,UAAU,EAAE,GAAG;qBAChB;oBACD,iBAAiB,EAAE;wBACjB,aAAa,EAAE,IAAI,IAAI,CAAC,cAAc,MAAM,IAAI,CAAC,gBAAgB,SAAS;qBAC3E;iBACF;aACF;SACF;QACD,WAAW,EAAE,IAAI,CAAC,WAAW;KAC9B,CAAC;AACJ,CAAC;AAED,+BAA+B;AAE/B,MAAM,mBAAmB,GAAyB;IAChD,EAAE,EAAE,kBAAkB;IACtB,IAAI,EAAE,cAAc;IACpB,WAAW,EACT,iHAAiH;IACnH,QAAQ,EAAE,cAAc;IACxB,QAAQ,EAAE,UAAU;IACpB,cAAc,EAAE,CAAC,IAA8B,EAAe,EAAE;QAC9D,MAAM,WAAW,GAAW,SAAS,CAAC;QAEtC,OAAO,uBAAuB,CAAC;YAC7B,cAAc,EAAE,yBAAyB,CAAC;gBACxC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;gBACzC,UAAU,EAAE,QAAQ;gBACpB,WAAW;gBACX,WAAW,EAAE,WAAW,CAAC,YAAY;gBACrC;;;mBAGG;gBACH,eAAe,EAAE,sBAAsB,CAAC,GAAG;gBAC3C,UAAU,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE;gBACnC,mBAAmB,EAAE,IAAI;aAC1B,CAAC;YACF,uBAAuB,EAAE,mCAAmC,CAAC;gBAC3D,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;gBACnD,kBAAkB,EAAE,IAAI,CAAC,yBAAyB;gBAClD,eAAe,EAAE,IAAI,CAAC,sBAAsB;gBAC5C,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,WAAW;gBACX,UAAU,EAAE,UAAU,CAAC,QAAQ;gBAC/B,KAAK,EAAE,CAAC;gBACR,aAAa,EAAE,4BAA4B,IAAI,CAAC,WAAW,EAAE;gBAC7D,mBAAmB,EAAE,6QAA6Q;gBAClS,YAAY,EAAE,2BAA2B;gBACzC,mBAAmB,EACjB,2EAA2E;aAC9E,CAAC;YACF,sBAAsB,EAAE,kCAAkC,CAAC;gBACzD,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;gBACjD,WAAW;gBACX,UAAU,EAAE,UAAU,CAAC,oBAAoB;gBAC3C,KAAK,EAAE,CAAC;aACT,CAAC;SACH,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEF,MAAM,iBAAiB,GAAyB;IAC9C,EAAE,EAAE,gBAAgB;IACpB,IAAI,EAAE,YAAY;IAClB,WAAW,EACT,kOAAkO;IACpO,QAAQ,EAAE,cAAc;IACxB,QAAQ,EAAE,SAAS;IACnB,cAAc,EAAE,CAAC,IAA8B,EAAe,EAAE;QAC9D,MAAM,WAAW,GAAW,UAAU,CAAC;QAEvC,OAAO,uBAAuB,CAAC;YAC7B,cAAc,EAAE,yBAAyB,CAAC;gBACxC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;gBACzC,UAAU,EAAE,QAAQ;gBACpB,WAAW;gBACX,WAAW,EAAE,WAAW,CAAC,YAAY;gBACrC;;;mBAGG;gBACH,eAAe,EAAE,sBAAsB,CAAC,GAAG;gBAC3C,UAAU,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE;gBACpC,mBAAmB,EAAE,IAAI;aAC1B,CAAC;YACF,uBAAuB,EAAE,mCAAmC,CAAC;gBAC3D,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;gBACnD,kBAAkB,EAAE,IAAI,CAAC,yBAAyB;gBAClD,eAAe,EAAE,IAAI,CAAC,sBAAsB;gBAC5C,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,WAAW;gBACX,UAAU,EAAE,UAAU,CAAC,QAAQ;gBAC/B,KAAK,EAAE,CAAC;gBACR,aAAa,EAAE,0BAA0B,IAAI,CAAC,WAAW,EAAE;gBAC3D,mBAAmB,EAAE,0SAA0S;gBAC/T,YAAY,EAAE,yBAAyB;gBACvC,mBAAmB,EACjB,4EAA4E;aAC/E,CAAC;YACF,sBAAsB,EAAE,kCAAkC,CAAC;gBACzD,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;gBACjD,WAAW;gBACX,UAAU,EAAE,UAAU,CAAC,oBAAoB;gBAC3C,KAAK,EAAE,CAAC;aACT,CAAC;SACH,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEF,MAAM,kBAAkB,GAAyB;IAC/C,EAAE,EAAE,iBAAiB;IACrB,IAAI,EAAE,wBAAwB;IAC9B,WAAW,EACT,4TAA4T;IAC9T,QAAQ,EAAE,cAAc;IACxB,QAAQ,EAAE,UAAU;IACpB,cAAc,EAAE,CAAC,IAA8B,EAAe,EAAE;QAC9D,MAAM,WAAW,GAAW,mBAAmB,CAAC;QAEhD,OAAO,uBAAuB,CAAC;YAC7B,cAAc,EAAE,8BAA8B,CAAC;gBAC7C,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;gBACzC;;;;mBAIG;gBACH,mBAAmB,EAAE,QAAQ;gBAC7B,qBAAqB,EAAE,eAAe;gBACtC,cAAc,EAAE,cAAc;gBAC9B,gBAAgB,EAAE,aAAa;gBAC/B,WAAW,EAAE,WAAW;gBACxB,YAAY,EAAE,uBAAuB;gBACrC,WAAW,EAAE,WAAW,CAAC,YAAY;gBACrC,UAAU,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE;aACpC,CAAC;YACF,uBAAuB,EAAE,mCAAmC,CAAC;gBAC3D,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;gBACnD,kBAAkB,EAAE,IAAI,CAAC,yBAAyB;gBAClD,eAAe,EAAE,IAAI,CAAC,sBAAsB;gBAC5C,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,WAAW;gBACX,UAAU,EAAE,UAAU,CAAC,iBAAiB;gBACxC,KAAK,EAAE,EAAE;gBACT,aAAa,EAAE,gDAAgD,IAAI,CAAC,WAAW,EAAE;gBACjF,mBAAmB,EAAE,6YAA6Y;gBACla,YAAY,EAAE,wCAAwC;gBACtD,mBAAmB,EACjB,qEAAqE;aACxE,CAAC;YACF,sBAAsB,EAAE,kCAAkC,CAAC;gBACzD,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;gBACjD,WAAW;gBACX,UAAU,EAAE,UAAU,CAAC,WAAW;gBAClC,KAAK,EAAE,EAAE;aACV,CAAC;SACH,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEF,MAAM,mBAAmB,GAAyB;IAChD,EAAE,EAAE,mBAAmB;IACvB,IAAI,EAAE,qBAAqB;IAC3B,WAAW,EACT,uIAAuI;IACzI,QAAQ,EAAE,MAAM;IAChB,QAAQ,EAAE,SAAS;IACnB,cAAc,EAAE,CAAC,IAA8B,EAAe,EAAE;QAC9D,MAAM,WAAW,GAAW,UAAU,CAAC;QAEvC,OAAO,uBAAuB,CAAC;YAC7B,cAAc,EAAE,yBAAyB,CAAC;gBACxC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;gBACzC,UAAU,EAAE,qBAAqB;gBACjC,WAAW;gBACX,WAAW,EAAE,WAAW,CAAC,YAAY;gBACrC;;;;mBAIG;gBACH,eAAe,EAAE,sBAAsB,CAAC,GAAG;gBAC3C,UAAU,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE;gBACnC,mBAAmB,EAAE,IAAI;aAC1B,CAAC;YACF,uBAAuB,EAAE,mCAAmC,CAAC;gBAC3D,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;gBACnD,kBAAkB,EAAE,IAAI,CAAC,yBAAyB;gBAClD,eAAe,EAAE,IAAI,CAAC,sBAAsB;gBAC5C,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,WAAW;gBACX,UAAU,EAAE,UAAU,CAAC,WAAW;gBAClC,KAAK,EAAE,GAAG;gBACV,aAAa,EAAE,0CAA0C,IAAI,CAAC,WAAW,EAAE;gBAC3E,mBAAmB,EAAE,uQAAuQ;gBAC5R,YAAY,EAAE,mCAAmC;gBACjD,mBAAmB,EACjB,0FAA0F;aAC7F,CAAC;YACF,sBAAsB,EAAE,kCAAkC,CAAC;gBACzD,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;gBACjD,WAAW;gBACX,UAAU,EAAE,UAAU,CAAC,iBAAiB;gBACxC,KAAK,EAAE,GAAG;aACX,CAAC;SACH,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEF,MAAM,sBAAsB,GAAyB;IACnD,EAAE,EAAE,sBAAsB;IAC1B,IAAI,EAAE,wBAAwB;IAC9B,WAAW,EACT,6OAA6O;IAC/O,QAAQ,EAAE,MAAM;IAChB,QAAQ,EAAE,SAAS;IACnB,cAAc,EAAE,CAAC,IAA8B,EAAe,EAAE;QAC9D,MAAM,WAAW,GAAW,yBAAyB,CAAC;QAEtD,OAAO,uBAAuB,CAAC;YAC7B,cAAc,EAAE,8BAA8B,CAAC;gBAC7C,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;gBACzC,mBAAmB,EAAE,wBAAwB;gBAC7C,qBAAqB,EAAE,uBAAuB;gBAC9C,cAAc,EAAE,UAAU;gBAC1B,gBAAgB,EAAE,WAAW;gBAC7B,WAAW,EAAE,WAAW;gBACxB,YAAY,EAAE,6BAA6B;gBAC3C,WAAW,EAAE,WAAW,CAAC,YAAY;gBACrC,UAAU,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE;gBACnC,mBAAmB,EAAE,IAAI;aAC1B,CAAC;YACF,uBAAuB,EAAE,mCAAmC,CAAC;gBAC3D,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;gBACnD,kBAAkB,EAAE,IAAI,CAAC,yBAAyB;gBAClD,eAAe,EAAE,IAAI,CAAC,sBAAsB;gBAC5C,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,WAAW;gBACX,UAAU,EAAE,UAAU,CAAC,WAAW;gBAClC,KAAK,EAAE,EAAE;gBACT,aAAa,EAAE,6CAA6C,IAAI,CAAC,WAAW,EAAE;gBAC9E,mBAAmB,EAAE,4RAA4R;gBACjT,YAAY,EAAE,sCAAsC;gBACpD,mBAAmB,EACjB,mGAAmG;aACtG,CAAC;YACF,sBAAsB,EAAE,kCAAkC,CAAC;gBACzD,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;gBACjD,WAAW;gBACX,UAAU,EAAE,UAAU,CAAC,iBAAiB;gBACxC,KAAK,EAAE,EAAE;aACV,CAAC;SACH,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEF,MAAM,oBAAoB,GAAyB;IACjD,EAAE,EAAE,oBAAoB;IACxB,IAAI,EAAE,sBAAsB;IAC5B,WAAW,EACT,iJAAiJ;IACnJ,QAAQ,EAAE,OAAO;IACjB,QAAQ,EAAE,SAAS;IACnB,cAAc,EAAE,CAAC,IAA8B,EAAe,EAAE;QAC9D,MAAM,WAAW,GAAW,WAAW,CAAC;QAExC,OAAO,uBAAuB,CAAC;YAC7B,cAAc,EAAE,yBAAyB,CAAC;gBACxC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;gBACzC,UAAU,EAAE,qBAAqB;gBACjC,WAAW;gBACX,WAAW,EAAE,WAAW,CAAC,YAAY;gBACrC;;;;mBAIG;gBACH,eAAe,EAAE,sBAAsB,CAAC,GAAG;gBAC3C,UAAU,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE;gBACpC,mBAAmB,EAAE,IAAI;aAC1B,CAAC;YACF,uBAAuB,EAAE,mCAAmC,CAAC;gBAC3D,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;gBACnD,kBAAkB,EAAE,IAAI,CAAC,yBAAyB;gBAClD,eAAe,EAAE,IAAI,CAAC,sBAAsB;gBAC5C,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,WAAW;gBACX,UAAU,EAAE,UAAU,CAAC,WAAW;gBAClC,KAAK,EAAE,GAAG;gBACV,aAAa,EAAE,2CAA2C,IAAI,CAAC,WAAW,EAAE;gBAC5E,mBAAmB,EAAE,gQAAgQ;gBACrR,YAAY,EAAE,oCAAoC;gBAClD,mBAAmB,EACjB,2FAA2F;aAC9F,CAAC;YACF,sBAAsB,EAAE,kCAAkC,CAAC;gBACzD,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;gBACjD,WAAW;gBACX,UAAU,EAAE,UAAU,CAAC,iBAAiB;gBACxC,KAAK,EAAE,GAAG;aACX,CAAC;SACH,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEF,MAAM,uBAAuB,GAAyB;IACpD,EAAE,EAAE,uBAAuB;IAC3B,IAAI,EAAE,mBAAmB;IACzB,WAAW,EACT,0MAA0M;IAC5M,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,SAAS;IACnB,cAAc,EAAE,CAAC,IAA8B,EAAe,EAAE;QAC9D,MAAM,WAAW,GAAW,qBAAqB,CAAC;QAElD,OAAO,uBAAuB,CAAC;YAC7B,cAAc,EAAE,8BAA8B,CAAC;gBAC7C,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;gBACzC,mBAAmB,EAAE,sBAAsB;gBAC3C,qBAAqB,EAAE,qBAAqB;gBAC5C,cAAc,EAAE,WAAW;gBAC3B,gBAAgB,EAAE,YAAY;gBAC9B,WAAW,EAAE,WAAW;gBACxB,YAAY,EAAE,yBAAyB;gBACvC,WAAW,EAAE,WAAW,CAAC,YAAY;gBACrC,UAAU,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE;gBACtC,mBAAmB,EAAE,IAAI;aAC1B,CAAC;YACF,uBAAuB,EAAE,mCAAmC,CAAC;gBAC3D,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;gBACnD,kBAAkB,EAAE,IAAI,CAAC,yBAAyB;gBAClD,eAAe,EAAE,IAAI,CAAC,sBAAsB;gBAC5C,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,WAAW;gBACX,UAAU,EAAE,UAAU,CAAC,WAAW;gBAClC,KAAK,EAAE,EAAE;gBACT,aAAa,EAAE,wCAAwC,IAAI,CAAC,WAAW,EAAE;gBACzE,mBAAmB,EAAE,4QAA4Q;gBACjS,YAAY,EAAE,uCAAuC;gBACrD,mBAAmB,EACjB,uGAAuG;aAC1G,CAAC;YACF,sBAAsB,EAAE,kCAAkC,CAAC;gBACzD,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;gBACjD,WAAW;gBACX,UAAU,EAAE,UAAU,CAAC,iBAAiB;gBACxC,KAAK,EAAE,EAAE;aACV,CAAC;SACH,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEF,MAAM,uBAAuB,GAAyB;IACpD,EAAE,EAAE,wBAAwB;IAC5B,IAAI,EAAE,+BAA+B;IACrC,WAAW,EACT,wRAAwR;IAC1R,QAAQ,EAAE,SAAS;IACnB,QAAQ,EAAE,SAAS;IACnB,cAAc,EAAE,CAAC,IAA8B,EAAe,EAAE;QAC9D,MAAM,WAAW,GAAW,sBAAsB,CAAC;QAEnD,OAAO,uBAAuB,CAAC;YAC7B,cAAc,EAAE,8BAA8B,CAAC;gBAC7C,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;gBACzC,mBAAmB,EAAE,sBAAsB;gBAC3C,qBAAqB,EAAE,qBAAqB;gBAC5C,cAAc,EAAE,WAAW;gBAC3B,gBAAgB,EAAE,YAAY;gBAC9B,WAAW,EAAE,WAAW;gBACxB,YAAY,EAAE,qCAAqC;gBACnD,WAAW,EAAE,WAAW,CAAC,YAAY;gBACrC,UAAU,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE;gBACjC,mBAAmB,EAAE,IAAI;aAC1B,CAAC;YACF,uBAAuB,EAAE,mCAAmC,CAAC;gBAC3D,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;gBACnD,kBAAkB,EAAE,IAAI,CAAC,yBAAyB;gBAClD,eAAe,EAAE,IAAI,CAAC,sBAAsB;gBAC5C,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,WAAW;gBACX,UAAU,EAAE,UAAU,CAAC,WAAW;gBAClC,KAAK,EAAE,EAAE;gBACT,aAAa,EAAE,oDAAoD,IAAI,CAAC,WAAW,EAAE;gBACrF,mBAAmB,EAAE,+RAA+R;gBACpT,YAAY,EAAE,wCAAwC;gBACtD,mBAAmB,EACjB,uGAAuG;aAC1G,CAAC;YACF,sBAAsB,EAAE,kCAAkC,CAAC;gBACzD,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;gBACjD,WAAW;gBACX,UAAU,EAAE,UAAU,CAAC,iBAAiB;gBACxC,KAAK,EAAE,EAAE;aACV,CAAC;SACH,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEF,MAAM,oBAAoB,GAAyB;IACjD,EAAE,EAAE,oBAAoB;IACxB,IAAI,EAAE,4BAA4B;IAClC,WAAW,EACT,0IAA0I;IAC5I,QAAQ,EAAE,IAAI;IACd,QAAQ,EAAE,UAAU;IACpB,cAAc,EAAE,CAAC,IAA8B,EAAe,EAAE;QAC9D,MAAM,WAAW,GAAW,gBAAgB,CAAC;QAE7C,OAAO,uBAAuB,CAAC;YAC7B,cAAc,EAAE,yBAAyB,CAAC;gBACxC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;gBACzC,UAAU,EAAE,cAAc;gBAC1B,WAAW;gBACX,WAAW,EAAE,WAAW,CAAC,YAAY;gBACrC;;;;;mBAKG;gBACH,eAAe,EAAE,sBAAsB,CAAC,GAAG;gBAC3C,UAAU,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;gBAC9B,mBAAmB,EAAE,IAAI;aAC1B,CAAC;YACF,uBAAuB,EAAE,mCAAmC,CAAC;gBAC3D,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;gBACnD,kBAAkB,EAAE,IAAI,CAAC,yBAAyB;gBAClD,eAAe,EAAE,IAAI,CAAC,sBAAsB;gBAC5C,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,WAAW;gBACX,UAAU,EAAE,UAAU,CAAC,WAAW;gBAClC,KAAK,EAAE,CAAC;gBACR,aAAa,EAAE,0CAA0C,IAAI,CAAC,WAAW,EAAE;gBAC3E,mBAAmB,EAAE,qWAAqW;gBAC1X,YAAY,EAAE,gCAAgC;gBAC9C,mBAAmB,EACjB,gEAAgE;aACnE,CAAC;YACF,sBAAsB,EAAE,kCAAkC,CAAC;gBACzD,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;gBACjD,WAAW;gBACX,UAAU,EAAE,UAAU,CAAC,OAAO;gBAC9B,KAAK,EAAE,CAAC;aACT,CAAC;SACH,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEF,MAAM,wBAAwB,GAAyB;IACrD,EAAE,EAAE,yBAAyB;IAC7B,IAAI,EAAE,qBAAqB;IAC3B,WAAW,EACT,yTAAyT;IAC3T,QAAQ,EAAE,QAAQ;IAClB,QAAQ,EAAE,SAAS;IACnB,cAAc,EAAE,CAAC,IAA8B,EAAe,EAAE;QAC9D,MAAM,WAAW,GAAW,uBAAuB,CAAC;QAEpD,OAAO,uBAAuB,CAAC;YAC7B,cAAc,EAAE,yBAAyB,CAAC;gBACxC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;gBACzC;;;;;mBAKG;gBACH,UAAU,EAAE,yBAAyB;gBACrC,WAAW;gBACX,WAAW,EAAE,WAAW,CAAC,YAAY;gBACrC,6DAA6D;gBAC7D,eAAe,EAAE,sBAAsB,CAAC,GAAG;aAC5C,CAAC;YACF,uBAAuB,EAAE,mCAAmC,CAAC;gBAC3D,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;gBACnD,kBAAkB,EAAE,IAAI,CAAC,yBAAyB;gBAClD,eAAe,EAAE,IAAI,CAAC,sBAAsB;gBAC5C,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,WAAW;gBACX,UAAU,EAAE,UAAU,CAAC,WAAW;gBAClC,KAAK,EAAE,CAAC;gBACR,aAAa,EAAE,mCAAmC,IAAI,CAAC,WAAW,EAAE;gBACpE,mBAAmB,EAAE,wbAAwb;gBAC7c,YAAY,EAAE,mCAAmC;gBACjD,mBAAmB,EACjB,oFAAoF;aACvF,CAAC;YACF,sBAAsB,EAAE,kCAAkC,CAAC;gBACzD,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;gBACjD,WAAW;gBACX,UAAU,EAAE,UAAU,CAAC,OAAO;gBAC9B,KAAK,EAAE,CAAC;aACT,CAAC;SACH,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEF,MAAM,0BAA0B,GAAyB;IACvD,EAAE,EAAE,yBAAyB;IAC7B,IAAI,EAAE,qBAAqB;IAC3B,WAAW,EACT,mTAAmT;IACrT,QAAQ,EAAE,aAAa;IACvB,QAAQ,EAAE,UAAU;IACpB,cAAc,EAAE,CAAC,IAA8B,EAAe,EAAE;QAC9D,MAAM,WAAW,GAAW,0BAA0B,CAAC;QAEvD,OAAO,uBAAuB,CAAC;YAC7B,cAAc,EAAE,yBAAyB,CAAC;gBACxC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;gBACzC;;;;;mBAKG;gBACH,UAAU,EAAE,8BAA8B;gBAC1C,WAAW;gBACX,WAAW,EAAE,WAAW,CAAC,YAAY;gBACrC,6DAA6D;gBAC7D,eAAe,EAAE,sBAAsB,CAAC,GAAG;gBAC3C,mBAAmB,EAAE,IAAI;aAC1B,CAAC;YACF,uBAAuB,EAAE,mCAAmC,CAAC;gBAC3D,sBAAsB,EAAE,IAAI,CAAC,sBAAsB;gBACnD,kBAAkB,EAAE,IAAI,CAAC,yBAAyB;gBAClD,eAAe,EAAE,IAAI,CAAC,sBAAsB;gBAC5C,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,WAAW;gBACX,UAAU,EAAE,UAAU,CAAC,WAAW;gBAClC,KAAK,EAAE,CAAC;gBACR,aAAa,EAAE,6CAA6C,IAAI,CAAC,WAAW,EAAE;gBAC9E,mBAAmB,EAAE,ieAAie;gBACtf,YAAY,EAAE,wCAAwC;gBACtD,mBAAmB,EACjB,gGAAgG;aACnG,CAAC;YACF,sBAAsB,EAAE,kCAAkC,CAAC;gBACzD,qBAAqB,EAAE,IAAI,CAAC,qBAAqB;gBACjD,WAAW;gBACX,UAAU,EAAE,UAAU,CAAC,OAAO;gBAC9B,KAAK,EAAE,CAAC;aACT,CAAC;SACH,CAAC,CAAC;IACL,CAAC;CACF,CAAC;AAEF,MAAM,UAAU,2BAA2B;IACzC,OAAO;QACL,mBAAmB;QACnB,iBAAiB;QACjB,kBAAkB;QAClB,mBAAmB;QACnB,sBAAsB;QACtB,oBAAoB;QACpB,uBAAuB;QACvB,uBAAuB;QACvB,oBAAoB;QACpB,wBAAwB;QACxB,0BAA0B;KAC3B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kCAAkC,CAChD,QAAsC;IAEtC,OAAO,2BAA2B,EAAE,CAAC,MAAM,CACzC,CAAC,QAA8B,EAAE,EAAE;QACjC,OAAO,QAAQ,CAAC,QAAQ,KAAK,QAAQ,CAAC;IACxC,CAAC,CACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,2BAA2B,CACzC,EAAU;IAEV,OAAO,2BAA2B,EAAE,CAAC,IAAI,CACvC,CAAC,QAA8B,EAAE,EAAE;QACjC,OAAO,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAC;IAC5B,CAAC,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"ProxmoxAlertTemplates.js","sourceRoot":"","sources":["../../../../Types/Monitor/ProxmoxAlertTemplates.ts"],"names":[],"mappings":"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"}
@@ -44,12 +44,24 @@ export default class MonitorRecommendationSeverityMapper {
44
44
  * distinction, and refusing to map Warning at all would leave those monitors
45
45
  * on the template's own choice, which is the bug this class exists to fix.
46
46
  *
47
- * Warning deliberately takes the SECOND severity rather than the LAST. On
48
- * the default seed those are the same row (incidents: Critical/Major/Minor
49
- * -> Major either way is second, Minor is last), but a project with five
50
- * severities means "Warning" much closer to Major than to the bottom of the
51
- * scale, and a recommendation the catalog calls Warning is a real
52
- * production problem, not a nitpick.
47
+ * Warning deliberately takes the SECOND severity rather than the LAST.
48
+ *
49
+ * On the default seeds those are not the same answer, and the two seeds are
50
+ * not the same shape. `ProjectService.addDefaultIncidentSeverity` seeds
51
+ * three rows (Critical Incident 1 / Major Incident 2 / Minor Incident 3), so
52
+ * Warning gets Major and NOT Minor — the rule doing real work.
53
+ * `addDefaultAlertSeverity` seeds only two (High 1 / Low 2), so for alerts
54
+ * second IS last and every Warning recommendation resolves to "Low". That is
55
+ * intended and is the only option that preserves the distinction: with two
56
+ * severities, anything else collapses Critical and Warning onto one row,
57
+ * which is the exact bug this class exists to fix. It is also why an alert
58
+ * email can read "SEVERITY: Low" for a template the catalog card labels
59
+ * "Warning" — the create side over shows the user that mapping before they
60
+ * confirm.
61
+ *
62
+ * On a project with five severities the two answers diverge and second is
63
+ * the right one: a recommendation the catalog calls Warning is a real
64
+ * production problem, not the bottom of the scale.
53
65
  */
54
66
  static getDefaultSeverityMapping(options) {
55
67
  const ranked = this.rankSeverities(options);
@@ -63,6 +75,55 @@ export default class MonitorRecommendationSeverityMapper {
63
75
  Warning: nextSevere.id,
64
76
  };
65
77
  }
78
+ /*
79
+ * `getDefaultSeverityMapping` for a list that is ALREADY ranked and carries
80
+ * no `order` column.
81
+ *
82
+ * The monitor form builds its severity dropdowns from an API list sorted
83
+ * `{ order: SortOrder.Ascending }` and keeps only `{ value, label }` (see
84
+ * App/FeatureSet/Dashboard/src/Components/Form/Monitor/MonitorSteps.tsx), so
85
+ * position IS the rank by the time it reaches a template picker.
86
+ * Synthesising `order` from the index rather than adding a second ranking
87
+ * rule keeps `getDefaultSeverityMapping` the only place that decides what
88
+ * Critical and Warning mean.
89
+ */
90
+ static getMappingFromRankedIds(rankedIds) {
91
+ return this.getDefaultSeverityMapping(rankedIds.map((id, index) => {
92
+ return { id: id, name: "", order: index + 1 };
93
+ }));
94
+ }
95
+ /*
96
+ * The severity ids a template should BUILD its criteria with, given the
97
+ * severity the template itself declares.
98
+ *
99
+ * This is the monitor-edit template picker's half of the job
100
+ * `MonitorRecommendationUtil.applyNotificationSettingsToMonitorStep` does
101
+ * for the recommendations page. That page can rewrite the ids after the
102
+ * fact because it owns the whole create; a picker hands its ids to
103
+ * `getMonitorStep` up front and never sees the criteria instances again, so
104
+ * it has to choose correctly the first time. Without this, every template a
105
+ * picker applies was built with the project's FIRST severity — so "Task
106
+ * Down" (Critical) and "High Task CPU Usage" (Warning) opened records at the
107
+ * same level and the Critical/Warning badge on the picker card described
108
+ * nothing that subsequently happened.
109
+ *
110
+ * Falls back to the caller's own default when the project list is empty,
111
+ * because `getMonitorStep` requires a non-optional id in both slots.
112
+ */
113
+ static resolveTemplateSeverityIds(data) {
114
+ const incidentSeverityId = this.resolveSeverityId({
115
+ severity: data.severity,
116
+ severityMap: this.getMappingFromRankedIds(data.rankedIncidentSeverityIds || []),
117
+ });
118
+ const alertSeverityId = this.resolveSeverityId({
119
+ severity: data.severity,
120
+ severityMap: this.getMappingFromRankedIds(data.rankedAlertSeverityIds || []),
121
+ });
122
+ return {
123
+ incidentSeverityId: incidentSeverityId || data.fallbackIncidentSeverityId,
124
+ alertSeverityId: alertSeverityId || data.fallbackAlertSeverityId,
125
+ };
126
+ }
66
127
  /*
67
128
  * Resolve one recommendation's severity through a mapping.
68
129
  *
@@ -1 +1 @@
1
- {"version":3,"file":"MonitorRecommendationSeverityMapper.js","sourceRoot":"","sources":["../../../../../Types/Monitor/Recommendation/MonitorRecommendationSeverityMapper.ts"],"names":[],"mappings":"AAqBA;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,OAAO,OAAO,mCAAmC;IACtD;;;;;;;;;;;;OAYG;IACI,MAAM,CAAC,cAAc,CAC1B,OAAmD;QAEnD,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,CACtB,CACE,CAAsC,EACtC,CAAsC,EACtC,EAAE;YACF,MAAM,MAAM,GACV,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC;YAClE,MAAM,MAAM,GACV,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC;YAElE,OAAO,MAAM,GAAG,MAAM,CAAC;QACzB,CAAC,CACF,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACI,MAAM,CAAC,yBAAyB,CACrC,OAAmD;QAEnD,MAAM,MAAM,GACV,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAE/B,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxB,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,UAAU,GAAwC,MAAM,CAAC,CAAC,CAAE,CAAC;QACnE,MAAM,UAAU,GACd,MAAM,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC;QAE1B,OAAO;YACL,QAAQ,EAAE,UAAU,CAAC,EAAE;YACvB,OAAO,EAAE,UAAU,CAAC,EAAE;SACvB,CAAC;IACJ,CAAC;IAED;;;;;;;;OAQG;IACI,MAAM,CAAC,iBAAiB,CAAC,IAG/B;QACC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACzC,CAAC;IAED;;;;OAIG;IACI,MAAM,CAAC,eAAe,CAAC,IAG7B;QACC,MAAM,UAAU,GAAyC;YACvD,UAAU;YACV,SAAS;SACV,CAAC;QAEF,MAAM,SAAS,GAGV,EAAE,CAAC;QAER,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;YAClC,MAAM,EAAE,GAAyB,IAAI,CAAC,iBAAiB,CAAC;gBACtD,QAAQ,EAAE,QAAQ;gBAClB,WAAW,EAAE,IAAI,CAAC,WAAW;aAC9B,CAAC,CAAC;YAEH,IAAI,CAAC,EAAE,EAAE,CAAC;gBACR,SAAS;YACX,CAAC;YAED,MAAM,KAAK,GACT,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAA2C,EAAE,EAAE;gBAChE,OAAO,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC,QAAQ,EAAE,CAAC;YAChD,CAAC,CAAC,CAAC;YAEL,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,SAAS;YACX,CAAC;YAED,SAAS,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QAC3D,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;CACF"}
1
+ {"version":3,"file":"MonitorRecommendationSeverityMapper.js","sourceRoot":"","sources":["../../../../../Types/Monitor/Recommendation/MonitorRecommendationSeverityMapper.ts"],"names":[],"mappings":"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"}
@@ -5,8 +5,9 @@ export default class MonitorRecommendationUtil {
5
5
  /*
6
6
  * Deterministic monitor name for a recommendation applied to a resource.
7
7
  *
8
- * Used both as the created monitor's name and as the `monitorName` arg the
9
- * template modules interpolate into their incident/alert titles.
8
+ * This is the created monitor's OWN name, and nothing else. The string the
9
+ * templates interpolate into their titles is `getTemplateMonitorName` —
10
+ * see there for why the two must differ.
10
11
  */
11
12
  static getMonitorName(data) {
12
13
  const resourceName = data.resourceDisplayName.trim();
@@ -15,6 +16,33 @@ export default class MonitorRecommendationUtil {
15
16
  }
16
17
  return `${resourceName} - ${data.recommendation.name}`;
17
18
  }
19
+ /*
20
+ * The `monitorName` arg the template modules interpolate into their incident
21
+ * and alert titles. NOT the monitor's own name.
22
+ *
23
+ * Every template title already restates the template's own name —
24
+ * `[K8s] Pod CPU Saturating Container Limit (>90%) - ${args.monitorName}` —
25
+ * and `getMonitorName` ends with that same template name, so passing the
26
+ * composed name back in produced the stuttering production title
27
+ *
28
+ * [K8s] Pod CPU Saturating Container Limit (>90%)
29
+ * - oneuptime-test - Pod CPU Saturating Container Limit
30
+ *
31
+ * which also pushed the pod identity `SeriesContextEnricher.enrichTitle`
32
+ * appends past the part of a subject line a mail client shows. The template
33
+ * supplies the "what", this supplies the "where", the enricher supplies
34
+ * "which one".
35
+ *
36
+ * Falls back to the composed name when the resource has no display name at
37
+ * all, so a title can never end in a bare " - ".
38
+ */
39
+ static getTemplateMonitorName(data) {
40
+ return (data.resourceDisplayName.trim() ||
41
+ this.getMonitorName({
42
+ recommendation: data.recommendation,
43
+ resourceDisplayName: data.resourceDisplayName,
44
+ }));
45
+ }
18
46
  /*
19
47
  * Push the user's chosen on-call policies, owners, labels, severities and
20
48
  * incident-vs-alert choice into every criteria instance in a step.
@@ -448,13 +476,16 @@ export default class MonitorRecommendationUtil {
448
476
  * Build a recommendation's step exactly as the create flow would, and reduce
449
477
  * it to its serialized fingerprint.
450
478
  *
451
- * The `monitorName` recomputation matters: templates interpolate the monitor
452
- * name into incident titles, and while the name is not part of the
453
- * fingerprint, building the step with a different name than the create flow
454
- * uses would be an easy way for the two paths to drift apart later.
479
+ * The `monitorName` recomputation matters: templates interpolate that name
480
+ * into incident titles, and while the name is not part of the fingerprint,
481
+ * building the step with a different name than the create flow uses would be
482
+ * an easy way for the two paths to drift apart later. It therefore calls the
483
+ * same `getTemplateMonitorName` that `MonitorRecommendationCreateUtil
484
+ * .buildMonitor` does — callers pass the bare resource display name as
485
+ * `args.monitorName`, exactly as the create flow's `resourceDisplayName`.
455
486
  */
456
487
  static getSerializedFingerprintForRecommendation(data) {
457
- const fingerprint = this.getFingerprintFromMonitorStep(data.recommendation.getMonitorStep(Object.assign(Object.assign({}, data.args), { monitorName: this.getMonitorName({
488
+ const fingerprint = this.getFingerprintFromMonitorStep(data.recommendation.getMonitorStep(Object.assign(Object.assign({}, data.args), { monitorName: this.getTemplateMonitorName({
458
489
  recommendation: data.recommendation,
459
490
  resourceDisplayName: data.args.monitorName,
460
491
  }) })));