@oneuptime/common 12.0.2 → 12.0.4
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.
- package/Models/DatabaseModels/CephCluster.ts +14 -0
- package/Models/DatabaseModels/CodeRepository.ts +14 -6
- package/Models/DatabaseModels/DatabaseBaseModel/DatabaseBaseModel.ts +14 -0
- package/Models/DatabaseModels/DockerHost.ts +14 -0
- package/Models/DatabaseModels/GlobalOidcProject.ts +18 -0
- package/Models/DatabaseModels/GlobalSsoProject.ts +18 -0
- package/Models/DatabaseModels/Index.ts +2 -0
- package/Models/DatabaseModels/IoTFleet.ts +14 -0
- package/Models/DatabaseModels/KubernetesCluster.ts +14 -0
- package/Models/DatabaseModels/LogDropFilter.ts +9 -20
- package/Models/DatabaseModels/NetworkDevice.ts +14 -0
- package/Models/DatabaseModels/NetworkInterface.ts +18 -0
- package/Models/DatabaseModels/Project.ts +16 -2
- package/Models/DatabaseModels/ProxmoxCluster.ts +14 -0
- package/Models/DatabaseModels/Service.ts +30 -0
- package/Models/DatabaseModels/StatusPageMonitorRule.ts +911 -0
- package/Models/DatabaseModels/StatusPagePrivateUser.ts +30 -0
- package/Models/DatabaseModels/StatusPageResource.ts +73 -0
- package/Models/DatabaseModels/TraceDropFilter.ts +9 -20
- package/Models/DatabaseModels/User.ts +30 -0
- package/Server/API/AIAgentDataAPI.ts +31 -0
- package/Server/API/BaseAPI.ts +13 -2
- package/Server/API/DashboardAPI.ts +458 -12
- package/Server/API/GitHubAPI.ts +119 -283
- package/Server/API/UserAPI.ts +263 -1
- package/Server/EnvironmentConfig.ts +38 -4
- package/Server/Infrastructure/GlobalCache.ts +152 -0
- package/Server/Infrastructure/Postgres/DataSourceOptions.ts +16 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1786005052769-AddStatusPageMonitorRule.ts +123 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1786018109307-AddPerUserPasswordSalt.ts +21 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1786023262402-WidenHashedStringColumnsForScrypt.ts +68 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1786100000000-RestoreServiceLowerNameIndex.ts +100 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1786200000000-RestoreDroppedUniqueIndexes.ts +214 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1786300000000-QuarantineUnboundGitHubInstallations.ts +69 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +12 -0
- package/Server/Services/AlertStateTimelineService.ts +20 -0
- package/Server/Services/AnalyticsDatabaseService.ts +72 -1
- package/Server/Services/CephClusterService.ts +26 -86
- package/Server/Services/CloudResourceService.ts +23 -83
- package/Server/Services/CodeRepositoryService.ts +105 -2
- package/Server/Services/DatabaseService.ts +296 -2
- package/Server/Services/DockerHostService.ts +19 -79
- package/Server/Services/DockerSwarmClusterService.ts +27 -88
- package/Server/Services/HostService.ts +46 -99
- package/Server/Services/IncidentStateTimelineService.ts +20 -0
- package/Server/Services/Index.ts +2 -0
- package/Server/Services/IoTFleetService.ts +19 -79
- package/Server/Services/KubernetesClusterService.ts +17 -78
- package/Server/Services/LabelService.ts +57 -10
- package/Server/Services/MetricTypeService.ts +84 -0
- package/Server/Services/MonitorService.ts +89 -14
- package/Server/Services/MonitorStatusTimelineService.ts +29 -0
- package/Server/Services/MonitorTemplateService.ts +65 -0
- package/Server/Services/OpenTelemetryIngestService.ts +230 -26
- package/Server/Services/PodmanHostService.ts +19 -79
- package/Server/Services/ProxmoxClusterService.ts +23 -83
- package/Server/Services/RumApplicationService.ts +19 -80
- package/Server/Services/ScheduledMaintenanceStateTimelineService.ts +21 -0
- package/Server/Services/ServerlessFunctionService.ts +24 -85
- package/Server/Services/ServiceService.ts +299 -73
- package/Server/Services/StatusPageMonitorRuleEngineService.ts +752 -0
- package/Server/Services/StatusPageMonitorRuleService.ts +471 -0
- package/Server/Services/TelemetryEntityRelationshipService.ts +1 -0
- package/Server/Services/TelemetryEntityService.ts +1 -0
- package/Server/Services/UserService.ts +184 -0
- package/Server/Utils/AI/Toolbox/CodeTools.ts +45 -4
- package/Server/Utils/AnalyticsDatabase/StatementGenerator.ts +13 -0
- package/Server/Utils/CodeRepository/GitHub/GitHub.ts +157 -4
- package/Server/Utils/CodeRepository/GitHub/GitHubInstallationBinding.ts +130 -0
- package/Server/Utils/Database/ProjectScopedReferenceValidator.ts +170 -39
- package/Server/Utils/Monitor/MonitorResource.ts +63 -36
- package/Server/Utils/Monitor/MonitorStatusTimeline.ts +36 -0
- package/Server/Utils/Monitor/MonitorStepsProjectValidator.ts +148 -127
- package/Server/Utils/Monitor/MonitorStepsReferenceExtractor.ts +434 -0
- package/Server/Utils/PasswordHash.ts +306 -0
- package/Server/Utils/SingleFlight.ts +83 -0
- package/Server/Utils/StatusPage/MonitorRulePatternValidator.ts +46 -0
- package/Server/Utils/Telemetry/EntityRegistry.ts +107 -26
- package/Server/Utils/Telemetry/ResourceHeartbeat.ts +314 -0
- package/Server/Utils/Telemetry/Telemetry.ts +351 -122
- package/Tests/App/Dashboard/OverviewCustomFields.test.tsx +333 -0
- package/Tests/App/Dashboard/UserCustomFields.test.tsx +392 -0
- package/Tests/App/Dashboard/WidgetCatalog.test.ts +2 -0
- package/Tests/Models/DatabaseModels/ColumnTransformerInvariants.test.ts +306 -0
- package/Tests/Models/DatabaseModels/NumberColumnDeserialization.test.ts +333 -0
- package/Tests/Models/DatabaseModels/StatusPageMonitorRuleModel.test.ts +190 -0
- package/Tests/Server/API/AIAgentDataRepositoryToken.test.ts +381 -0
- package/Tests/Server/API/DashboardPublicAttributeValuesAPI.test.ts +943 -0
- package/Tests/Server/API/DashboardPublicMetricsAggregateAPI.test.ts +1296 -0
- package/Tests/Server/API/DashboardPublicResourceListAPI.test.ts +26 -0
- package/Tests/Server/API/DashboardPublicTemplatePayloads.test.ts +598 -0
- package/Tests/Server/API/GitHubAppInstallationBindingAPI.test.ts +539 -0
- package/Tests/Server/API/Helpers.ts +6 -1
- package/Tests/Server/API/UserProjectsAPI.test.ts +852 -0
- package/Tests/Server/Infrastructure/GlobalCache.test.ts +354 -0
- package/Tests/Server/Infrastructure/PostgresLockTimeoutOptions.test.ts +181 -0
- package/Tests/Server/Infrastructure/SemaphoreMutex.test.ts +215 -0
- package/Tests/Server/Services/AddPerUserPasswordSaltMigration.test.ts +178 -0
- package/Tests/Server/Services/AnalyticsDatabasePaginationStability.test.ts +582 -0
- package/Tests/Server/Services/AnalyticsDatabaseService.test.ts +5 -0
- package/Tests/Server/Services/CodeRepositoryInstallationBinding.test.ts +305 -0
- package/Tests/Server/Services/CodeRepositoryResolutionBinding.test.ts +147 -0
- package/Tests/Server/Services/DatabaseServicePerUserPasswordSalt.test.ts +870 -0
- package/Tests/Server/Services/DatabaseServiceUpdateColumnsIfUnlocked.test.ts +342 -0
- package/Tests/Server/Services/DropFilterSaveValidation.test.ts +245 -0
- package/Tests/Server/Services/HostServiceUpdateLastSeen.test.ts +163 -15
- package/Tests/Server/Services/MetricTypeAttachServices.test.ts +222 -0
- package/Tests/Server/Services/MissingReferenceWriteGuard.test.ts +614 -0
- package/Tests/Server/Services/MonitorStatusTimelineFastPath.test.ts +23 -0
- package/Tests/Server/Services/OpenTelemetryServiceResolutionCache.test.ts +568 -0
- package/Tests/Server/Services/ResourceUpdateLastSeenLivenessFallback.test.ts +305 -56
- package/Tests/Server/Services/RestoreDroppedUniqueIndexesMigration.test.ts +386 -0
- package/Tests/Server/Services/RestoreServiceLowerNameIndexMigration.test.ts +240 -0
- package/Tests/Server/Services/ServiceUpdateLastSeenSplitGates.test.ts +705 -0
- package/Tests/Server/Services/StatusPageMonitorRuleEngineService.test.ts +1719 -0
- package/Tests/Server/Services/StatusPageMonitorRuleHooks.test.ts +1212 -0
- package/Tests/Server/Services/StatusPageMonitorRuleMonitorCreateHook.test.ts +228 -0
- package/Tests/Server/Services/UserServiceFirstMasterAdminElection.test.ts +885 -0
- package/Tests/Server/Services/WidenHashedStringColumnsForScryptMigration.test.ts +220 -0
- package/Tests/Server/Utils/AI/CodeTools.test.ts +47 -1
- package/Tests/Server/Utils/AI/CodeWriteTools.test.ts +10 -0
- package/Tests/Server/Utils/APIKey/AccessPermission.test.ts +267 -0
- package/Tests/Server/Utils/AnalyticsDatabase/StatementGenerator.test.ts +120 -0
- package/Tests/Server/Utils/CodeRepository/GitHubInstallationBinding.test.ts +292 -0
- package/Tests/Server/Utils/Database/ProjectScopedReferenceValidator.test.ts +260 -13
- package/Tests/Server/Utils/EntityRegistryRowFence.test.ts +302 -0
- package/Tests/Server/Utils/GitHubInstallationOwnershipVerification.test.ts +340 -0
- package/Tests/Server/Utils/GitHubWebhookAndTreeCacheIsolation.test.ts +250 -0
- package/Tests/Server/Utils/MetricTypeIndexConvergence.test.ts +598 -0
- package/Tests/Server/Utils/Monitor/MonitorStatusTimelineUnusableStatus.test.ts +154 -0
- package/Tests/Server/Utils/Monitor/MonitorStepsProjectValidator.test.ts +638 -92
- package/Tests/Server/Utils/Monitor/MonitorStepsReferenceExtractor.test.ts +724 -0
- package/Tests/Server/Utils/PasswordHash.test.ts +555 -0
- package/Tests/Server/Utils/SingleFlight.test.ts +221 -0
- package/Tests/Types/Dashboard/NetworkDashboardTemplate.test.ts +793 -0
- package/Tests/Types/Database/BigIntColumnTransformer.test.ts +147 -0
- package/Tests/Types/Database/ColumnLength.test.ts +7 -1
- package/Tests/Types/Database/DatabasePropertyTransformer.test.ts +140 -0
- package/Tests/Types/Database/NumericColumnValue.test.ts +127 -0
- package/Tests/Types/Decimal.test.ts +37 -0
- package/Tests/Types/HashedStringPerUserSalt.test.ts +476 -0
- package/Tests/Types/Monitor/DockerAlertTemplates.test.ts +293 -0
- package/Tests/Types/Monitor/HostAlertTemplates.test.ts +249 -0
- package/Tests/Types/Monitor/IotAlertTemplates.test.ts +320 -0
- package/Tests/Types/Monitor/PodmanAlertTemplates.test.ts +271 -0
- package/Tests/Types/Monitor/SnmpVersionParsing.test.ts +152 -0
- package/Tests/Types/Port.test.ts +38 -0
- package/Tests/UI/Components/CustomFields/CustomFieldsDetail.test.tsx +696 -0
- package/Tests/UI/Components/LogsHistogram.test.tsx +276 -0
- package/Tests/UI/Components/UseLiveLogsRefresh.test.tsx +489 -0
- package/Tests/UI/Components/UseLogsHistogram.test.tsx +500 -0
- package/Tests/UI/Utils/UserProjectsModelAPI.test.ts +714 -0
- package/Tests/Utils/Dashboard/Components/DashboardComponentsUtil.test.ts +120 -0
- package/Tests/Utils/Dashboard/DashboardNetworkMapComponent.test.ts +327 -0
- package/Tests/Utils/TeamMembersByProject.test.ts +655 -0
- package/Types/Dashboard/DashboardComponentType.ts +1 -0
- package/Types/Dashboard/DashboardComponents/ComponentArgument.ts +1 -0
- package/Types/Dashboard/DashboardComponents/DashboardNetworkMapComponent.ts +40 -0
- package/Types/Dashboard/DashboardTemplates.ts +397 -0
- package/Types/Database/BigIntColumnTransformer.ts +74 -0
- package/Types/Database/ColumnLength.ts +9 -1
- package/Types/Database/DatabaseProperty.ts +26 -0
- package/Types/Database/NumericColumnValue.ts +128 -0
- package/Types/Database/TableColumn.ts +11 -0
- package/Types/Database/UnsynchronizedIndex.ts +48 -0
- package/Types/Decimal.ts +16 -4
- package/Types/HashedString.ts +139 -4
- package/Types/Permission.ts +48 -0
- package/Types/Port.ts +16 -4
- package/UI/Components/CustomFields/CustomFieldsDetail.tsx +85 -11
- package/UI/Components/LogsViewer/useLiveLogsRefresh.ts +86 -0
- package/UI/Components/LogsViewer/useLogsHistogram.ts +113 -0
- package/UI/Components/Navbar/NavBar.tsx +12 -2
- package/UI/Components/Navbar/NavBarMenuModal.tsx +19 -7
- package/UI/Utils/ModelAPI/UserProjectsModelAPI.ts +257 -0
- package/Utils/Dashboard/Components/DashboardNetworkMapComponent.ts +136 -0
- package/Utils/Dashboard/Components/Index.ts +7 -0
- package/Utils/TeamMembersByProject.ts +237 -0
- package/build/dist/Models/DatabaseModels/CephCluster.js +16 -1
- package/build/dist/Models/DatabaseModels/CephCluster.js.map +1 -1
- package/build/dist/Models/DatabaseModels/CodeRepository.js +14 -6
- package/build/dist/Models/DatabaseModels/CodeRepository.js.map +1 -1
- package/build/dist/Models/DatabaseModels/DatabaseBaseModel/DatabaseBaseModel.js +12 -0
- package/build/dist/Models/DatabaseModels/DatabaseBaseModel/DatabaseBaseModel.js.map +1 -1
- package/build/dist/Models/DatabaseModels/DockerHost.js +16 -1
- package/build/dist/Models/DatabaseModels/DockerHost.js.map +1 -1
- package/build/dist/Models/DatabaseModels/GlobalOidcProject.js +16 -1
- package/build/dist/Models/DatabaseModels/GlobalOidcProject.js.map +1 -1
- package/build/dist/Models/DatabaseModels/GlobalSsoProject.js +16 -1
- package/build/dist/Models/DatabaseModels/GlobalSsoProject.js.map +1 -1
- package/build/dist/Models/DatabaseModels/Index.js +2 -0
- package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IoTFleet.js +16 -1
- package/build/dist/Models/DatabaseModels/IoTFleet.js.map +1 -1
- package/build/dist/Models/DatabaseModels/KubernetesCluster.js +16 -1
- package/build/dist/Models/DatabaseModels/KubernetesCluster.js.map +1 -1
- package/build/dist/Models/DatabaseModels/LogDropFilter.js +9 -20
- package/build/dist/Models/DatabaseModels/LogDropFilter.js.map +1 -1
- package/build/dist/Models/DatabaseModels/NetworkDevice.js +16 -1
- package/build/dist/Models/DatabaseModels/NetworkDevice.js.map +1 -1
- package/build/dist/Models/DatabaseModels/NetworkInterface.js +16 -1
- package/build/dist/Models/DatabaseModels/NetworkInterface.js.map +1 -1
- package/build/dist/Models/DatabaseModels/Project.js +16 -2
- package/build/dist/Models/DatabaseModels/Project.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ProxmoxCluster.js +16 -1
- package/build/dist/Models/DatabaseModels/ProxmoxCluster.js.map +1 -1
- package/build/dist/Models/DatabaseModels/Service.js +28 -1
- package/build/dist/Models/DatabaseModels/Service.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPageMonitorRule.js +925 -0
- package/build/dist/Models/DatabaseModels/StatusPageMonitorRule.js.map +1 -0
- package/build/dist/Models/DatabaseModels/StatusPagePrivateUser.js +32 -0
- package/build/dist/Models/DatabaseModels/StatusPagePrivateUser.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPageResource.js +72 -0
- package/build/dist/Models/DatabaseModels/StatusPageResource.js.map +1 -1
- package/build/dist/Models/DatabaseModels/TraceDropFilter.js +9 -20
- package/build/dist/Models/DatabaseModels/TraceDropFilter.js.map +1 -1
- package/build/dist/Models/DatabaseModels/User.js +32 -0
- package/build/dist/Models/DatabaseModels/User.js.map +1 -1
- package/build/dist/Server/API/AIAgentDataAPI.js +21 -2
- package/build/dist/Server/API/AIAgentDataAPI.js.map +1 -1
- package/build/dist/Server/API/BaseAPI.js +11 -1
- package/build/dist/Server/API/BaseAPI.js.map +1 -1
- package/build/dist/Server/API/DashboardAPI.js +343 -10
- package/build/dist/Server/API/DashboardAPI.js.map +1 -1
- package/build/dist/Server/API/GitHubAPI.js +94 -167
- package/build/dist/Server/API/GitHubAPI.js.map +1 -1
- package/build/dist/Server/API/UserAPI.js +187 -2
- package/build/dist/Server/API/UserAPI.js.map +1 -1
- package/build/dist/Server/EnvironmentConfig.js +34 -4
- package/build/dist/Server/EnvironmentConfig.js.map +1 -1
- package/build/dist/Server/Infrastructure/GlobalCache.js +120 -0
- package/build/dist/Server/Infrastructure/GlobalCache.js.map +1 -1
- package/build/dist/Server/Infrastructure/Postgres/DataSourceOptions.js +5 -3
- package/build/dist/Server/Infrastructure/Postgres/DataSourceOptions.js.map +1 -1
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786005052769-AddStatusPageMonitorRule.js +48 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786005052769-AddStatusPageMonitorRule.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786018109307-AddPerUserPasswordSalt.js +14 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786018109307-AddPerUserPasswordSalt.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786023262402-WidenHashedStringColumnsForScrypt.js +59 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786023262402-WidenHashedStringColumnsForScrypt.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786100000000-RestoreServiceLowerNameIndex.js +93 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786100000000-RestoreServiceLowerNameIndex.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786200000000-RestoreDroppedUniqueIndexes.js +101 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786200000000-RestoreDroppedUniqueIndexes.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786300000000-QuarantineUnboundGitHubInstallations.js +66 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786300000000-QuarantineUnboundGitHubInstallations.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +12 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
- package/build/dist/Server/Services/AlertStateTimelineService.js +19 -0
- package/build/dist/Server/Services/AlertStateTimelineService.js.map +1 -1
- package/build/dist/Server/Services/AnalyticsDatabaseService.js +57 -1
- package/build/dist/Server/Services/AnalyticsDatabaseService.js.map +1 -1
- package/build/dist/Server/Services/CephClusterService.js +26 -76
- package/build/dist/Server/Services/CephClusterService.js.map +1 -1
- package/build/dist/Server/Services/CloudResourceService.js +23 -73
- package/build/dist/Server/Services/CloudResourceService.js.map +1 -1
- package/build/dist/Server/Services/CodeRepositoryService.js +90 -2
- package/build/dist/Server/Services/CodeRepositoryService.js.map +1 -1
- package/build/dist/Server/Services/DatabaseService.js +246 -2
- package/build/dist/Server/Services/DatabaseService.js.map +1 -1
- package/build/dist/Server/Services/DockerHostService.js +19 -69
- package/build/dist/Server/Services/DockerHostService.js.map +1 -1
- package/build/dist/Server/Services/DockerSwarmClusterService.js +27 -78
- package/build/dist/Server/Services/DockerSwarmClusterService.js.map +1 -1
- package/build/dist/Server/Services/HostService.js +58 -102
- package/build/dist/Server/Services/HostService.js.map +1 -1
- package/build/dist/Server/Services/IncidentStateTimelineService.js +19 -0
- package/build/dist/Server/Services/IncidentStateTimelineService.js.map +1 -1
- package/build/dist/Server/Services/Index.js +2 -0
- package/build/dist/Server/Services/Index.js.map +1 -1
- package/build/dist/Server/Services/IoTFleetService.js +19 -69
- package/build/dist/Server/Services/IoTFleetService.js.map +1 -1
- package/build/dist/Server/Services/KubernetesClusterService.js +17 -68
- package/build/dist/Server/Services/KubernetesClusterService.js.map +1 -1
- package/build/dist/Server/Services/LabelService.js +42 -7
- package/build/dist/Server/Services/LabelService.js.map +1 -1
- package/build/dist/Server/Services/MetricTypeService.js +74 -0
- package/build/dist/Server/Services/MetricTypeService.js.map +1 -1
- package/build/dist/Server/Services/MonitorService.js +81 -9
- package/build/dist/Server/Services/MonitorService.js.map +1 -1
- package/build/dist/Server/Services/MonitorStatusTimelineService.js +28 -0
- package/build/dist/Server/Services/MonitorStatusTimelineService.js.map +1 -1
- package/build/dist/Server/Services/MonitorTemplateService.js +60 -0
- package/build/dist/Server/Services/MonitorTemplateService.js.map +1 -1
- package/build/dist/Server/Services/OpenTelemetryIngestService.js +155 -25
- package/build/dist/Server/Services/OpenTelemetryIngestService.js.map +1 -1
- package/build/dist/Server/Services/PodmanHostService.js +19 -69
- package/build/dist/Server/Services/PodmanHostService.js.map +1 -1
- package/build/dist/Server/Services/ProxmoxClusterService.js +23 -73
- package/build/dist/Server/Services/ProxmoxClusterService.js.map +1 -1
- package/build/dist/Server/Services/RumApplicationService.js +19 -70
- package/build/dist/Server/Services/RumApplicationService.js.map +1 -1
- package/build/dist/Server/Services/ScheduledMaintenanceStateTimelineService.js +20 -0
- package/build/dist/Server/Services/ScheduledMaintenanceStateTimelineService.js.map +1 -1
- package/build/dist/Server/Services/ServerlessFunctionService.js +24 -75
- package/build/dist/Server/Services/ServerlessFunctionService.js.map +1 -1
- package/build/dist/Server/Services/ServiceService.js +236 -61
- package/build/dist/Server/Services/ServiceService.js.map +1 -1
- package/build/dist/Server/Services/StatusPageMonitorRuleEngineService.js +603 -0
- package/build/dist/Server/Services/StatusPageMonitorRuleEngineService.js.map +1 -0
- package/build/dist/Server/Services/StatusPageMonitorRuleService.js +401 -0
- package/build/dist/Server/Services/StatusPageMonitorRuleService.js.map +1 -0
- package/build/dist/Server/Services/TelemetryEntityRelationshipService.js +1 -0
- package/build/dist/Server/Services/TelemetryEntityRelationshipService.js.map +1 -1
- package/build/dist/Server/Services/TelemetryEntityService.js +1 -0
- package/build/dist/Server/Services/TelemetryEntityService.js.map +1 -1
- package/build/dist/Server/Services/UserService.js +165 -0
- package/build/dist/Server/Services/UserService.js.map +1 -1
- package/build/dist/Server/Utils/AI/Toolbox/CodeTools.js +31 -1
- package/build/dist/Server/Utils/AI/Toolbox/CodeTools.js.map +1 -1
- package/build/dist/Server/Utils/AnalyticsDatabase/StatementGenerator.js +13 -0
- package/build/dist/Server/Utils/AnalyticsDatabase/StatementGenerator.js.map +1 -1
- package/build/dist/Server/Utils/CodeRepository/GitHub/GitHub.js +126 -4
- package/build/dist/Server/Utils/CodeRepository/GitHub/GitHub.js.map +1 -1
- package/build/dist/Server/Utils/CodeRepository/GitHub/GitHubInstallationBinding.js +136 -0
- package/build/dist/Server/Utils/CodeRepository/GitHub/GitHubInstallationBinding.js.map +1 -0
- package/build/dist/Server/Utils/Database/ProjectScopedReferenceValidator.js +105 -29
- package/build/dist/Server/Utils/Database/ProjectScopedReferenceValidator.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorResource.js +56 -32
- package/build/dist/Server/Utils/Monitor/MonitorResource.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorStatusTimeline.js +30 -3
- package/build/dist/Server/Utils/Monitor/MonitorStatusTimeline.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorStepsProjectValidator.js +110 -98
- package/build/dist/Server/Utils/Monitor/MonitorStepsProjectValidator.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorStepsReferenceExtractor.js +312 -0
- package/build/dist/Server/Utils/Monitor/MonitorStepsReferenceExtractor.js.map +1 -0
- package/build/dist/Server/Utils/PasswordHash.js +237 -0
- package/build/dist/Server/Utils/PasswordHash.js.map +1 -0
- package/build/dist/Server/Utils/SingleFlight.js +76 -0
- package/build/dist/Server/Utils/SingleFlight.js.map +1 -0
- package/build/dist/Server/Utils/StatusPage/MonitorRulePatternValidator.js +29 -0
- package/build/dist/Server/Utils/StatusPage/MonitorRulePatternValidator.js.map +1 -0
- package/build/dist/Server/Utils/Telemetry/EntityRegistry.js +78 -19
- package/build/dist/Server/Utils/Telemetry/EntityRegistry.js.map +1 -1
- package/build/dist/Server/Utils/Telemetry/ResourceHeartbeat.js +160 -0
- package/build/dist/Server/Utils/Telemetry/ResourceHeartbeat.js.map +1 -0
- package/build/dist/Server/Utils/Telemetry/Telemetry.js +279 -104
- package/build/dist/Server/Utils/Telemetry/Telemetry.js.map +1 -1
- package/build/dist/Types/Dashboard/DashboardComponentType.js +1 -0
- package/build/dist/Types/Dashboard/DashboardComponentType.js.map +1 -1
- package/build/dist/Types/Dashboard/DashboardComponents/ComponentArgument.js +1 -0
- package/build/dist/Types/Dashboard/DashboardComponents/ComponentArgument.js.map +1 -1
- package/build/dist/Types/Dashboard/DashboardComponents/DashboardNetworkMapComponent.js +2 -0
- package/build/dist/Types/Dashboard/DashboardComponents/DashboardNetworkMapComponent.js.map +1 -0
- package/build/dist/Types/Dashboard/DashboardTemplates.js +368 -0
- package/build/dist/Types/Dashboard/DashboardTemplates.js.map +1 -1
- package/build/dist/Types/Database/BigIntColumnTransformer.js +66 -0
- package/build/dist/Types/Database/BigIntColumnTransformer.js.map +1 -0
- package/build/dist/Types/Database/ColumnLength.js +9 -1
- package/build/dist/Types/Database/ColumnLength.js.map +1 -1
- package/build/dist/Types/Database/DatabaseProperty.js +25 -0
- package/build/dist/Types/Database/DatabaseProperty.js.map +1 -1
- package/build/dist/Types/Database/NumericColumnValue.js +97 -0
- package/build/dist/Types/Database/NumericColumnValue.js.map +1 -0
- package/build/dist/Types/Database/TableColumn.js.map +1 -1
- package/build/dist/Types/Database/UnsynchronizedIndex.js +46 -0
- package/build/dist/Types/Database/UnsynchronizedIndex.js.map +1 -0
- package/build/dist/Types/Decimal.js +14 -3
- package/build/dist/Types/Decimal.js.map +1 -1
- package/build/dist/Types/HashedString.js +95 -5
- package/build/dist/Types/HashedString.js.map +1 -1
- package/build/dist/Types/Permission.js +42 -0
- package/build/dist/Types/Permission.js.map +1 -1
- package/build/dist/Types/Port.js +15 -5
- package/build/dist/Types/Port.js.map +1 -1
- package/build/dist/UI/Components/CustomFields/CustomFieldsDetail.js +51 -10
- package/build/dist/UI/Components/CustomFields/CustomFieldsDetail.js.map +1 -1
- package/build/dist/UI/Components/LogsViewer/useLiveLogsRefresh.js +44 -0
- package/build/dist/UI/Components/LogsViewer/useLiveLogsRefresh.js.map +1 -0
- package/build/dist/UI/Components/LogsViewer/useLogsHistogram.js +75 -0
- package/build/dist/UI/Components/LogsViewer/useLogsHistogram.js.map +1 -0
- package/build/dist/UI/Components/Navbar/NavBar.js +3 -1
- package/build/dist/UI/Components/Navbar/NavBar.js.map +1 -1
- package/build/dist/UI/Components/Navbar/NavBarMenuModal.js +19 -7
- package/build/dist/UI/Components/Navbar/NavBarMenuModal.js.map +1 -1
- package/build/dist/UI/Utils/ModelAPI/UserProjectsModelAPI.js +156 -0
- package/build/dist/UI/Utils/ModelAPI/UserProjectsModelAPI.js.map +1 -0
- package/build/dist/Utils/Dashboard/Components/DashboardNetworkMapComponent.js +114 -0
- package/build/dist/Utils/Dashboard/Components/DashboardNetworkMapComponent.js.map +1 -0
- package/build/dist/Utils/Dashboard/Components/Index.js +4 -0
- package/build/dist/Utils/Dashboard/Components/Index.js.map +1 -1
- package/build/dist/Utils/TeamMembersByProject.js +145 -0
- package/build/dist/Utils/TeamMembersByProject.js.map +1 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProjectScopedReferenceValidator.js","sourceRoot":"","sources":["../../../../../Server/Utils/Database/ProjectScopedReferenceValidator.ts"],"names":[],"mappings":"AAEA,OAAO,WAAW,MAAM,kCAAkC,CAAC;AAE3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"ProjectScopedReferenceValidator.js","sourceRoot":"","sources":["../../../../../Server/Utils/Database/ProjectScopedReferenceValidator.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,11 +31,12 @@ import MonitorStatusTimelineUtil from "./MonitorStatusTimeline";
|
|
|
31
31
|
import CaptureSpan from "../Telemetry/CaptureSpan";
|
|
32
32
|
import ExceptionMessages from "../../../Types/Exception/ExceptionMessages";
|
|
33
33
|
import MonitorStatusService from "../../Services/MonitorStatusService";
|
|
34
|
+
import ProjectScopedReferenceValidator from "../Database/ProjectScopedReferenceValidator";
|
|
34
35
|
import { ProbeConnectionStatus } from "../../../Models/DatabaseModels/Probe";
|
|
35
36
|
import { LIMIT_PER_PROJECT } from "../../../Types/Database/LimitMax";
|
|
36
37
|
export default class MonitorResourceUtil {
|
|
37
38
|
static async monitorResource(dataToProcess) {
|
|
38
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s;
|
|
39
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
|
|
39
40
|
let response = {
|
|
40
41
|
monitorId: dataToProcess.monitorId,
|
|
41
42
|
criteriaMetId: undefined,
|
|
@@ -769,41 +770,64 @@ export default class MonitorResourceUtil {
|
|
|
769
770
|
* mask the very lock failure the error log surfaces.
|
|
770
771
|
*/
|
|
771
772
|
let revertedToDefaultStatus = true;
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
773
|
+
/*
|
|
774
|
+
* The stored default status can be a status that no longer exists, or
|
|
775
|
+
* one from another project: monitorSteps is a JSON blob with no
|
|
776
|
+
* foreign key behind it, and before issue #3039 was fixed the API
|
|
777
|
+
* accepted any uuid for it. Writing it raised the
|
|
778
|
+
* "violates foreign key constraint" error from the probe/telemetry
|
|
779
|
+
* worker and failed the whole ingest run for this monitor, losing the
|
|
780
|
+
* monitor log and payload persisted below. Skip the revert and log,
|
|
781
|
+
* the same way the criteria path in Utils/Monitor/MonitorStatusTimeline
|
|
782
|
+
* does. New writes are rejected up front by
|
|
783
|
+
* MonitorStepsProjectValidator.
|
|
784
|
+
*/
|
|
785
|
+
const isDefaultStatusUsable = await ProjectScopedReferenceValidator.isUsableInProject({
|
|
786
|
+
projectId: monitor.projectId,
|
|
787
|
+
id: monitorSteps.data.defaultMonitorStatusId,
|
|
788
|
+
service: MonitorStatusService,
|
|
789
|
+
});
|
|
790
|
+
if (!isDefaultStatusUsable) {
|
|
791
|
+
logger.error(`${dataToProcess.monitorId.toString()} - The default monitor status ${monitorSteps.data.defaultMonitorStatusId.toString()} does not exist in project ${(_t = monitor.projectId) === null || _t === void 0 ? void 0 : _t.toString()}. Skipping revert to default status. Please pick a default monitor status that exists in this project.`);
|
|
792
|
+
revertedToDefaultStatus = false;
|
|
780
793
|
}
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
err.message === MONITOR_STATUS_SAME_AS_PREVIOUS_ERROR_MESSAGE) {
|
|
791
|
-
logger.debug(`${dataToProcess.monitorId.toString()} - Monitor status already at default; skipping duplicate status timeline (concurrent race).`);
|
|
794
|
+
else {
|
|
795
|
+
try {
|
|
796
|
+
await MonitorStatusTimelineService.create({
|
|
797
|
+
data: monitorStatusTimeline,
|
|
798
|
+
props: {
|
|
799
|
+
isRoot: true,
|
|
800
|
+
},
|
|
801
|
+
});
|
|
802
|
+
logger.debug(`${dataToProcess.monitorId.toString()} - Monitor status updated to default.`);
|
|
792
803
|
}
|
|
793
|
-
|
|
794
|
-
err.message === MONITOR_STATUS_TIMELINE_LOCK_ERROR_MESSAGE) {
|
|
804
|
+
catch (err) {
|
|
795
805
|
/*
|
|
796
|
-
*
|
|
797
|
-
*
|
|
798
|
-
*
|
|
799
|
-
*
|
|
800
|
-
*
|
|
806
|
+
* Idempotent concurrency race (see MonitorStatusTimeline.ts): a
|
|
807
|
+
* concurrent result already moved the monitor to this default status,
|
|
808
|
+
* so onBeforeCreate's dedupe check throws this exact BadDataException.
|
|
809
|
+
* Treat as a no-op at debug level rather than failing the job. Match the
|
|
810
|
+
* exact message so unrelated BadDataExceptions still propagate.
|
|
801
811
|
*/
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
|
|
812
|
+
if (err instanceof BadDataException &&
|
|
813
|
+
err.message === MONITOR_STATUS_SAME_AS_PREVIOUS_ERROR_MESSAGE) {
|
|
814
|
+
logger.debug(`${dataToProcess.monitorId.toString()} - Monitor status already at default; skipping duplicate status timeline (concurrent race).`);
|
|
815
|
+
}
|
|
816
|
+
else if (err instanceof ServerException &&
|
|
817
|
+
err.message === MONITOR_STATUS_TIMELINE_LOCK_ERROR_MESSAGE) {
|
|
818
|
+
/*
|
|
819
|
+
* The per-monitor timeline mutex could not be acquired (fail-closed
|
|
820
|
+
* create, see MonitorStatusTimelineService). Skipping is recoverable:
|
|
821
|
+
* the next probe result re-evaluates the same criteria and recreates
|
|
822
|
+
* the revert-to-default, while failing here would abort the whole
|
|
823
|
+
* ingest run and lose the monitor log for this probe result.
|
|
824
|
+
*/
|
|
825
|
+
logger.error(`${dataToProcess.monitorId.toString()} - Could not acquire the monitor status timeline lock; skipping revert to default status. It will be retried on the next probe result.`);
|
|
826
|
+
revertedToDefaultStatus = false;
|
|
827
|
+
}
|
|
828
|
+
else {
|
|
829
|
+
throw err;
|
|
830
|
+
}
|
|
807
831
|
}
|
|
808
832
|
}
|
|
809
833
|
if (revertedToDefaultStatus) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MonitorResource.js","sourceRoot":"","sources":["../../../../../Server/Utils/Monitor/MonitorResource.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MonitorResource.js","sourceRoot":"","sources":["../../../../../Server/Utils/Monitor/MonitorResource.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,13 +11,15 @@ import MonitorStatusTimeline from "../../../Models/DatabaseModels/MonitorStatusT
|
|
|
11
11
|
import SortOrder from "../../../Types/BaseDatabase/SortOrder";
|
|
12
12
|
import BadDataException from "../../../Types/Exception/BadDataException";
|
|
13
13
|
import MonitorStatusTimelineService, { MONITOR_STATUS_SAME_AS_PREVIOUS_ERROR_MESSAGE, MONITOR_STATUS_TIMELINE_LOCK_ERROR_MESSAGE, } from "../../Services/MonitorStatusTimelineService";
|
|
14
|
+
import MonitorStatusService from "../../Services/MonitorStatusService";
|
|
14
15
|
import ServerException from "../../../Types/Exception/ServerException";
|
|
16
|
+
import ProjectScopedReferenceValidator from "../Database/ProjectScopedReferenceValidator";
|
|
15
17
|
import logger from "../Logger";
|
|
16
18
|
import CaptureSpan from "../Telemetry/CaptureSpan";
|
|
17
19
|
export default class MonitorStatusTimelineUtil {
|
|
18
20
|
static async updateMonitorStatusTimeline(input) {
|
|
19
21
|
// criteria filters are met, now process the actions.
|
|
20
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
|
|
22
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w;
|
|
21
23
|
/*
|
|
22
24
|
* Steady-state fast-path: the criteria's target status is already the
|
|
23
25
|
* monitor's current status (the standard "online criteria matched on a
|
|
@@ -81,6 +83,31 @@ export default class MonitorStatusTimelineUtil {
|
|
|
81
83
|
if (!monitorStatusId) {
|
|
82
84
|
throw new BadDataException("Monitor status is not defined.");
|
|
83
85
|
}
|
|
86
|
+
/*
|
|
87
|
+
* The criteria can name a status that no longer exists, or that belongs to
|
|
88
|
+
* another project: monitorSteps is a JSON blob with no foreign key behind
|
|
89
|
+
* it, so deleting a monitor status does not rewrite the criteria that
|
|
90
|
+
* point at it, and before issue #3039 was fixed the API accepted any uuid
|
|
91
|
+
* here in the first place. Writing it anyway is what raised
|
|
92
|
+
* insert or update on table "MonitorStatusTimeline" violates foreign key
|
|
93
|
+
* constraint
|
|
94
|
+
* inside the probe/telemetry worker, failing the whole ingest run for this
|
|
95
|
+
* monitor - no status change, and no monitor log or payload persisted
|
|
96
|
+
* either, because those come after this. Skip the status change and log,
|
|
97
|
+
* the same way MonitorIncident and MonitorAlert handle an unusable
|
|
98
|
+
* severity. New writes are rejected up front by
|
|
99
|
+
* MonitorStepsProjectValidator, so this only ever fires for monitors saved
|
|
100
|
+
* before that guard existed.
|
|
101
|
+
*/
|
|
102
|
+
const isMonitorStatusUsable = await ProjectScopedReferenceValidator.isUsableInProject({
|
|
103
|
+
projectId: input.monitor.projectId,
|
|
104
|
+
id: monitorStatusId,
|
|
105
|
+
service: MonitorStatusService,
|
|
106
|
+
});
|
|
107
|
+
if (!isMonitorStatusUsable) {
|
|
108
|
+
logger.error(`${(_s = input.monitor.id) === null || _s === void 0 ? void 0 : _s.toString()} - Criteria "${(_t = input.criteriaInstance.data) === null || _t === void 0 ? void 0 : _t.name}" changes the monitor status to ${monitorStatusId.toString()}, which does not exist in project ${(_u = input.monitor.projectId) === null || _u === void 0 ? void 0 : _u.toString()}. Skipping the status change. Please pick a monitor status that exists in this project.`, monitorLogAttributes);
|
|
109
|
+
return null;
|
|
110
|
+
}
|
|
84
111
|
//change monitor status.
|
|
85
112
|
// get last status of this monitor.
|
|
86
113
|
// get last monitor status timeline.
|
|
@@ -120,7 +147,7 @@ export default class MonitorStatusTimelineUtil {
|
|
|
120
147
|
*/
|
|
121
148
|
if (err instanceof BadDataException &&
|
|
122
149
|
err.message === MONITOR_STATUS_SAME_AS_PREVIOUS_ERROR_MESSAGE) {
|
|
123
|
-
logger.debug(`${(
|
|
150
|
+
logger.debug(`${(_v = input.monitor.id) === null || _v === void 0 ? void 0 : _v.toString()} - Monitor status already equals desired status; skipping duplicate status timeline (concurrent race).`);
|
|
124
151
|
return null;
|
|
125
152
|
}
|
|
126
153
|
/*
|
|
@@ -136,7 +163,7 @@ export default class MonitorStatusTimelineUtil {
|
|
|
136
163
|
*/
|
|
137
164
|
if (err instanceof ServerException &&
|
|
138
165
|
err.message === MONITOR_STATUS_TIMELINE_LOCK_ERROR_MESSAGE) {
|
|
139
|
-
logger.error(`${(
|
|
166
|
+
logger.error(`${(_w = input.monitor.id) === null || _w === void 0 ? void 0 : _w.toString()} - Could not acquire the monitor status timeline lock; skipping this status change. It will be retried on the next probe result.`);
|
|
140
167
|
return null;
|
|
141
168
|
}
|
|
142
169
|
throw err;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MonitorStatusTimeline.js","sourceRoot":"","sources":["../../../../../Server/Utils/Monitor/MonitorStatusTimeline.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"MonitorStatusTimeline.js","sourceRoot":"","sources":["../../../../../Server/Utils/Monitor/MonitorStatusTimeline.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,117 +1,129 @@
|
|
|
1
1
|
import AlertSeverityService from "../../Services/AlertSeverityService";
|
|
2
|
+
import IncidentRoleService from "../../Services/IncidentRoleService";
|
|
2
3
|
import IncidentSeverityService from "../../Services/IncidentSeverityService";
|
|
4
|
+
import LabelService from "../../Services/LabelService";
|
|
3
5
|
import MonitorStatusService from "../../Services/MonitorStatusService";
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
|
|
6
|
+
import NetworkDeviceService from "../../Services/NetworkDeviceService";
|
|
7
|
+
import OnCallDutyPolicyService from "../../Services/OnCallDutyPolicyService";
|
|
8
|
+
import ServiceService from "../../Services/ServiceService";
|
|
9
|
+
import TeamService from "../../Services/TeamService";
|
|
10
|
+
import UserService from "../../Services/UserService";
|
|
11
|
+
import ProjectScopedReferenceValidator from "../Database/ProjectScopedReferenceValidator";
|
|
12
|
+
import MonitorStepsReferenceExtractor, { MonitorStepsReferenceModel, } from "./MonitorStepsReferenceExtractor";
|
|
9
13
|
/*
|
|
10
|
-
* `monitorSteps` is a JSON blob that embeds ids of other
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
* second project could be saved and then stamped onto every
|
|
15
|
-
* MonitorStatusTimeline row the monitor wrote. That silently ties two projects
|
|
16
|
-
* together and leaves the referenced project undeletable.
|
|
14
|
+
* `monitorSteps` is a JSON blob that embeds ids of other records — the default
|
|
15
|
+
* monitor status, the status each criteria switches to, the severities used to
|
|
16
|
+
* open incidents and alerts, and the on-call policies, labels, teams and users
|
|
17
|
+
* stamped on what those incidents and alerts create.
|
|
17
18
|
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
19
|
+
* Two things can be wrong with one of those ids, and both used to be accepted:
|
|
20
|
+
*
|
|
21
|
+
* 1. It belongs to ANOTHER project. That silently ties two projects together
|
|
22
|
+
* and leaves the referenced project undeletable, because the row the id ends
|
|
23
|
+
* up on (a MonitorStatusTimeline, an Incident) has an ON DELETE NO ACTION
|
|
24
|
+
* foreign key pointing back at it.
|
|
25
|
+
*
|
|
26
|
+
* 2. It exists nowhere at all (issue #3039). The monitor saved fine and then
|
|
27
|
+
* failed every time it ran, deep inside the probe worker, with
|
|
28
|
+
* insert or update on table "MonitorStatusTimeline" violates foreign key
|
|
29
|
+
* constraint
|
|
30
|
+
* and nothing surfaced to whoever supplied the id — which is easy to do over
|
|
31
|
+
* the REST API or Terraform, where these are just uuids in a JSON body.
|
|
32
|
+
*
|
|
33
|
+
* Telling a real reference apart from the many uuids in monitorSteps that are
|
|
34
|
+
* NOT references (step ids, criteria ids, incident/alert template ids) is what
|
|
35
|
+
* makes check 2 possible, and that is MonitorStepsReferenceExtractor's job: it
|
|
36
|
+
* walks the structure instead of scraping the text, so every id it hands back
|
|
37
|
+
* is known to point at a specific model.
|
|
24
38
|
*/
|
|
39
|
+
const SERVICE_BY_MODEL = {
|
|
40
|
+
[MonitorStepsReferenceModel.MonitorStatus]: MonitorStatusService,
|
|
41
|
+
[MonitorStepsReferenceModel.IncidentSeverity]: IncidentSeverityService,
|
|
42
|
+
[MonitorStepsReferenceModel.AlertSeverity]: AlertSeverityService,
|
|
43
|
+
[MonitorStepsReferenceModel.OnCallDutyPolicy]: OnCallDutyPolicyService,
|
|
44
|
+
[MonitorStepsReferenceModel.Label]: LabelService,
|
|
45
|
+
[MonitorStepsReferenceModel.Team]: TeamService,
|
|
46
|
+
[MonitorStepsReferenceModel.User]: UserService,
|
|
47
|
+
[MonitorStepsReferenceModel.IncidentRole]: IncidentRoleService,
|
|
48
|
+
[MonitorStepsReferenceModel.TelemetryService]: ServiceService,
|
|
49
|
+
[MonitorStepsReferenceModel.NetworkDevice]: NetworkDeviceService,
|
|
50
|
+
};
|
|
25
51
|
export default class MonitorStepsProjectValidator {
|
|
26
52
|
static async validateMonitorStepsBelongToProject(data) {
|
|
27
|
-
var _a, _b, _c, _d, _e, _f;
|
|
28
53
|
if (!data.monitorSteps || !data.projectId) {
|
|
29
54
|
return;
|
|
30
55
|
}
|
|
31
|
-
const
|
|
32
|
-
if (
|
|
56
|
+
const references = MonitorStepsReferenceExtractor.extract(data.monitorSteps);
|
|
57
|
+
if (references.length === 0) {
|
|
33
58
|
return;
|
|
34
59
|
}
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
60
|
+
/*
|
|
61
|
+
* An id the record ALREADY holds is this write's inheritance, not its
|
|
62
|
+
* doing, and is left alone entirely — neither checked for existence nor for
|
|
63
|
+
* belonging to another project.
|
|
64
|
+
*
|
|
65
|
+
* None of these ids has a foreign key behind it, so one really can end up
|
|
66
|
+
* wrong through no fault of the person now saving: deleting a monitor
|
|
67
|
+
* status, label, team or on-call policy does not rewrite the criteria that
|
|
68
|
+
* name it, and the 1785240000000 repair migration deliberately left behind
|
|
69
|
+
* the cross-project ids it could not map to a local equivalent. The
|
|
70
|
+
* dashboard re-submits the whole blob on every save and renders an
|
|
71
|
+
* unresolvable id as an empty dropdown, so checking them would refuse EVERY
|
|
72
|
+
* edit of such a monitor — including renaming it — over a field the user
|
|
73
|
+
* never touched and cannot see is wrong, with no migration to get them out.
|
|
74
|
+
*
|
|
75
|
+
* Letting a stale id ride costs less than it used to. The status and
|
|
76
|
+
* severity ids — the ones that reach a foreign-key column and made the
|
|
77
|
+
* referenced project undeletable — are now screened where they are written:
|
|
78
|
+
* MonitorStatusTimelineService rejects a status that does not resolve, and
|
|
79
|
+
* the probe worker skips one it cannot use rather than writing it, as
|
|
80
|
+
* MonitorIncident and MonitorAlert already did for severities.
|
|
81
|
+
*
|
|
82
|
+
* That screening does NOT extend to the ids that land on join rows
|
|
83
|
+
* (IncidentLabel, IncidentOnCallDutyPolicy and friends). A stale label or
|
|
84
|
+
* on-call policy carried forward here can still fail when the criteria
|
|
85
|
+
* fires. That is a pre-existing gap in MonitorIncident/MonitorAlert rather
|
|
86
|
+
* than something this exemption opens up — those ids were not validated at
|
|
87
|
+
* all before — and refusing the SAVE would not close it, because the
|
|
88
|
+
* monitor that never gets edited again fails just the same.
|
|
89
|
+
*
|
|
90
|
+
* What this write INTRODUCES is checked in full. That is issue #3039.
|
|
91
|
+
*
|
|
92
|
+
* Compared case-insensitively: ObjectID keeps whatever case it was given,
|
|
93
|
+
* so the same id can be stored as Postgres rendered it (lower) and re-sent
|
|
94
|
+
* by a caller in upper.
|
|
95
|
+
*/
|
|
96
|
+
const grandfatheredIds = new Set(MonitorStepsReferenceExtractor.extract(data.alreadyStoredMonitorSteps).map((reference) => {
|
|
97
|
+
return reference.id.toLowerCase();
|
|
98
|
+
}));
|
|
99
|
+
const introduced = references.filter((reference) => {
|
|
100
|
+
return !grandfatheredIds.has(reference.id.toLowerCase());
|
|
44
101
|
});
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
foreignReferences.push({
|
|
48
|
-
modelName: "Monitor Status",
|
|
49
|
-
name: monitorStatus.name || ((_b = monitorStatus.id) === null || _b === void 0 ? void 0 : _b.toString()) || "",
|
|
50
|
-
});
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
const incidentSeverities = await IncidentSeverityService.findBy({
|
|
54
|
-
query: {
|
|
55
|
-
_id: QueryHelper.any(referencedIds),
|
|
56
|
-
},
|
|
57
|
-
select: { _id: true, name: true, projectId: true },
|
|
58
|
-
limit: LIMIT_PER_PROJECT,
|
|
59
|
-
skip: 0,
|
|
60
|
-
props: { isRoot: true },
|
|
61
|
-
});
|
|
62
|
-
for (const incidentSeverity of incidentSeverities) {
|
|
63
|
-
if (((_c = incidentSeverity.projectId) === null || _c === void 0 ? void 0 : _c.toString()) !== data.projectId.toString()) {
|
|
64
|
-
foreignReferences.push({
|
|
65
|
-
modelName: "Incident Severity",
|
|
66
|
-
name: incidentSeverity.name || ((_d = incidentSeverity.id) === null || _d === void 0 ? void 0 : _d.toString()) || "",
|
|
67
|
-
});
|
|
68
|
-
}
|
|
102
|
+
if (introduced.length === 0) {
|
|
103
|
+
return;
|
|
69
104
|
}
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
105
|
+
await ProjectScopedReferenceValidator.validateReferencesBelongToProject({
|
|
106
|
+
projectId: data.projectId,
|
|
107
|
+
subject: "monitor's criteria",
|
|
108
|
+
references: introduced.map((reference) => {
|
|
109
|
+
return {
|
|
110
|
+
/*
|
|
111
|
+
* The path — `criteria "Monitor is offline" incident severity` —
|
|
112
|
+
* rather than the bare model name, so the message points at the
|
|
113
|
+
* field to fix. monitorSteps can hold a dozen of these.
|
|
114
|
+
*/
|
|
115
|
+
modelName: `${reference.model} (${reference.path})`,
|
|
116
|
+
id: reference.id,
|
|
117
|
+
service: SERVICE_BY_MODEL[reference.model],
|
|
118
|
+
/*
|
|
119
|
+
* Only ids the monitor actually reads at run time are required to
|
|
120
|
+
* exist — see MonitorStepsReference.isOperative. The rest are still
|
|
121
|
+
* checked for belonging to this project.
|
|
122
|
+
*/
|
|
123
|
+
mustExist: reference.isOperative,
|
|
124
|
+
};
|
|
125
|
+
}),
|
|
78
126
|
});
|
|
79
|
-
for (const alertSeverity of alertSeverities) {
|
|
80
|
-
if (((_e = alertSeverity.projectId) === null || _e === void 0 ? void 0 : _e.toString()) !== data.projectId.toString()) {
|
|
81
|
-
foreignReferences.push({
|
|
82
|
-
modelName: "Alert Severity",
|
|
83
|
-
name: alertSeverity.name || ((_f = alertSeverity.id) === null || _f === void 0 ? void 0 : _f.toString()) || "",
|
|
84
|
-
});
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
if (foreignReferences.length > 0) {
|
|
88
|
-
const described = foreignReferences
|
|
89
|
-
.map((reference) => {
|
|
90
|
-
return `${reference.modelName} "${reference.name}"`;
|
|
91
|
-
})
|
|
92
|
-
.join(", ");
|
|
93
|
-
throw new BadDataException(`Monitor criteria reference records that belong to a different project: ${described}. Please pick values from this project and try again.`);
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
static extractUuids(monitorSteps) {
|
|
97
|
-
let serialized = "";
|
|
98
|
-
try {
|
|
99
|
-
serialized =
|
|
100
|
-
monitorSteps instanceof MonitorSteps
|
|
101
|
-
? JSON.stringify(monitorSteps.toJSON())
|
|
102
|
-
: JSON.stringify(monitorSteps);
|
|
103
|
-
}
|
|
104
|
-
catch (_a) {
|
|
105
|
-
/*
|
|
106
|
-
* Unserializable monitorSteps is a different problem and is reported by
|
|
107
|
-
* MonitorSteps' own validation. Nothing to check here.
|
|
108
|
-
*/
|
|
109
|
-
return [];
|
|
110
|
-
}
|
|
111
|
-
const matches = serialized.match(UUID_REGEX) || [];
|
|
112
|
-
return Array.from(new Set(matches.map((match) => {
|
|
113
|
-
return match.toLowerCase();
|
|
114
|
-
})));
|
|
115
127
|
}
|
|
116
128
|
}
|
|
117
129
|
//# sourceMappingURL=MonitorStepsProjectValidator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MonitorStepsProjectValidator.js","sourceRoot":"","sources":["../../../../../Server/Utils/Monitor/MonitorStepsProjectValidator.ts"],"names":[],"mappings":"AAAA,OAAO,oBAAoB,MAAM,qCAAqC,CAAC;
|
|
1
|
+
{"version":3,"file":"MonitorStepsProjectValidator.js","sourceRoot":"","sources":["../../../../../Server/Utils/Monitor/MonitorStepsProjectValidator.ts"],"names":[],"mappings":"AAAA,OAAO,oBAAoB,MAAM,qCAAqC,CAAC;AAEvE,OAAO,mBAAmB,MAAM,oCAAoC,CAAC;AACrE,OAAO,uBAAuB,MAAM,wCAAwC,CAAC;AAC7E,OAAO,YAAY,MAAM,6BAA6B,CAAC;AACvD,OAAO,oBAAoB,MAAM,qCAAqC,CAAC;AACvE,OAAO,oBAAoB,MAAM,qCAAqC,CAAC;AACvE,OAAO,uBAAuB,MAAM,wCAAwC,CAAC;AAC7E,OAAO,cAAc,MAAM,+BAA+B,CAAC;AAC3D,OAAO,WAAW,MAAM,4BAA4B,CAAC;AACrD,OAAO,WAAW,MAAM,4BAA4B,CAAC;AACrD,OAAO,+BAEN,MAAM,6CAA6C,CAAC;AACrD,OAAO,8BAA8B,EAAE,EAErC,0BAA0B,GAC3B,MAAM,kCAAkC,CAAC;AAM1C;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,MAAM,gBAAgB,GAGlB;IACF,CAAC,0BAA0B,CAAC,aAAa,CAAC,EACxC,oBAAqE;IACvE,CAAC,0BAA0B,CAAC,gBAAgB,CAAC,EAC3C,uBAAwE;IAC1E,CAAC,0BAA0B,CAAC,aAAa,CAAC,EACxC,oBAAqE;IACvE,CAAC,0BAA0B,CAAC,gBAAgB,CAAC,EAC3C,uBAAwE;IAC1E,CAAC,0BAA0B,CAAC,KAAK,CAAC,EAChC,YAA6D;IAC/D,CAAC,0BAA0B,CAAC,IAAI,CAAC,EAC/B,WAA4D;IAC9D,CAAC,0BAA0B,CAAC,IAAI,CAAC,EAC/B,WAA4D;IAC9D,CAAC,0BAA0B,CAAC,YAAY,CAAC,EACvC,mBAAoE;IACtE,CAAC,0BAA0B,CAAC,gBAAgB,CAAC,EAC3C,cAA+D;IACjE,CAAC,0BAA0B,CAAC,aAAa,CAAC,EACxC,oBAAqE;CACxE,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,4BAA4B;IACxC,MAAM,CAAC,KAAK,CAAC,mCAAmC,CAAC,IAUvD;QACC,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YAC1C,OAAO;QACT,CAAC;QAED,MAAM,UAAU,GACd,8BAA8B,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAE5D,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO;QACT,CAAC;QAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAmCG;QACH,MAAM,gBAAgB,GAAgB,IAAI,GAAG,CAC3C,8BAA8B,CAAC,OAAO,CACpC,IAAI,CAAC,yBAAyB,CAC/B,CAAC,GAAG,CAAC,CAAC,SAAgC,EAAE,EAAE;YACzC,OAAO,SAAS,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC;QACpC,CAAC,CAAC,CACH,CAAC;QAEF,MAAM,UAAU,GAAiC,UAAU,CAAC,MAAM,CAChE,CAAC,SAAgC,EAAE,EAAE;YACnC,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC;QAC3D,CAAC,CACF,CAAC;QAEF,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO;QACT,CAAC;QAED,MAAM,+BAA+B,CAAC,iCAAiC,CAAC;YACtE,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,OAAO,EAAE,oBAAoB;YAC7B,UAAU,EAAE,UAAU,CAAC,GAAG,CACxB,CAAC,SAAgC,EAA0B,EAAE;gBAC3D,OAAO;oBACL;;;;uBAIG;oBACH,SAAS,EAAE,GAAG,SAAS,CAAC,KAAK,KAAK,SAAS,CAAC,IAAI,GAAG;oBACnD,EAAE,EAAE,SAAS,CAAC,EAAE;oBAChB,OAAO,EAAE,gBAAgB,CAAC,SAAS,CAAC,KAAK,CAAC;oBAC1C;;;;uBAIG;oBACH,SAAS,EAAE,SAAS,CAAC,WAAW;iBACjC,CAAC;YACJ,CAAC,CACF;SACF,CAAC,CAAC;IACL,CAAC;CACF"}
|