@oneuptime/common 12.0.32 → 12.0.33

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 (597) hide show
  1. package/Models/AnalyticsModels/Span.ts +14 -0
  2. package/Models/DatabaseModels/EnterpriseLicense.ts +56 -0
  3. package/Models/DatabaseModels/Index.ts +10 -0
  4. package/Models/DatabaseModels/Monitor.ts +76 -0
  5. package/Models/DatabaseModels/NetworkAlertPolicy.ts +690 -0
  6. package/Models/DatabaseModels/NetworkDevice.ts +176 -1
  7. package/Models/DatabaseModels/NetworkSite.ts +201 -2
  8. package/Models/DatabaseModels/NetworkSiteType.ts +102 -3
  9. package/Models/DatabaseModels/NetworkSnmpCredentialProfile.ts +841 -0
  10. package/Models/DatabaseModels/TelemetryException.ts +119 -0
  11. package/Models/DatabaseModels/UserNotificationEmailRollupBatch.ts +334 -0
  12. package/Models/DatabaseModels/UserNotificationEmailRollupItem.ts +370 -0
  13. package/Models/DatabaseModels/UserNotificationEmailRollupSetting.ts +282 -0
  14. package/Server/API/EnterpriseLicenseAPI.ts +391 -64
  15. package/Server/API/LlmProviderAPI.ts +137 -22
  16. package/Server/EnvironmentConfig.ts +14 -0
  17. package/Server/Infrastructure/Postgres/SchemaMigrations/1790700000000-AddNetworkSiteTypeParentHierarchy.ts +55 -0
  18. package/Server/Infrastructure/Postgres/SchemaMigrations/1790900000000-AddEnterpriseLicenseUsageProvenance.ts +31 -0
  19. package/Server/Infrastructure/Postgres/SchemaMigrations/1790900000000-AddTelemetryExceptionErrorClass.ts +124 -0
  20. package/Server/Infrastructure/Postgres/SchemaMigrations/1791000000000-AddUserNotificationEmailRollup.ts +132 -0
  21. package/Server/Infrastructure/Postgres/SchemaMigrations/1791100000000-AddUserNotificationEmailRollupSetting.ts +79 -0
  22. package/Server/Infrastructure/Postgres/SchemaMigrations/1791200000000-AddNetworkSnmpCredentialProfilesAndAlertPolicies.ts +191 -0
  23. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +12 -0
  24. package/Server/Infrastructure/QueueWorker.ts +38 -8
  25. package/Server/Middleware/BearerTokenAuthorization.ts +12 -0
  26. package/Server/Middleware/ProjectAuthorization.ts +11 -0
  27. package/Server/Middleware/SCIMAuthorization.ts +12 -0
  28. package/Server/Middleware/TelemetryIngest.ts +11 -0
  29. package/Server/Services/AIBillingService.ts +101 -27
  30. package/Server/Services/EnterpriseLicenseInstanceService.ts +197 -0
  31. package/Server/Services/EnterpriseLicenseService.ts +55 -0
  32. package/Server/Services/Index.ts +10 -0
  33. package/Server/Services/MonitorService.ts +143 -21
  34. package/Server/Services/MonitorStatusTimelineService.ts +150 -8
  35. package/Server/Services/MonitorTemplateService.ts +217 -1
  36. package/Server/Services/NetworkAlertPolicyEngineService.ts +2159 -0
  37. package/Server/Services/NetworkAlertPolicyService.ts +944 -0
  38. package/Server/Services/NetworkDeviceAutoImportRuleEngineService.ts +9 -10
  39. package/Server/Services/NetworkDeviceAutoImportRuleService.ts +60 -15
  40. package/Server/Services/NetworkDeviceService.ts +1032 -73
  41. package/Server/Services/NetworkSiteService.ts +1502 -129
  42. package/Server/Services/NetworkSiteTypeService.ts +1216 -0
  43. package/Server/Services/NetworkSnmpCredentialProfileService.ts +238 -0
  44. package/Server/Services/NotificationService.ts +118 -28
  45. package/Server/Services/ProjectService.ts +105 -48
  46. package/Server/Services/StatusPagePrivateUserService.ts +103 -3
  47. package/Server/Services/UserNotificationEmailRollupBatchService.ts +78 -0
  48. package/Server/Services/UserNotificationEmailRollupItemService.ts +79 -0
  49. package/Server/Services/UserNotificationEmailRollupSettingService.ts +113 -0
  50. package/Server/Services/UserNotificationSettingService.ts +62 -25
  51. package/Server/Services/UserService.ts +95 -0
  52. package/Server/Types/Database/QueryHelper.ts +2 -2
  53. package/Server/Utils/AI/Chat/ObservabilityChatPrompt.ts +14 -3
  54. package/Server/Utils/AI/SRE/Insights/Detectors/ExceptionSpikeDetector.ts +10 -0
  55. package/Server/Utils/AI/SRE/Insights/Detectors/NewExceptionDetector.ts +10 -0
  56. package/Server/Utils/AI/SRE/Insights/InsightTriageRunner.ts +62 -1
  57. package/Server/Utils/AI/Toolbox/AlertTools.ts +15 -1
  58. package/Server/Utils/Billing/BillingFailureNoticeThrottle.ts +80 -0
  59. package/Server/Utils/DataSource/HttpFetch.ts +9 -2
  60. package/Server/Utils/EmailRollup/EmailRollupConstants.ts +98 -0
  61. package/Server/Utils/EmailRollup/EmailRollupFlushRunner.ts +872 -0
  62. package/Server/Utils/EmailRollup/EmailRollupRenderer.ts +781 -0
  63. package/Server/Utils/EmailRollup/EmailRollupWriter.ts +368 -0
  64. package/Server/Utils/LLM/LLMService.ts +78 -0
  65. package/Server/Utils/LogRedaction.ts +8 -0
  66. package/Server/Utils/Logger.ts +79 -1
  67. package/Server/Utils/Monitor/Criteria/DatabaseMonitorCriteria.ts +190 -0
  68. package/Server/Utils/Monitor/Criteria/EvaluateOverTime.ts +9 -2
  69. package/Server/Utils/Monitor/Criteria/SnmpMonitorCriteria.ts +61 -1
  70. package/Server/Utils/Monitor/MonitorCriteriaDataExtractor.ts +14 -0
  71. package/Server/Utils/Monitor/MonitorCriteriaEvaluator.ts +49 -0
  72. package/Server/Utils/Monitor/MonitorCriteriaObservationBuilder.ts +255 -4
  73. package/Server/Utils/Monitor/MonitorMetricUtil.ts +41 -0
  74. package/Server/Utils/Monitor/MonitorTemplateUtil.ts +43 -0
  75. package/Server/Utils/Monitor/NetworkDeviceHydrationUtil.ts +499 -19
  76. package/Server/Utils/Monitor/NetworkDeviceMetricUtil.ts +66 -10
  77. package/Server/Utils/Monitor/NetworkDeviceWalkUtil.ts +238 -44
  78. package/Server/Utils/Monitor/NetworkInventoryUtil.ts +146 -39
  79. package/Server/Utils/NetworkDevice/DeviceHealthAggregation.ts +31 -18
  80. package/Server/Utils/NetworkSite/NetworkSiteHierarchyLock.ts +213 -0
  81. package/Server/Utils/OutboundUserAgent.ts +152 -0
  82. package/Server/Utils/StartServer.ts +51 -19
  83. package/Server/Utils/Telemetry/CaptureSpan.ts +32 -8
  84. package/Server/Utils/Telemetry/ErrorClassResolver.ts +120 -0
  85. package/Server/Utils/Telemetry/SpanUtil.ts +33 -0
  86. package/Server/Utils/Telemetry.ts +198 -51
  87. package/Server/Views/Partials/SensitiveUrlToken.ejs +140 -0
  88. package/Tests/App/Dashboard/AddNeighborToMonitoringModal.test.tsx +134 -33
  89. package/Tests/App/Dashboard/AskAiSuggestedPrompts.test.ts +279 -0
  90. package/Tests/App/Dashboard/DashboardEditPermissions.test.tsx +517 -0
  91. package/Tests/App/Dashboard/DashboardVariablesDiscard.test.tsx +26 -0
  92. package/Tests/App/Dashboard/DeviceStatusHero.test.tsx +588 -0
  93. package/Tests/App/Dashboard/DiscoveryScanWizardValidation.test.tsx +18 -9
  94. package/Tests/App/Dashboard/MonitorCreateFromMonitorBackedDevice.test.tsx +632 -0
  95. package/Tests/App/Dashboard/MonitorRecommendationCreateProgress.test.tsx +682 -0
  96. package/Tests/App/Dashboard/MonitorTypePicker.test.tsx +4 -2
  97. package/Tests/App/Dashboard/NetworkDeviceCreateFormMonitorBinding.test.tsx +676 -0
  98. package/Tests/App/Dashboard/NetworkDeviceCreateFormPingMonitor.test.tsx +791 -0
  99. package/Tests/App/Dashboard/NetworkDeviceCreateFormProbeAndSnmp.test.tsx +833 -0
  100. package/Tests/App/Dashboard/NetworkDeviceCriteriaFilter.test.ts +161 -0
  101. package/Tests/App/Dashboard/NetworkDeviceSettingsMonitoringSection.test.tsx +458 -0
  102. package/Tests/App/Dashboard/NetworkSideMenu.test.tsx +41 -5
  103. package/Tests/App/Dashboard/PingMonitorProvisioning.test.ts +368 -0
  104. package/Tests/App/Dashboard/RecommendationCard.test.tsx +796 -0
  105. package/Tests/App/Dashboard/RecommendationToolbar.test.tsx +519 -0
  106. package/Tests/App/Dashboard/RecommendationsList.test.tsx +661 -0
  107. package/Tests/App/Dashboard/UseBulkCreatePingMonitors.test.tsx +899 -0
  108. package/Tests/App/Dashboard/UseBulkSnmpCredentialProfileActions.test.tsx +732 -0
  109. package/Tests/App/SensitiveUrlTokenBootstrap.test.ts +256 -0
  110. package/Tests/App/StatusPage/StatusPageIndexPageRobotsMeta.test.ts +11 -1
  111. package/Tests/App/StatusPage/StatusPageLoginCodeBootstrap.test.ts +9 -4
  112. package/Tests/Models/NetworkSiteHierarchy.test.ts +41 -4
  113. package/Tests/Server/API/EnterpriseLicenseReportUserCount.test.ts +951 -7
  114. package/Tests/Server/API/LlmProviderConnectionTest.test.ts +522 -0
  115. package/Tests/Server/Infrastructure/Postgres/NetworkSnmpCredentialProfilesAndAlertPoliciesMigration.test.ts +854 -0
  116. package/Tests/Server/Infrastructure/Postgres/SchemaMigrationsOrdering.test.ts +18 -0
  117. package/Tests/Server/Infrastructure/Postgres/UserNotificationEmailRollupTableMigration.test.ts +535 -0
  118. package/Tests/Server/Services/AIChatPrivacyPin.test.ts +560 -0
  119. package/Tests/Server/Services/BillingRechargeOwnerEmailGuards.test.ts +783 -0
  120. package/Tests/Server/Services/EnterpriseLicenseInstanceServiceDeletionUsage.test.ts +707 -0
  121. package/Tests/Server/Services/EnterpriseLicenseServiceUsageAggregationLock.test.ts +329 -0
  122. package/Tests/Server/Services/MonitorServiceDeleteNetworkDeviceCleanup.test.ts +294 -0
  123. package/Tests/Server/Services/MonitorStatusBridgeProbePath.test.ts +802 -0
  124. package/Tests/Server/Services/MonitorStatusTimelineService.test.ts +72 -2
  125. package/Tests/Server/Services/NetworkAlertPolicyEngineHooks.test.ts +752 -0
  126. package/Tests/Server/Services/NetworkAlertPolicyEngineService.test.ts +1849 -0
  127. package/Tests/Server/Services/NetworkAlertPolicyModel.test.ts +1793 -0
  128. package/Tests/Server/Services/NetworkDeviceAutoImportRuleEngineService.test.ts +47 -4
  129. package/Tests/Server/Services/NetworkDeviceAutoImportRuleService.test.ts +97 -12
  130. package/Tests/Server/Services/NetworkDeviceAutoMonitorLifecycle.test.ts +148 -3
  131. package/Tests/Server/Services/NetworkDeviceMonitorBindingUpdateGuard.test.ts +514 -0
  132. package/Tests/Server/Services/NetworkDeviceMonitorStatusStamp.test.ts +447 -58
  133. package/Tests/Server/Services/NetworkDeviceMonitoringMethodTransition.test.ts +739 -0
  134. package/Tests/Server/Services/NetworkDevicePollingTenancy.test.ts +501 -0
  135. package/Tests/Server/Services/NetworkDeviceSiteDefaultProbe.test.ts +432 -0
  136. package/Tests/Server/Services/NetworkSiteMonitoringDefaults.test.ts +498 -0
  137. package/Tests/Server/Services/NetworkSiteRollupPolicyAndMaintenance.test.ts +337 -55
  138. package/Tests/Server/Services/NetworkSiteService.test.ts +1868 -131
  139. package/Tests/Server/Services/NetworkSiteTypeService.test.ts +1109 -0
  140. package/Tests/Server/Services/NetworkSnmpCredentialProfileModel.test.ts +926 -0
  141. package/Tests/Server/Services/NetworkSnmpCredentialProfileService.test.ts +796 -0
  142. package/Tests/Server/Services/ProjectServiceNetworkSiteTypeDefaults.test.ts +214 -0
  143. package/Tests/Server/Services/StatusPagePrivateUserEmailChangePasswordResetExpiry.test.ts +269 -0
  144. package/Tests/Server/Services/UserEmailChangePasswordResetExpiry.test.ts +472 -0
  145. package/Tests/Server/Services/UserNotificationEmailRollupModels.test.ts +569 -0
  146. package/Tests/Server/Services/UserNotificationEmailRollupSettingModel.test.ts +314 -0
  147. package/Tests/Server/Services/UserNotificationEmailRollupSettingService.test.ts +409 -0
  148. package/Tests/Server/Services/UserNotificationSettingRollupRouting.test.ts +856 -0
  149. package/Tests/Server/Services/UserNotificationSettingWorkspaceChannels.test.ts +102 -1
  150. package/Tests/Server/Types/Database/Permissions/DashboardAccessPermission.test.ts +321 -0
  151. package/Tests/Server/Types/Database/QueryHelperOperators.test.ts +17 -0
  152. package/Tests/Server/Utils/AI/AlertMonitorFilters.test.ts +124 -0
  153. package/Tests/Server/Utils/AI/Insights/InsightTriageRunner.test.ts +208 -0
  154. package/Tests/Server/Utils/AI/LLMServiceToolCalling.test.ts +235 -0
  155. package/Tests/Server/Utils/AI/ObservabilityChatPrompt.test.ts +253 -0
  156. package/Tests/Server/Utils/Captcha.test.ts +422 -0
  157. package/Tests/Server/Utils/DataSource/HttpFetch.test.ts +96 -2
  158. package/Tests/Server/Utils/Database/MigrationFailureLog.test.ts +466 -0
  159. package/Tests/Server/Utils/EmailRollup/EmailRollupFlushRunnerBehaviour.test.ts +1096 -0
  160. package/Tests/Server/Utils/EmailRollup/EmailRollupFlushRunnerClaim.test.ts +466 -0
  161. package/Tests/Server/Utils/EmailRollup/EmailRollupRenderer.test.ts +1428 -0
  162. package/Tests/Server/Utils/EmailRollup/EmailRollupTestHarness.ts +752 -0
  163. package/Tests/Server/Utils/EmailRollup/EmailRollupWriter.test.ts +864 -0
  164. package/Tests/Server/Utils/LoggerFaultDemotion.test.ts +346 -0
  165. package/Tests/Server/Utils/Monitor/Criteria/DatabaseMonitorCriteria.test.ts +633 -0
  166. package/Tests/Server/Utils/Monitor/Criteria/SnmpMonitorCriteria.test.ts +196 -0
  167. package/Tests/Server/Utils/Monitor/DatabaseMetricWrite.test.ts +367 -0
  168. package/Tests/Server/Utils/Monitor/MonitorCriteriaObservationBuilderUnits.test.ts +100 -0
  169. package/Tests/Server/Utils/Monitor/MonitorStepResourceIdentity.test.ts +5 -0
  170. package/Tests/Server/Utils/Monitor/NetworkDeviceHydrationUtil.test.ts +512 -31
  171. package/Tests/Server/Utils/Monitor/NetworkDeviceMetricUtil.test.ts +252 -0
  172. package/Tests/Server/Utils/Monitor/NetworkDeviceWalkUtil.test.ts +479 -42
  173. package/Tests/Server/Utils/Monitor/NetworkInventoryUtil.test.ts +351 -5
  174. package/Tests/Server/Utils/NetworkDevice/DeviceHealthAggregation.test.ts +136 -12
  175. package/Tests/Server/Utils/NetworkSite/NetworkSiteHierarchyLock.test.ts +306 -0
  176. package/Tests/Server/Utils/OutboundUserAgent.test.ts +266 -0
  177. package/Tests/Server/Utils/SecurityEvent/ThreatIntel/TaxiiClientUserAgent.test.ts +141 -0
  178. package/Tests/Server/Utils/Telemetry/ErrorClassResolver.test.ts +298 -0
  179. package/Tests/Server/Utils/Telemetry.test.ts +456 -66
  180. package/Tests/Types/Monitor/DatabaseMetricCatalog.test.ts +388 -0
  181. package/Tests/Types/Monitor/MonitorStepDatabaseMonitor.test.ts +243 -0
  182. package/Tests/Types/Monitor/MonitorStepDefaultTelemetryConfig.test.ts +1 -0
  183. package/Tests/Types/Monitor/MonitorType.test.ts +1 -0
  184. package/Tests/Types/Monitor/MonitorTypeKeywords.test.ts +16 -7
  185. package/Tests/Types/Monitor/NetworkDeviceAlertPack.test.ts +60 -0
  186. package/Tests/Types/NetworkDevice/NetworkAlertPolicyScope.test.ts +655 -0
  187. package/Tests/Types/NetworkDevice/NetworkDeviceMonitoringMethod.test.ts +115 -26
  188. package/Tests/Types/NetworkSite/DefaultNetworkSiteType.test.ts +39 -0
  189. package/Tests/Types/NotificationSetting/NotificationEmailRollupPolicy.test.ts +299 -0
  190. package/Tests/Types/Telemetry/ErrorClass.test.ts +483 -0
  191. package/Tests/UI/Components/BasicRadioButtons.test.tsx +336 -0
  192. package/Tests/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.test.ts +15 -0
  193. package/Tests/UI/Components/ProgressBar.test.tsx +38 -2
  194. package/Tests/UI/Components/SideMenuItem.test.tsx +226 -4
  195. package/Tests/UI/Components/SideMenuSection.test.tsx +310 -0
  196. package/Tests/UI/Components/SideOverSubmitState.test.tsx +335 -0
  197. package/Tests/UI/Utils/PageScrollLock.test.tsx +377 -0
  198. package/Tests/UI/Utils/PermissionGate.test.ts +78 -0
  199. package/Tests/UI/Utils/SensitiveUrlToken.test.ts +140 -0
  200. package/Tests/Utils/EnterpriseLicenseSeats.test.ts +69 -0
  201. package/Tests/Utils/EnterpriseLicenseSync.test.ts +7 -1
  202. package/Tests/Utils/EnterpriseLicenseUsage.test.ts +433 -2
  203. package/Tests/Utils/Monitor/MonitorMetricType.test.ts +280 -1
  204. package/Tests/Utils/Monitor/MonitorSummarySnapshotUtil.test.ts +1 -0
  205. package/Tests/Utils/Monitor/NetworkTopologyUtil.test.ts +38 -0
  206. package/Tests/Utils/NetworkDevice/DeviceHealthStateUtil.test.ts +284 -23
  207. package/Tests/Utils/NetworkDevice/DeviceReachabilityUtil.test.ts +177 -0
  208. package/Tests/Utils/NetworkDevice/MonitoringMethodThreadedClassifiers.test.ts +992 -0
  209. package/Tests/Utils/NetworkDevice/NetworkAlertPolicyBootstrapUtil.test.ts +427 -0
  210. package/Tests/Utils/NetworkDevice/ReachabilityStampConsistency.test.ts +185 -0
  211. package/Tests/Utils/NetworkDevice/SnmpCredentialUtil.test.ts +268 -0
  212. package/Tests/Utils/NetworkDiscovery/AutoImportRuleMatcher.test.ts +55 -5
  213. package/Tests/Utils/NetworkDiscovery/DiscoveredDeviceBuilder.test.ts +98 -21
  214. package/Tests/Utils/NetworkDiscovery/DiscoveryImportEligibility.test.ts +98 -20
  215. package/Tests/Utils/NetworkDiscovery/DiscoveryReverseDnsChain.test.ts +8 -7
  216. package/Tests/Utils/NetworkDiscovery/PingMonitorBuilderForAddress.test.ts +274 -0
  217. package/Tests/Utils/NetworkSite/SiteStatusRollupUtil.test.ts +230 -51
  218. package/Tests/Utils/NetworkSite/TypeHierarchyUtil.test.ts +209 -0
  219. package/Tests/Utils/Telemetry/CaptureSpanExportGating.test.ts +145 -0
  220. package/Types/AI/ExceptionAIClassification.ts +10 -24
  221. package/Types/Email/EmailTemplateType.ts +2 -0
  222. package/Types/EnterpriseLicense/EnterpriseLicenseInstanceSummary.ts +5 -0
  223. package/Types/EnterpriseLicense/EnterpriseLicenseUsageSnapshot.ts +13 -0
  224. package/Types/EnterpriseLicense/EnterpriseLicenseUserCountSource.ts +6 -0
  225. package/Types/Exception/ApiException.ts +10 -0
  226. package/Types/Exception/BadDataException.ts +11 -0
  227. package/Types/Exception/BadRequestException.ts +11 -0
  228. package/Types/Exception/Exception.ts +65 -0
  229. package/Types/Exception/ForbiddenException.ts +10 -0
  230. package/Types/Exception/NotAuthenticatedException.ts +10 -0
  231. package/Types/Exception/NotAuthorizedException.ts +10 -0
  232. package/Types/Exception/NotFoundException.ts +11 -0
  233. package/Types/Exception/PayloadTooLargeException.ts +11 -0
  234. package/Types/Exception/PaymentRequiredException.ts +10 -0
  235. package/Types/Exception/ServiceUnavailableException.ts +10 -0
  236. package/Types/Exception/SsoAuthorizationException.ts +10 -0
  237. package/Types/Exception/TenantNotFoundException.ts +11 -0
  238. package/Types/Exception/TimeoutException.ts +10 -0
  239. package/Types/Exception/TooManyRequestsException.ts +10 -0
  240. package/Types/Exception/UnableToReachServer.ts +10 -0
  241. package/Types/Exception/WebsiteRequestException.ts +10 -0
  242. package/Types/Monitor/CriteriaFilter.ts +60 -2
  243. package/Types/Monitor/DatabaseMetricCatalog.ts +693 -0
  244. package/Types/Monitor/DatabaseMonitor/DatabaseMonitorResponse.ts +83 -0
  245. package/Types/Monitor/MonitorCriteriaInstance.ts +76 -0
  246. package/Types/Monitor/MonitorMetricType.ts +71 -0
  247. package/Types/Monitor/MonitorStep.ts +76 -0
  248. package/Types/Monitor/MonitorStepDatabaseMonitor.ts +171 -0
  249. package/Types/Monitor/MonitorStepSqlMonitor.ts +2 -20
  250. package/Types/Monitor/MonitorType.ts +47 -1
  251. package/Types/Monitor/SnmpMonitor/NetworkDeviceAlertPack.ts +22 -1
  252. package/Types/Monitor/SqlConnectionConfig.ts +31 -0
  253. package/Types/NetworkDevice/NetworkAlertPolicyScope.ts +343 -0
  254. package/Types/NetworkDevice/NetworkDeviceMonitoringMethod.ts +42 -22
  255. package/Types/NetworkSite/DefaultNetworkSiteTypeHierarchy.ts +30 -0
  256. package/Types/NotificationSetting/NotificationEmailRollupCategory.ts +255 -0
  257. package/Types/NotificationSetting/NotificationEmailRollupPolicy.ts +104 -0
  258. package/Types/Permission.ts +90 -0
  259. package/Types/Probe/ProbeMonitorResponse.ts +16 -0
  260. package/Types/Telemetry/ErrorClass.ts +274 -0
  261. package/Types/Telemetry/UnitOfWork.ts +59 -0
  262. package/UI/Components/CommandPalette/CommandPalette.tsx +2 -8
  263. package/UI/Components/EditionLabel/EditionLabel.tsx +4 -0
  264. package/UI/Components/Modal/Modal.tsx +2 -8
  265. package/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.ts +44 -0
  266. package/UI/Components/ProgressBar/ProgressBar.tsx +12 -1
  267. package/UI/Components/RadioButtons/BasicRadioButtons.tsx +37 -7
  268. package/UI/Components/SideMenu/SideMenu.tsx +123 -5
  269. package/UI/Components/SideMenu/SideMenuItem.tsx +76 -84
  270. package/UI/Components/SideMenu/SideMenuSection.tsx +55 -23
  271. package/UI/Components/SideOver/SideOver.tsx +21 -20
  272. package/UI/Utils/PageScrollLock.ts +79 -3
  273. package/UI/Utils/PermissionGate.ts +61 -0
  274. package/UI/Utils/SensitiveUrlToken.ts +112 -0
  275. package/UI/Utils/TestLLMProvider.ts +11 -0
  276. package/Utils/EnterpriseLicense/EnterpriseLicenseSeats.ts +16 -0
  277. package/Utils/EnterpriseLicense/EnterpriseLicenseUsage.ts +191 -11
  278. package/Utils/Monitor/MonitorMetricType.ts +153 -1
  279. package/Utils/Monitor/NetworkTopologyUtil.ts +23 -3
  280. package/Utils/NetworkDevice/DeviceHealthStateUtil.ts +65 -14
  281. package/Utils/NetworkDevice/DeviceReachabilityUtil.ts +43 -14
  282. package/Utils/NetworkDevice/NetworkAlertPolicyBootstrapUtil.ts +247 -0
  283. package/Utils/NetworkDevice/SnmpCredentialUtil.ts +68 -0
  284. package/Utils/NetworkDiscovery/AutoImportRuleMatcher.ts +15 -7
  285. package/Utils/NetworkDiscovery/DiscoveredDeviceBuilder.ts +52 -17
  286. package/Utils/NetworkDiscovery/DiscoveryImportEligibility.ts +55 -23
  287. package/Utils/NetworkDiscovery/PingMonitorBuilder.ts +115 -13
  288. package/Utils/NetworkSite/SiteStatusRollupUtil.ts +66 -20
  289. package/Utils/NetworkSite/TypeHierarchyUtil.ts +313 -0
  290. package/build/dist/Models/AnalyticsModels/Span.js +14 -0
  291. package/build/dist/Models/AnalyticsModels/Span.js.map +1 -1
  292. package/build/dist/Models/DatabaseModels/EnterpriseLicense.js +59 -0
  293. package/build/dist/Models/DatabaseModels/EnterpriseLicense.js.map +1 -1
  294. package/build/dist/Models/DatabaseModels/Index.js +10 -0
  295. package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
  296. package/build/dist/Models/DatabaseModels/Monitor.js +75 -0
  297. package/build/dist/Models/DatabaseModels/Monitor.js.map +1 -1
  298. package/build/dist/Models/DatabaseModels/NetworkAlertPolicy.js +713 -0
  299. package/build/dist/Models/DatabaseModels/NetworkAlertPolicy.js.map +1 -0
  300. package/build/dist/Models/DatabaseModels/NetworkDevice.js +180 -1
  301. package/build/dist/Models/DatabaseModels/NetworkDevice.js.map +1 -1
  302. package/build/dist/Models/DatabaseModels/NetworkSite.js +200 -2
  303. package/build/dist/Models/DatabaseModels/NetworkSite.js.map +1 -1
  304. package/build/dist/Models/DatabaseModels/NetworkSiteType.js +102 -3
  305. package/build/dist/Models/DatabaseModels/NetworkSiteType.js.map +1 -1
  306. package/build/dist/Models/DatabaseModels/NetworkSnmpCredentialProfile.js +878 -0
  307. package/build/dist/Models/DatabaseModels/NetworkSnmpCredentialProfile.js.map +1 -0
  308. package/build/dist/Models/DatabaseModels/TelemetryException.js +123 -0
  309. package/build/dist/Models/DatabaseModels/TelemetryException.js.map +1 -1
  310. package/build/dist/Models/DatabaseModels/UserNotificationEmailRollupBatch.js +363 -0
  311. package/build/dist/Models/DatabaseModels/UserNotificationEmailRollupBatch.js.map +1 -0
  312. package/build/dist/Models/DatabaseModels/UserNotificationEmailRollupItem.js +402 -0
  313. package/build/dist/Models/DatabaseModels/UserNotificationEmailRollupItem.js.map +1 -0
  314. package/build/dist/Models/DatabaseModels/UserNotificationEmailRollupSetting.js +296 -0
  315. package/build/dist/Models/DatabaseModels/UserNotificationEmailRollupSetting.js.map +1 -0
  316. package/build/dist/Server/API/EnterpriseLicenseAPI.js +273 -60
  317. package/build/dist/Server/API/EnterpriseLicenseAPI.js.map +1 -1
  318. package/build/dist/Server/API/LlmProviderAPI.js +108 -13
  319. package/build/dist/Server/API/LlmProviderAPI.js.map +1 -1
  320. package/build/dist/Server/EnvironmentConfig.js +12 -0
  321. package/build/dist/Server/EnvironmentConfig.js.map +1 -1
  322. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1790700000000-AddNetworkSiteTypeParentHierarchy.js +24 -0
  323. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1790700000000-AddNetworkSiteTypeParentHierarchy.js.map +1 -0
  324. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1790900000000-AddEnterpriseLicenseUsageProvenance.js +16 -0
  325. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1790900000000-AddEnterpriseLicenseUsageProvenance.js.map +1 -0
  326. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1790900000000-AddTelemetryExceptionErrorClass.js +111 -0
  327. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1790900000000-AddTelemetryExceptionErrorClass.js.map +1 -0
  328. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791000000000-AddUserNotificationEmailRollup.js +77 -0
  329. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791000000000-AddUserNotificationEmailRollup.js.map +1 -0
  330. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791100000000-AddUserNotificationEmailRollupSetting.js +50 -0
  331. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791100000000-AddUserNotificationEmailRollupSetting.js.map +1 -0
  332. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791200000000-AddNetworkSnmpCredentialProfilesAndAlertPolicies.js +83 -0
  333. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791200000000-AddNetworkSnmpCredentialProfilesAndAlertPolicies.js.map +1 -0
  334. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +12 -0
  335. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  336. package/build/dist/Server/Infrastructure/QueueWorker.js +33 -5
  337. package/build/dist/Server/Infrastructure/QueueWorker.js.map +1 -1
  338. package/build/dist/Server/Middleware/BearerTokenAuthorization.js +12 -0
  339. package/build/dist/Server/Middleware/BearerTokenAuthorization.js.map +1 -1
  340. package/build/dist/Server/Middleware/ProjectAuthorization.js +11 -0
  341. package/build/dist/Server/Middleware/ProjectAuthorization.js.map +1 -1
  342. package/build/dist/Server/Middleware/SCIMAuthorization.js +12 -0
  343. package/build/dist/Server/Middleware/SCIMAuthorization.js.map +1 -1
  344. package/build/dist/Server/Middleware/TelemetryIngest.js +11 -0
  345. package/build/dist/Server/Middleware/TelemetryIngest.js.map +1 -1
  346. package/build/dist/Server/Services/AIBillingService.js +70 -16
  347. package/build/dist/Server/Services/AIBillingService.js.map +1 -1
  348. package/build/dist/Server/Services/EnterpriseLicenseInstanceService.js +167 -0
  349. package/build/dist/Server/Services/EnterpriseLicenseInstanceService.js.map +1 -1
  350. package/build/dist/Server/Services/EnterpriseLicenseService.js +39 -0
  351. package/build/dist/Server/Services/EnterpriseLicenseService.js.map +1 -1
  352. package/build/dist/Server/Services/Index.js +10 -0
  353. package/build/dist/Server/Services/Index.js.map +1 -1
  354. package/build/dist/Server/Services/MonitorService.js +119 -21
  355. package/build/dist/Server/Services/MonitorService.js.map +1 -1
  356. package/build/dist/Server/Services/MonitorStatusTimelineService.js +127 -8
  357. package/build/dist/Server/Services/MonitorStatusTimelineService.js.map +1 -1
  358. package/build/dist/Server/Services/MonitorTemplateService.js +162 -0
  359. package/build/dist/Server/Services/MonitorTemplateService.js.map +1 -1
  360. package/build/dist/Server/Services/NetworkAlertPolicyEngineService.js +1683 -0
  361. package/build/dist/Server/Services/NetworkAlertPolicyEngineService.js.map +1 -0
  362. package/build/dist/Server/Services/NetworkAlertPolicyService.js +732 -0
  363. package/build/dist/Server/Services/NetworkAlertPolicyService.js.map +1 -0
  364. package/build/dist/Server/Services/NetworkDeviceAutoImportRuleEngineService.js +10 -9
  365. package/build/dist/Server/Services/NetworkDeviceAutoImportRuleEngineService.js.map +1 -1
  366. package/build/dist/Server/Services/NetworkDeviceAutoImportRuleService.js +54 -11
  367. package/build/dist/Server/Services/NetworkDeviceAutoImportRuleService.js.map +1 -1
  368. package/build/dist/Server/Services/NetworkDeviceService.js +841 -70
  369. package/build/dist/Server/Services/NetworkDeviceService.js.map +1 -1
  370. package/build/dist/Server/Services/NetworkSiteService.js +1145 -107
  371. package/build/dist/Server/Services/NetworkSiteService.js.map +1 -1
  372. package/build/dist/Server/Services/NetworkSiteTypeService.js +863 -0
  373. package/build/dist/Server/Services/NetworkSiteTypeService.js.map +1 -1
  374. package/build/dist/Server/Services/NetworkSnmpCredentialProfileService.js +217 -0
  375. package/build/dist/Server/Services/NetworkSnmpCredentialProfileService.js.map +1 -0
  376. package/build/dist/Server/Services/NotificationService.js +80 -17
  377. package/build/dist/Server/Services/NotificationService.js.map +1 -1
  378. package/build/dist/Server/Services/ProjectService.js +66 -30
  379. package/build/dist/Server/Services/ProjectService.js.map +1 -1
  380. package/build/dist/Server/Services/StatusPagePrivateUserService.js +92 -2
  381. package/build/dist/Server/Services/StatusPagePrivateUserService.js.map +1 -1
  382. package/build/dist/Server/Services/UserNotificationEmailRollupBatchService.js +76 -0
  383. package/build/dist/Server/Services/UserNotificationEmailRollupBatchService.js.map +1 -0
  384. package/build/dist/Server/Services/UserNotificationEmailRollupItemService.js +77 -0
  385. package/build/dist/Server/Services/UserNotificationEmailRollupItemService.js.map +1 -0
  386. package/build/dist/Server/Services/UserNotificationEmailRollupSettingService.js +111 -0
  387. package/build/dist/Server/Services/UserNotificationEmailRollupSettingService.js.map +1 -0
  388. package/build/dist/Server/Services/UserNotificationSettingService.js +46 -20
  389. package/build/dist/Server/Services/UserNotificationSettingService.js.map +1 -1
  390. package/build/dist/Server/Services/UserService.js +90 -0
  391. package/build/dist/Server/Services/UserService.js.map +1 -1
  392. package/build/dist/Server/Types/Database/QueryHelper.js +1 -1
  393. package/build/dist/Server/Types/Database/QueryHelper.js.map +1 -1
  394. package/build/dist/Server/Utils/AI/Chat/ObservabilityChatPrompt.js +14 -3
  395. package/build/dist/Server/Utils/AI/Chat/ObservabilityChatPrompt.js.map +1 -1
  396. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/ExceptionSpikeDetector.js +10 -0
  397. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/ExceptionSpikeDetector.js.map +1 -1
  398. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/NewExceptionDetector.js +10 -0
  399. package/build/dist/Server/Utils/AI/SRE/Insights/Detectors/NewExceptionDetector.js.map +1 -1
  400. package/build/dist/Server/Utils/AI/SRE/Insights/InsightTriageRunner.js +54 -1
  401. package/build/dist/Server/Utils/AI/SRE/Insights/InsightTriageRunner.js.map +1 -1
  402. package/build/dist/Server/Utils/AI/Toolbox/AlertTools.js +18 -4
  403. package/build/dist/Server/Utils/AI/Toolbox/AlertTools.js.map +1 -1
  404. package/build/dist/Server/Utils/Billing/BillingFailureNoticeThrottle.js +59 -0
  405. package/build/dist/Server/Utils/Billing/BillingFailureNoticeThrottle.js.map +1 -0
  406. package/build/dist/Server/Utils/DataSource/HttpFetch.js +2 -1
  407. package/build/dist/Server/Utils/DataSource/HttpFetch.js.map +1 -1
  408. package/build/dist/Server/Utils/EmailRollup/EmailRollupConstants.js +91 -0
  409. package/build/dist/Server/Utils/EmailRollup/EmailRollupConstants.js.map +1 -0
  410. package/build/dist/Server/Utils/EmailRollup/EmailRollupFlushRunner.js +691 -0
  411. package/build/dist/Server/Utils/EmailRollup/EmailRollupFlushRunner.js.map +1 -0
  412. package/build/dist/Server/Utils/EmailRollup/EmailRollupRenderer.js +497 -0
  413. package/build/dist/Server/Utils/EmailRollup/EmailRollupRenderer.js.map +1 -0
  414. package/build/dist/Server/Utils/EmailRollup/EmailRollupWriter.js +257 -0
  415. package/build/dist/Server/Utils/EmailRollup/EmailRollupWriter.js.map +1 -0
  416. package/build/dist/Server/Utils/LLM/LLMService.js +64 -1
  417. package/build/dist/Server/Utils/LLM/LLMService.js.map +1 -1
  418. package/build/dist/Server/Utils/LogRedaction.js +8 -0
  419. package/build/dist/Server/Utils/LogRedaction.js.map +1 -1
  420. package/build/dist/Server/Utils/Logger.js +63 -1
  421. package/build/dist/Server/Utils/Logger.js.map +1 -1
  422. package/build/dist/Server/Utils/Monitor/Criteria/DatabaseMonitorCriteria.js +141 -0
  423. package/build/dist/Server/Utils/Monitor/Criteria/DatabaseMonitorCriteria.js.map +1 -0
  424. package/build/dist/Server/Utils/Monitor/Criteria/EvaluateOverTime.js +8 -1
  425. package/build/dist/Server/Utils/Monitor/Criteria/EvaluateOverTime.js.map +1 -1
  426. package/build/dist/Server/Utils/Monitor/Criteria/SnmpMonitorCriteria.js +51 -1
  427. package/build/dist/Server/Utils/Monitor/Criteria/SnmpMonitorCriteria.js.map +1 -1
  428. package/build/dist/Server/Utils/Monitor/MonitorCriteriaDataExtractor.js +7 -0
  429. package/build/dist/Server/Utils/Monitor/MonitorCriteriaDataExtractor.js.map +1 -1
  430. package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js +37 -0
  431. package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js.map +1 -1
  432. package/build/dist/Server/Utils/Monitor/MonitorCriteriaObservationBuilder.js +158 -6
  433. package/build/dist/Server/Utils/Monitor/MonitorCriteriaObservationBuilder.js.map +1 -1
  434. package/build/dist/Server/Utils/Monitor/MonitorMetricUtil.js +33 -0
  435. package/build/dist/Server/Utils/Monitor/MonitorMetricUtil.js.map +1 -1
  436. package/build/dist/Server/Utils/Monitor/MonitorTemplateUtil.js +32 -0
  437. package/build/dist/Server/Utils/Monitor/MonitorTemplateUtil.js.map +1 -1
  438. package/build/dist/Server/Utils/Monitor/NetworkDeviceHydrationUtil.js +330 -21
  439. package/build/dist/Server/Utils/Monitor/NetworkDeviceHydrationUtil.js.map +1 -1
  440. package/build/dist/Server/Utils/Monitor/NetworkDeviceMetricUtil.js +55 -10
  441. package/build/dist/Server/Utils/Monitor/NetworkDeviceMetricUtil.js.map +1 -1
  442. package/build/dist/Server/Utils/Monitor/NetworkDeviceWalkUtil.js +178 -49
  443. package/build/dist/Server/Utils/Monitor/NetworkDeviceWalkUtil.js.map +1 -1
  444. package/build/dist/Server/Utils/Monitor/NetworkInventoryUtil.js +119 -29
  445. package/build/dist/Server/Utils/Monitor/NetworkInventoryUtil.js.map +1 -1
  446. package/build/dist/Server/Utils/NetworkDevice/DeviceHealthAggregation.js +30 -17
  447. package/build/dist/Server/Utils/NetworkDevice/DeviceHealthAggregation.js.map +1 -1
  448. package/build/dist/Server/Utils/NetworkSite/NetworkSiteHierarchyLock.js +158 -0
  449. package/build/dist/Server/Utils/NetworkSite/NetworkSiteHierarchyLock.js.map +1 -0
  450. package/build/dist/Server/Utils/OutboundUserAgent.js +123 -0
  451. package/build/dist/Server/Utils/OutboundUserAgent.js.map +1 -0
  452. package/build/dist/Server/Utils/StartServer.js +38 -14
  453. package/build/dist/Server/Utils/StartServer.js.map +1 -1
  454. package/build/dist/Server/Utils/Telemetry/CaptureSpan.js +28 -8
  455. package/build/dist/Server/Utils/Telemetry/CaptureSpan.js.map +1 -1
  456. package/build/dist/Server/Utils/Telemetry/ErrorClassResolver.js +95 -0
  457. package/build/dist/Server/Utils/Telemetry/ErrorClassResolver.js.map +1 -0
  458. package/build/dist/Server/Utils/Telemetry/SpanUtil.js +29 -0
  459. package/build/dist/Server/Utils/Telemetry/SpanUtil.js.map +1 -1
  460. package/build/dist/Server/Utils/Telemetry.js +162 -46
  461. package/build/dist/Server/Utils/Telemetry.js.map +1 -1
  462. package/build/dist/Types/AI/ExceptionAIClassification.js +10 -24
  463. package/build/dist/Types/AI/ExceptionAIClassification.js.map +1 -1
  464. package/build/dist/Types/Email/EmailTemplateType.js +1 -0
  465. package/build/dist/Types/Email/EmailTemplateType.js.map +1 -1
  466. package/build/dist/Types/EnterpriseLicense/EnterpriseLicenseUsageSnapshot.js +2 -0
  467. package/build/dist/Types/EnterpriseLicense/EnterpriseLicenseUsageSnapshot.js.map +1 -0
  468. package/build/dist/Types/EnterpriseLicense/EnterpriseLicenseUserCountSource.js +7 -0
  469. package/build/dist/Types/EnterpriseLicense/EnterpriseLicenseUserCountSource.js.map +1 -0
  470. package/build/dist/Types/Exception/ApiException.js +9 -0
  471. package/build/dist/Types/Exception/ApiException.js.map +1 -1
  472. package/build/dist/Types/Exception/BadDataException.js +10 -0
  473. package/build/dist/Types/Exception/BadDataException.js.map +1 -1
  474. package/build/dist/Types/Exception/BadRequestException.js +10 -0
  475. package/build/dist/Types/Exception/BadRequestException.js.map +1 -1
  476. package/build/dist/Types/Exception/Exception.js +56 -0
  477. package/build/dist/Types/Exception/Exception.js.map +1 -1
  478. package/build/dist/Types/Exception/ForbiddenException.js +9 -0
  479. package/build/dist/Types/Exception/ForbiddenException.js.map +1 -1
  480. package/build/dist/Types/Exception/NotAuthenticatedException.js +9 -0
  481. package/build/dist/Types/Exception/NotAuthenticatedException.js.map +1 -1
  482. package/build/dist/Types/Exception/NotAuthorizedException.js +9 -0
  483. package/build/dist/Types/Exception/NotAuthorizedException.js.map +1 -1
  484. package/build/dist/Types/Exception/NotFoundException.js +10 -0
  485. package/build/dist/Types/Exception/NotFoundException.js.map +1 -1
  486. package/build/dist/Types/Exception/PayloadTooLargeException.js +10 -0
  487. package/build/dist/Types/Exception/PayloadTooLargeException.js.map +1 -1
  488. package/build/dist/Types/Exception/PaymentRequiredException.js +9 -0
  489. package/build/dist/Types/Exception/PaymentRequiredException.js.map +1 -1
  490. package/build/dist/Types/Exception/ServiceUnavailableException.js +9 -0
  491. package/build/dist/Types/Exception/ServiceUnavailableException.js.map +1 -1
  492. package/build/dist/Types/Exception/SsoAuthorizationException.js +9 -0
  493. package/build/dist/Types/Exception/SsoAuthorizationException.js.map +1 -1
  494. package/build/dist/Types/Exception/TenantNotFoundException.js +10 -0
  495. package/build/dist/Types/Exception/TenantNotFoundException.js.map +1 -1
  496. package/build/dist/Types/Exception/TimeoutException.js +9 -0
  497. package/build/dist/Types/Exception/TimeoutException.js.map +1 -1
  498. package/build/dist/Types/Exception/TooManyRequestsException.js +9 -0
  499. package/build/dist/Types/Exception/TooManyRequestsException.js.map +1 -1
  500. package/build/dist/Types/Exception/UnableToReachServer.js +9 -0
  501. package/build/dist/Types/Exception/UnableToReachServer.js.map +1 -1
  502. package/build/dist/Types/Exception/WebsiteRequestException.js +9 -0
  503. package/build/dist/Types/Exception/WebsiteRequestException.js.map +1 -1
  504. package/build/dist/Types/Monitor/CriteriaFilter.js +45 -2
  505. package/build/dist/Types/Monitor/CriteriaFilter.js.map +1 -1
  506. package/build/dist/Types/Monitor/DatabaseMetricCatalog.js +594 -0
  507. package/build/dist/Types/Monitor/DatabaseMetricCatalog.js.map +1 -0
  508. package/build/dist/Types/Monitor/DatabaseMonitor/DatabaseMonitorResponse.js +21 -0
  509. package/build/dist/Types/Monitor/DatabaseMonitor/DatabaseMonitorResponse.js.map +1 -0
  510. package/build/dist/Types/Monitor/MonitorCriteriaInstance.js +70 -0
  511. package/build/dist/Types/Monitor/MonitorCriteriaInstance.js.map +1 -1
  512. package/build/dist/Types/Monitor/MonitorMetricType.js +61 -0
  513. package/build/dist/Types/Monitor/MonitorMetricType.js.map +1 -1
  514. package/build/dist/Types/Monitor/MonitorStep.js +54 -0
  515. package/build/dist/Types/Monitor/MonitorStep.js.map +1 -1
  516. package/build/dist/Types/Monitor/MonitorStepDatabaseMonitor.js +122 -0
  517. package/build/dist/Types/Monitor/MonitorStepDatabaseMonitor.js.map +1 -0
  518. package/build/dist/Types/Monitor/MonitorStepSqlMonitor.js.map +1 -1
  519. package/build/dist/Types/Monitor/MonitorType.js +45 -1
  520. package/build/dist/Types/Monitor/MonitorType.js.map +1 -1
  521. package/build/dist/Types/Monitor/SnmpMonitor/NetworkDeviceAlertPack.js +21 -1
  522. package/build/dist/Types/Monitor/SnmpMonitor/NetworkDeviceAlertPack.js.map +1 -1
  523. package/build/dist/Types/Monitor/SqlConnectionConfig.js +2 -0
  524. package/build/dist/Types/Monitor/SqlConnectionConfig.js.map +1 -0
  525. package/build/dist/Types/NetworkDevice/NetworkAlertPolicyScope.js +172 -0
  526. package/build/dist/Types/NetworkDevice/NetworkAlertPolicyScope.js.map +1 -0
  527. package/build/dist/Types/NetworkDevice/NetworkDeviceMonitoringMethod.js +40 -22
  528. package/build/dist/Types/NetworkDevice/NetworkDeviceMonitoringMethod.js.map +1 -1
  529. package/build/dist/Types/NetworkSite/DefaultNetworkSiteTypeHierarchy.js +26 -0
  530. package/build/dist/Types/NetworkSite/DefaultNetworkSiteTypeHierarchy.js.map +1 -0
  531. package/build/dist/Types/NotificationSetting/NotificationEmailRollupCategory.js +186 -0
  532. package/build/dist/Types/NotificationSetting/NotificationEmailRollupCategory.js.map +1 -0
  533. package/build/dist/Types/NotificationSetting/NotificationEmailRollupPolicy.js +87 -0
  534. package/build/dist/Types/NotificationSetting/NotificationEmailRollupPolicy.js.map +1 -0
  535. package/build/dist/Types/Permission.js +80 -0
  536. package/build/dist/Types/Permission.js.map +1 -1
  537. package/build/dist/Types/Telemetry/ErrorClass.js +216 -0
  538. package/build/dist/Types/Telemetry/ErrorClass.js.map +1 -0
  539. package/build/dist/Types/Telemetry/UnitOfWork.js +59 -0
  540. package/build/dist/Types/Telemetry/UnitOfWork.js.map +1 -0
  541. package/build/dist/UI/Components/CommandPalette/CommandPalette.js +2 -7
  542. package/build/dist/UI/Components/CommandPalette/CommandPalette.js.map +1 -1
  543. package/build/dist/UI/Components/EditionLabel/EditionLabel.js +3 -0
  544. package/build/dist/UI/Components/EditionLabel/EditionLabel.js.map +1 -1
  545. package/build/dist/UI/Components/Modal/Modal.js +2 -7
  546. package/build/dist/UI/Components/Modal/Modal.js.map +1 -1
  547. package/build/dist/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.js +39 -0
  548. package/build/dist/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.js.map +1 -1
  549. package/build/dist/UI/Components/ProgressBar/ProgressBar.js +12 -1
  550. package/build/dist/UI/Components/ProgressBar/ProgressBar.js.map +1 -1
  551. package/build/dist/UI/Components/RadioButtons/BasicRadioButtons.js +6 -6
  552. package/build/dist/UI/Components/RadioButtons/BasicRadioButtons.js.map +1 -1
  553. package/build/dist/UI/Components/SideMenu/SideMenu.js +67 -5
  554. package/build/dist/UI/Components/SideMenu/SideMenu.js.map +1 -1
  555. package/build/dist/UI/Components/SideMenu/SideMenuItem.js +49 -53
  556. package/build/dist/UI/Components/SideMenu/SideMenuItem.js.map +1 -1
  557. package/build/dist/UI/Components/SideMenu/SideMenuSection.js +25 -7
  558. package/build/dist/UI/Components/SideMenu/SideMenuSection.js.map +1 -1
  559. package/build/dist/UI/Components/SideOver/SideOver.js +5 -20
  560. package/build/dist/UI/Components/SideOver/SideOver.js.map +1 -1
  561. package/build/dist/UI/Utils/PageScrollLock.js +31 -3
  562. package/build/dist/UI/Utils/PageScrollLock.js.map +1 -1
  563. package/build/dist/UI/Utils/PermissionGate.js +42 -1
  564. package/build/dist/UI/Utils/PermissionGate.js.map +1 -1
  565. package/build/dist/UI/Utils/SensitiveUrlToken.js +97 -0
  566. package/build/dist/UI/Utils/SensitiveUrlToken.js.map +1 -0
  567. package/build/dist/UI/Utils/TestLLMProvider.js +4 -5
  568. package/build/dist/UI/Utils/TestLLMProvider.js.map +1 -1
  569. package/build/dist/Utils/EnterpriseLicense/EnterpriseLicenseSeats.js +15 -0
  570. package/build/dist/Utils/EnterpriseLicense/EnterpriseLicenseSeats.js.map +1 -1
  571. package/build/dist/Utils/EnterpriseLicense/EnterpriseLicenseUsage.js +111 -9
  572. package/build/dist/Utils/EnterpriseLicense/EnterpriseLicenseUsage.js.map +1 -1
  573. package/build/dist/Utils/Monitor/MonitorMetricType.js +109 -1
  574. package/build/dist/Utils/Monitor/MonitorMetricType.js.map +1 -1
  575. package/build/dist/Utils/Monitor/NetworkTopologyUtil.js +8 -3
  576. package/build/dist/Utils/Monitor/NetworkTopologyUtil.js.map +1 -1
  577. package/build/dist/Utils/NetworkDevice/DeviceHealthStateUtil.js +27 -7
  578. package/build/dist/Utils/NetworkDevice/DeviceHealthStateUtil.js.map +1 -1
  579. package/build/dist/Utils/NetworkDevice/DeviceReachabilityUtil.js +7 -5
  580. package/build/dist/Utils/NetworkDevice/DeviceReachabilityUtil.js.map +1 -1
  581. package/build/dist/Utils/NetworkDevice/NetworkAlertPolicyBootstrapUtil.js +180 -0
  582. package/build/dist/Utils/NetworkDevice/NetworkAlertPolicyBootstrapUtil.js.map +1 -0
  583. package/build/dist/Utils/NetworkDevice/SnmpCredentialUtil.js +12 -0
  584. package/build/dist/Utils/NetworkDevice/SnmpCredentialUtil.js.map +1 -0
  585. package/build/dist/Utils/NetworkDiscovery/AutoImportRuleMatcher.js +15 -5
  586. package/build/dist/Utils/NetworkDiscovery/AutoImportRuleMatcher.js.map +1 -1
  587. package/build/dist/Utils/NetworkDiscovery/DiscoveredDeviceBuilder.js +44 -15
  588. package/build/dist/Utils/NetworkDiscovery/DiscoveredDeviceBuilder.js.map +1 -1
  589. package/build/dist/Utils/NetworkDiscovery/DiscoveryImportEligibility.js +52 -23
  590. package/build/dist/Utils/NetworkDiscovery/DiscoveryImportEligibility.js.map +1 -1
  591. package/build/dist/Utils/NetworkDiscovery/PingMonitorBuilder.js +85 -13
  592. package/build/dist/Utils/NetworkDiscovery/PingMonitorBuilder.js.map +1 -1
  593. package/build/dist/Utils/NetworkSite/SiteStatusRollupUtil.js +30 -15
  594. package/build/dist/Utils/NetworkSite/SiteStatusRollupUtil.js.map +1 -1
  595. package/build/dist/Utils/NetworkSite/TypeHierarchyUtil.js +191 -0
  596. package/build/dist/Utils/NetworkSite/TypeHierarchyUtil.js.map +1 -0
  597. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"MonitorCriteriaEvaluator.js","sourceRoot":"","sources":["../../../../../Server/Utils/Monitor/MonitorCriteriaEvaluator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MonitorCriteriaEvaluator.js","sourceRoot":"","sources":["../../../../../Server/Utils/Monitor/MonitorCriteriaEvaluator.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,8 @@ import OneUptimeDate from "../../../Types/Date";
3
3
  import MonitorStep from "../../../Types/Monitor/MonitorStep";
4
4
  import { CheckOn } from "../../../Types/Monitor/CriteriaFilter";
5
5
  import Typeof from "../../../Types/Typeof";
6
+ import { DatabaseMetricGroupUnavailableReason, } from "../../../Types/Monitor/DatabaseMonitor/DatabaseMonitorResponse";
7
+ import { getDatabaseMetricByMetricType, } from "../../../Types/Monitor/DatabaseMetricCatalog";
6
8
  import MonitorCriteriaMessageFormatter from "./MonitorCriteriaMessageFormatter";
7
9
  import MonitorCriteriaDataExtractor from "./MonitorCriteriaDataExtractor";
8
10
  import MonitorCriteriaExpectationBuilder from "./MonitorCriteriaExpectationBuilder";
@@ -81,12 +83,20 @@ export default class MonitorCriteriaObservationBuilder {
81
83
  return MonitorCriteriaObservationBuilder.describeExceptionCountObservation(input);
82
84
  case CheckOn.SnmpIsOnline:
83
85
  return MonitorCriteriaObservationBuilder.describeSnmpIsOnlineObservation(input);
86
+ case CheckOn.SnmpWalkIsSucceeding:
87
+ return MonitorCriteriaObservationBuilder.describeSnmpWalkIsSucceedingObservation(input);
84
88
  case CheckOn.SnmpResponseTime:
85
89
  return MonitorCriteriaObservationBuilder.describeSnmpResponseTimeObservation(input);
86
90
  case CheckOn.SnmpOidExists:
87
91
  return MonitorCriteriaObservationBuilder.describeSnmpOidExistsObservation(input);
88
92
  case CheckOn.SnmpOidValue:
89
93
  return MonitorCriteriaObservationBuilder.describeSnmpOidValueObservation(input);
94
+ case CheckOn.DatabaseIsOnline:
95
+ return MonitorCriteriaObservationBuilder.describeDatabaseIsOnlineObservation(input);
96
+ case CheckOn.DatabaseMetric:
97
+ return MonitorCriteriaObservationBuilder.describeDatabaseMetricObservation(input);
98
+ case CheckOn.DatabaseCollectionError:
99
+ return MonitorCriteriaObservationBuilder.describeDatabaseCollectionErrorObservation(input);
90
100
  default:
91
101
  return null;
92
102
  }
@@ -743,7 +753,19 @@ export default class MonitorCriteriaObservationBuilder {
743
753
  * matches the "recorded latest 0.06 sec" observation.
744
754
  */
745
755
  static getMetricValueDisplayUnit(input) {
746
- var _a;
756
+ var _a, _b;
757
+ /*
758
+ * Database Health thresholds are typed in the metric's own unit, which
759
+ * only the catalog knows - without this the expectation clause reads
760
+ * "greater than 90" next to an observation of "95.0%".
761
+ */
762
+ if (input.criteriaFilter.checkOn === CheckOn.DatabaseMetric) {
763
+ const metricType = (_a = input.criteriaFilter.databaseMonitorOptions) === null || _a === void 0 ? void 0 : _a.metricType;
764
+ const definition = metricType
765
+ ? getDatabaseMetricByMetricType(metricType)
766
+ : null;
767
+ return MonitorCriteriaObservationBuilder.normalizeDisplayUnit(definition === null || definition === void 0 ? void 0 : definition.unit);
768
+ }
747
769
  if (input.criteriaFilter.checkOn !== CheckOn.MetricValue) {
748
770
  return undefined;
749
771
  }
@@ -756,7 +778,7 @@ export default class MonitorCriteriaObservationBuilder {
756
778
  criteriaFilter: input.criteriaFilter,
757
779
  dataToProcess: input.dataToProcess,
758
780
  monitorStep: input.monitorStep,
759
- alias: (_a = metricValues === null || metricValues === void 0 ? void 0 : metricValues.alias) !== null && _a !== void 0 ? _a : null,
781
+ alias: (_b = metricValues === null || metricValues === void 0 ? void 0 : metricValues.alias) !== null && _b !== void 0 ? _b : null,
760
782
  }).displayUnit;
761
783
  }
762
784
  static getSnmpResponse(input) {
@@ -776,18 +798,43 @@ export default class MonitorCriteriaObservationBuilder {
776
798
  : undefined;
777
799
  return { snmpResponse, oid, oidResponse };
778
800
  }
801
+ /*
802
+ * "Is Online" is device reachability - ping OR a successful walk - which
803
+ * is the top-level isOnline the walk pipeline stamps, not the walk's own
804
+ * verdict. A device with no credentials is only pinged, so reading the
805
+ * walk here would describe every such device as "SNMP response was
806
+ * unavailable" on a poll that found it perfectly reachable.
807
+ */
779
808
  static describeSnmpIsOnlineObservation(input) {
809
+ const probeResponse = MonitorCriteriaDataExtractor.getProbeMonitorResponse(input.dataToProcess);
810
+ if (!probeResponse || probeResponse.isOnline === undefined) {
811
+ return "Device reachability was not recorded.";
812
+ }
813
+ if (probeResponse.isOnline) {
814
+ return "Device is reachable (answered ping or SNMP).";
815
+ }
816
+ if (probeResponse.failureCause) {
817
+ return `Device is unreachable by ping and SNMP: ${probeResponse.failureCause}`;
818
+ }
819
+ return "Device is unreachable by ping and SNMP.";
820
+ }
821
+ /*
822
+ * The walk itself, separately from reachability. No walk on this poll is
823
+ * a distinct, non-failure state: it is what a ping-only device looks like
824
+ * every cycle, and the criterion is not evaluated for it.
825
+ */
826
+ static describeSnmpWalkIsSucceedingObservation(input) {
780
827
  const snmpResponse = MonitorCriteriaObservationBuilder.getSnmpResponse(input);
781
828
  if (!snmpResponse) {
782
- return "SNMP response was unavailable.";
829
+ return "No SNMP walk ran on this poll (the device is only pinged).";
783
830
  }
784
831
  if (snmpResponse.isOnline) {
785
- return "SNMP device is online.";
832
+ return "SNMP walk succeeded.";
786
833
  }
787
834
  if (snmpResponse.failureCause) {
788
- return `SNMP device is offline: ${snmpResponse.failureCause}`;
835
+ return `SNMP walk failed: ${snmpResponse.failureCause}`;
789
836
  }
790
- return "SNMP device is offline.";
837
+ return "SNMP walk failed.";
791
838
  }
792
839
  static describeSnmpResponseTimeObservation(input) {
793
840
  const snmpResponse = MonitorCriteriaObservationBuilder.getSnmpResponse(input);
@@ -841,5 +888,110 @@ export default class MonitorCriteriaObservationBuilder {
841
888
  }
842
889
  return String(value);
843
890
  }
891
+ static describeDatabaseIsOnlineObservation(input) {
892
+ var _a;
893
+ const probeResponse = MonitorCriteriaDataExtractor.getProbeMonitorResponse(input.dataToProcess);
894
+ if (!probeResponse) {
895
+ return null;
896
+ }
897
+ const databaseResponse = MonitorCriteriaDataExtractor.getDatabaseMonitorResponse(input.dataToProcess);
898
+ if ((_a = databaseResponse === null || databaseResponse === void 0 ? void 0 : databaseResponse.isOnline) !== null && _a !== void 0 ? _a : probeResponse.isOnline) {
899
+ return "The database was reachable.";
900
+ }
901
+ /*
902
+ * Both of these are sanitized by the collector before they leave the
903
+ * probe - the connection string, the password and the login never reach
904
+ * an operator-facing sentence.
905
+ */
906
+ const failureCause = (databaseResponse === null || databaseResponse === void 0 ? void 0 : databaseResponse.connectionError) ||
907
+ (databaseResponse === null || databaseResponse === void 0 ? void 0 : databaseResponse.failureCause) ||
908
+ probeResponse.failureCause ||
909
+ "";
910
+ if (failureCause) {
911
+ return `The database was not reachable: ${failureCause}`;
912
+ }
913
+ return "The database was not reachable.";
914
+ }
915
+ static describeDatabaseMetricObservation(input) {
916
+ var _a;
917
+ const metricType = (_a = input.criteriaFilter.databaseMonitorOptions) === null || _a === void 0 ? void 0 : _a.metricType;
918
+ if (!metricType) {
919
+ return "No database metric is configured on this criteria. Pick one from the metric dropdown in the criteria editor.";
920
+ }
921
+ const definition = getDatabaseMetricByMetricType(metricType);
922
+ if (!definition) {
923
+ return `${metricType} is not a metric the Database Health monitor collects.`;
924
+ }
925
+ const databaseResponse = MonitorCriteriaDataExtractor.getDatabaseMonitorResponse(input.dataToProcess);
926
+ const value = databaseResponse === null || databaseResponse === void 0 ? void 0 : databaseResponse.metrics[metricType];
927
+ /*
928
+ * An absent metric is the normal outcome of partial collection, and the
929
+ * operator's next action depends entirely on why: a grant to run, an
930
+ * engine that has no such counter, or a group that timed out. Saying so -
931
+ * rather than declining to describe the check at all - is what turns a
932
+ * blank chart into something fixable.
933
+ */
934
+ if (value === undefined || value === null) {
935
+ return MonitorCriteriaObservationBuilder.describeUncollectedDatabaseMetric({
936
+ definition: definition,
937
+ databaseResponse: databaseResponse,
938
+ });
939
+ }
940
+ return `${definition.friendlyName} was ${MonitorCriteriaObservationBuilder.formatDatabaseMetricValue(value, definition.unit)}.`;
941
+ }
942
+ static describeUncollectedDatabaseMetric(input) {
943
+ var _a, _b;
944
+ const status = (_b = (_a = input.databaseResponse) === null || _a === void 0 ? void 0 : _a.unavailableGroups) === null || _b === void 0 ? void 0 : _b.find((groupStatus) => {
945
+ return groupStatus.group === input.definition.group;
946
+ });
947
+ if (!status) {
948
+ return `${input.definition.friendlyName} was not collected on this check.`;
949
+ }
950
+ let message = `${input.definition.friendlyName} was not collected on this check: ${MonitorCriteriaObservationBuilder.describeDatabaseGroupUnavailableReason(status.reason)}`;
951
+ if (status.remediation) {
952
+ message += ` (${status.remediation})`;
953
+ }
954
+ return `${message}.`;
955
+ }
956
+ static describeDatabaseGroupUnavailableReason(reason) {
957
+ switch (reason) {
958
+ case DatabaseMetricGroupUnavailableReason.MissingPermission:
959
+ return "the monitoring login is missing a grant";
960
+ case DatabaseMetricGroupUnavailableReason.NotSupportedByEngine:
961
+ return "the connected engine does not report it";
962
+ case DatabaseMetricGroupUnavailableReason.Timeout:
963
+ return "its metric group timed out";
964
+ default:
965
+ return "its metric group could not be collected";
966
+ }
967
+ }
968
+ static formatDatabaseMetricValue(value, unit) {
969
+ var _a, _b, _c;
970
+ if (unit === "%") {
971
+ return ((_a = MonitorCriteriaMessageFormatter.formatPercentage(value)) !== null && _a !== void 0 ? _a : String(value));
972
+ }
973
+ if (unit === "bytes") {
974
+ return ((_b = MonitorCriteriaMessageFormatter.formatBytes(value)) !== null && _b !== void 0 ? _b : String(value));
975
+ }
976
+ const formatted = (_c = MonitorCriteriaMessageFormatter.formatNumber(value, {
977
+ maximumFractionDigits: 2,
978
+ })) !== null && _c !== void 0 ? _c : String(value);
979
+ return unit ? `${formatted} ${unit}` : formatted;
980
+ }
981
+ static describeDatabaseCollectionErrorObservation(input) {
982
+ const databaseResponse = MonitorCriteriaDataExtractor.getDatabaseMonitorResponse(input.dataToProcess);
983
+ if (!databaseResponse) {
984
+ return null;
985
+ }
986
+ const statuses = databaseResponse.unavailableGroups || [];
987
+ if (!statuses.length) {
988
+ return "All metric groups were collected.";
989
+ }
990
+ return `Collection issues: ${statuses
991
+ .map((status) => {
992
+ return `${status.group}: ${status.message}`;
993
+ })
994
+ .join("; ")}.`;
995
+ }
844
996
  }
845
997
  //# sourceMappingURL=MonitorCriteriaObservationBuilder.js.map