@oneuptime/common 13.0.1 → 13.0.3
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/AnalyticsModels/RumSession.ts +34 -0
- package/Models/DatabaseModels/AlertEpisodeLabelRule.ts +2 -2
- package/Models/DatabaseModels/AlertEpisodeOnCallRule.ts +2 -2
- package/Models/DatabaseModels/AlertEpisodeOwnerRule.ts +2 -2
- package/Models/DatabaseModels/AlertEpisodePrivacyRule.ts +2 -2
- package/Models/DatabaseModels/AlertGroupingRule.ts +2 -2
- package/Models/DatabaseModels/AlertLabelRule.ts +2 -2
- package/Models/DatabaseModels/AlertOnCallRule.ts +2 -2
- package/Models/DatabaseModels/AlertOwnerRule.ts +2 -2
- package/Models/DatabaseModels/AlertPrivacyRule.ts +2 -2
- package/Models/DatabaseModels/AlertReminderRule.ts +6 -4
- package/Models/DatabaseModels/AutoRemediationRule.ts +2 -2
- package/Models/DatabaseModels/CephClusterLabelRule.ts +2 -2
- package/Models/DatabaseModels/CephClusterOwnerRule.ts +2 -2
- package/Models/DatabaseModels/CloudResourceLabelRule.ts +2 -2
- package/Models/DatabaseModels/CloudResourceOwnerRule.ts +2 -2
- package/Models/DatabaseModels/DashboardLabelRule.ts +2 -2
- package/Models/DatabaseModels/DashboardOwnerRule.ts +2 -2
- package/Models/DatabaseModels/DatabaseBaseModel/RelationOnlyRuleBaseModel.ts +11 -0
- package/Models/DatabaseModels/DatabaseBaseModel/RuleBaseModel.ts +44 -0
- package/Models/DatabaseModels/DockerHostLabelRule.ts +2 -2
- package/Models/DatabaseModels/DockerHostOwnerRule.ts +2 -2
- package/Models/DatabaseModels/DockerSwarmClusterLabelRule.ts +2 -2
- package/Models/DatabaseModels/DockerSwarmClusterOwnerRule.ts +2 -2
- package/Models/DatabaseModels/HostLabelRule.ts +2 -2
- package/Models/DatabaseModels/HostOwnerRule.ts +2 -2
- package/Models/DatabaseModels/IncidentEpisodeLabelRule.ts +2 -2
- package/Models/DatabaseModels/IncidentEpisodeOnCallRule.ts +2 -2
- package/Models/DatabaseModels/IncidentEpisodeOwnerRule.ts +2 -2
- package/Models/DatabaseModels/IncidentEpisodePrivacyRule.ts +2 -2
- package/Models/DatabaseModels/IncidentGroupingRule.ts +2 -2
- package/Models/DatabaseModels/IncidentLabelRule.ts +2 -2
- package/Models/DatabaseModels/IncidentOnCallRule.ts +2 -2
- package/Models/DatabaseModels/IncidentOwnerRule.ts +2 -2
- package/Models/DatabaseModels/IncidentPrivacyRule.ts +2 -2
- package/Models/DatabaseModels/IncidentReminderRule.ts +6 -4
- package/Models/DatabaseModels/IncidentSlaRule.ts +2 -2
- package/Models/DatabaseModels/IncomingCallPolicy.ts +3 -4
- package/Models/DatabaseModels/IncomingCallPolicyLabelRule.ts +2 -2
- package/Models/DatabaseModels/IncomingCallPolicyOwnerRule.ts +2 -2
- package/Models/DatabaseModels/IncomingCallPolicyPhoneNumber.ts +254 -0
- package/Models/DatabaseModels/Index.ts +2 -0
- package/Models/DatabaseModels/IoTFleetLabelRule.ts +2 -2
- package/Models/DatabaseModels/IoTFleetOwnerRule.ts +2 -2
- package/Models/DatabaseModels/KubernetesClusterLabelRule.ts +2 -2
- package/Models/DatabaseModels/KubernetesClusterOwnerRule.ts +2 -2
- package/Models/DatabaseModels/MonitorLabelRule.ts +2 -2
- package/Models/DatabaseModels/MonitorOwnerRule.ts +2 -2
- package/Models/DatabaseModels/NetworkDeviceAutoImportRule.ts +2 -2
- package/Models/DatabaseModels/NetworkDeviceLabelRule.ts +2 -2
- package/Models/DatabaseModels/NetworkDeviceOwnerRule.ts +2 -2
- package/Models/DatabaseModels/NetworkSiteAssignmentRule.ts +2 -2
- package/Models/DatabaseModels/OnCallDutyPolicyLabelRule.ts +2 -2
- package/Models/DatabaseModels/OnCallDutyPolicyOwnerRule.ts +2 -2
- package/Models/DatabaseModels/OnCallDutyPolicyScheduleLabelRule.ts +2 -2
- package/Models/DatabaseModels/OnCallDutyPolicyScheduleOwnerRule.ts +2 -2
- package/Models/DatabaseModels/PodmanHostLabelRule.ts +2 -2
- package/Models/DatabaseModels/PodmanHostOwnerRule.ts +2 -2
- package/Models/DatabaseModels/ProxmoxClusterLabelRule.ts +2 -2
- package/Models/DatabaseModels/ProxmoxClusterOwnerRule.ts +2 -2
- package/Models/DatabaseModels/RumApplicationLabelRule.ts +2 -2
- package/Models/DatabaseModels/RumApplicationOwnerRule.ts +2 -2
- package/Models/DatabaseModels/RunbookLabelRule.ts +2 -2
- package/Models/DatabaseModels/RunbookOwnerRule.ts +2 -2
- package/Models/DatabaseModels/RunbookRule.ts +2 -2
- package/Models/DatabaseModels/ScheduledMaintenanceLabelRule.ts +2 -2
- package/Models/DatabaseModels/ScheduledMaintenanceOwnerRule.ts +2 -2
- package/Models/DatabaseModels/ScheduledMaintenanceReminderRule.ts +6 -4
- package/Models/DatabaseModels/ServerlessFunctionLabelRule.ts +2 -2
- package/Models/DatabaseModels/ServerlessFunctionOwnerRule.ts +2 -2
- package/Models/DatabaseModels/ServiceLabelRule.ts +2 -2
- package/Models/DatabaseModels/ServiceLevelObjectiveBurnRateRule.ts +283 -4
- package/Models/DatabaseModels/ServiceOwnerRule.ts +2 -2
- package/Models/DatabaseModels/StatusPageLabelRule.ts +2 -2
- package/Models/DatabaseModels/StatusPageMonitorRule.ts +2 -2
- package/Models/DatabaseModels/StatusPageOwnerRule.ts +2 -2
- package/Models/DatabaseModels/VMwareVCenterLabelRule.ts +2 -2
- package/Models/DatabaseModels/VMwareVCenterOwnerRule.ts +2 -2
- package/Models/DatabaseModels/WorkflowLabelRule.ts +2 -2
- package/Models/DatabaseModels/WorkflowOwnerRule.ts +2 -2
- package/Server/API/TelemetryAPI.ts +323 -2
- package/Server/Infrastructure/Postgres/SchemaMigrations/1792400000000-AddSloBurnRateRuleIncidents.ts +111 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1792500000000-AddConfigurableRuleCriteria.ts +644 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1792600000000-AddIncomingCallPolicyPhoneNumbers.ts +72 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +6 -0
- package/Server/Middleware/MultipartFormData.ts +46 -21
- package/Server/Services/AlertEpisodeLabelRuleEngineService.ts +21 -0
- package/Server/Services/AlertEpisodeOnCallRuleEngineService.ts +21 -0
- package/Server/Services/AlertEpisodeOwnerRuleEngineService.ts +21 -0
- package/Server/Services/AlertEpisodePrivacyRuleEngineService.ts +21 -0
- package/Server/Services/AlertGroupingEngineService.ts +27 -0
- package/Server/Services/AlertLabelRuleEngineService.ts +27 -0
- package/Server/Services/AlertOnCallRuleEngineService.ts +27 -0
- package/Server/Services/AlertOwnerRuleEngineService.ts +27 -0
- package/Server/Services/AlertPrivacyRuleEngineService.ts +27 -0
- package/Server/Services/AlertReminderRuleService.ts +65 -33
- package/Server/Services/AutoRemediationRuleEngineService.ts +90 -8
- package/Server/Services/CephClusterLabelRuleEngineService.ts +20 -0
- package/Server/Services/CephClusterOwnerRuleEngineService.ts +20 -0
- package/Server/Services/CloudResourceLabelRuleEngineService.ts +20 -0
- package/Server/Services/CloudResourceOwnerRuleEngineService.ts +20 -0
- package/Server/Services/DashboardLabelRuleEngineService.ts +20 -0
- package/Server/Services/DashboardOwnerRuleEngineService.ts +20 -0
- package/Server/Services/DatabaseService.ts +409 -6
- package/Server/Services/DockerHostLabelRuleEngineService.ts +20 -0
- package/Server/Services/DockerHostOwnerRuleEngineService.ts +20 -0
- package/Server/Services/DockerSwarmClusterLabelRuleEngineService.ts +23 -0
- package/Server/Services/DockerSwarmClusterOwnerRuleEngineService.ts +23 -0
- package/Server/Services/HostLabelRuleEngineService.ts +13 -0
- package/Server/Services/HostOwnerRuleEngineService.ts +13 -0
- package/Server/Services/IncidentEpisodeLabelRuleEngineService.ts +21 -0
- package/Server/Services/IncidentEpisodeOnCallRuleEngineService.ts +21 -0
- package/Server/Services/IncidentEpisodeOwnerRuleEngineService.ts +21 -0
- package/Server/Services/IncidentEpisodePrivacyRuleEngineService.ts +21 -0
- package/Server/Services/IncidentGroupingEngineService.ts +64 -13
- package/Server/Services/IncidentLabelRuleEngineService.ts +64 -9
- package/Server/Services/IncidentOnCallRuleEngineService.ts +64 -10
- package/Server/Services/IncidentOwnerRuleEngineService.ts +64 -10
- package/Server/Services/IncidentPrivacyRuleEngineService.ts +64 -10
- package/Server/Services/IncidentReminderRuleService.ts +66 -34
- package/Server/Services/IncidentSlaRuleService.ts +55 -12
- package/Server/Services/IncomingCallPolicyLabelRuleEngineService.ts +20 -0
- package/Server/Services/IncomingCallPolicyOwnerRuleEngineService.ts +20 -0
- package/Server/Services/IncomingCallPolicyPhoneNumberService.ts +184 -0
- package/Server/Services/IncomingCallPolicyService.ts +276 -5
- package/Server/Services/Index.ts +2 -0
- package/Server/Services/IoTFleetLabelRuleEngineService.ts +20 -0
- package/Server/Services/IoTFleetOwnerRuleEngineService.ts +20 -0
- package/Server/Services/KubernetesClusterLabelRuleEngineService.ts +23 -0
- package/Server/Services/KubernetesClusterOwnerRuleEngineService.ts +23 -0
- package/Server/Services/LabelService.ts +50 -7
- package/Server/Services/MonitorLabelRuleEngineService.ts +20 -0
- package/Server/Services/MonitorOwnerRuleEngineService.ts +20 -0
- package/Server/Services/NetworkDeviceAutoImportRuleEngineService.ts +2 -0
- package/Server/Services/NetworkDeviceAutoImportRuleService.ts +93 -1
- package/Server/Services/NetworkDeviceLabelRuleEngineService.ts +26 -0
- package/Server/Services/NetworkDeviceOwnerRuleEngineService.ts +25 -0
- package/Server/Services/NetworkDeviceService.ts +2 -0
- package/Server/Services/NetworkSiteAssignmentRuleService.ts +90 -1
- package/Server/Services/NetworkSiteService.ts +242 -29
- package/Server/Services/NetworkSiteTypeService.ts +177 -77
- package/Server/Services/OnCallDutyPolicyLabelRuleEngineService.ts +20 -0
- package/Server/Services/OnCallDutyPolicyOwnerRuleEngineService.ts +20 -0
- package/Server/Services/OnCallDutyPolicyScheduleLabelRuleEngineService.ts +22 -0
- package/Server/Services/OnCallDutyPolicyScheduleOwnerRuleEngineService.ts +22 -0
- package/Server/Services/PodmanHostLabelRuleEngineService.ts +20 -0
- package/Server/Services/PodmanHostOwnerRuleEngineService.ts +20 -0
- package/Server/Services/ProjectCallSMSConfigService.ts +156 -7
- package/Server/Services/ProxmoxClusterLabelRuleEngineService.ts +25 -0
- package/Server/Services/ProxmoxClusterOwnerRuleEngineService.ts +25 -0
- package/Server/Services/RumApplicationLabelRuleEngineService.ts +22 -0
- package/Server/Services/RumApplicationOwnerRuleEngineService.ts +22 -0
- package/Server/Services/RunbookLabelRuleEngineService.ts +20 -0
- package/Server/Services/RunbookOwnerRuleEngineService.ts +20 -0
- package/Server/Services/RunbookRuleEngineService.ts +18 -1
- package/Server/Services/ScheduledMaintenanceLabelRuleEngineService.ts +62 -10
- package/Server/Services/ScheduledMaintenanceOwnerRuleEngineService.ts +62 -11
- package/Server/Services/ScheduledMaintenanceReminderRuleService.ts +48 -18
- package/Server/Services/ServerlessFunctionLabelRuleEngineService.ts +25 -0
- package/Server/Services/ServerlessFunctionOwnerRuleEngineService.ts +25 -0
- package/Server/Services/ServiceLabelRuleEngineService.ts +20 -0
- package/Server/Services/ServiceLevelObjectiveBurnRateRuleService.ts +675 -12
- package/Server/Services/ServiceLevelObjectiveService.ts +55 -13
- package/Server/Services/ServiceOwnerRuleEngineService.ts +20 -0
- package/Server/Services/StatusPageLabelRuleEngineService.ts +20 -0
- package/Server/Services/StatusPageMonitorRuleEngineService.ts +31 -2
- package/Server/Services/StatusPageMonitorRuleService.ts +34 -1
- package/Server/Services/StatusPageOwnerRuleEngineService.ts +20 -0
- package/Server/Services/UserService.ts +23 -50
- package/Server/Services/VMwareVCenterLabelRuleEngineService.ts +25 -0
- package/Server/Services/VMwareVCenterOwnerRuleEngineService.ts +25 -0
- package/Server/Services/WorkflowLabelRuleEngineService.ts +20 -0
- package/Server/Services/WorkflowOwnerRuleEngineService.ts +20 -0
- package/Server/Static/Brand/README.md +10 -5
- package/Server/Static/Brand/favicons/oneuptime-up-v1.svg +8 -0
- package/Server/Types/Database/QueryHelper.ts +88 -0
- package/Server/Utils/AI/Toolbox/SloTools.ts +19 -2
- package/Server/Utils/IncomingCallPhoneNumber.ts +29 -16
- package/Server/Utils/Profiling.ts +13 -1
- package/Server/Utils/Rules/MonitorRuleCriteriaCache.ts +38 -0
- package/Server/Utils/SessionReplay/SessionReplayReadService.ts +498 -0
- package/Server/Utils/Telemetry.ts +3 -1
- package/Server/Utils/VendorAssets.ts +3 -0
- package/Tests/App/Dashboard/AIInsightViewTriage.test.tsx +348 -0
- package/Tests/App/Dashboard/ArchiveResourceCard.test.tsx +476 -0
- package/Tests/App/Dashboard/CloudDocumentationCard.test.tsx +25 -0
- package/Tests/App/Dashboard/DashboardLazyPages.test.tsx +449 -24
- package/Tests/App/Dashboard/DashboardPersistentSideMenuLayouts.test.tsx +702 -0
- package/Tests/App/Dashboard/ExceptionsLandingRedirect.test.tsx +63 -0
- package/Tests/App/Dashboard/FeedOrdering.test.ts +150 -0
- package/Tests/App/Dashboard/GoogleSecOpsConnectionsErrors.test.tsx +279 -100
- package/Tests/App/Dashboard/InventoryItemSideMenu.test.tsx +155 -0
- package/Tests/App/Dashboard/InvestigationFeedRefresh.test.tsx +11 -0
- package/Tests/App/Dashboard/PasskeySettings.test.tsx +215 -71
- package/Tests/App/Dashboard/ResourceArchiveSettings.test.tsx +347 -0
- package/Tests/App/Dashboard/ResourceAuditLogsSideMenus.test.tsx +263 -0
- package/Tests/App/Dashboard/ResourceFeed.test.tsx +413 -17
- package/Tests/App/Dashboard/RumSessionReplaySideMenu.test.tsx +138 -0
- package/Tests/App/Dashboard/SloDashboardTemplateWidgets.test.tsx +940 -0
- package/Tests/App/Dashboard/TelemetryIngestionKeyEdit.test.tsx +378 -0
- package/Tests/App/Dashboard/TelemetryIngestionKeyForm.test.tsx +735 -0
- package/Tests/App/Dashboard/TwoFactorStatus.test.tsx +275 -108
- package/Tests/App/StatusPage/BulkAddStatusPageMonitorsModal.test.tsx +13 -3
- package/Tests/Models/AnalyticsModels/RumSessionReplayColumns.test.ts +127 -4
- package/Tests/Models/DatabaseModels/DomainRoleTierCoverage.test.ts +5 -4
- package/Tests/Models/DatabaseModels/IncomingCallPolicyPhoneNumber.test.ts +362 -0
- package/Tests/Models/DatabaseModels/RuleBaseModel.test.ts +69 -0
- package/Tests/Models/DatabaseModels/StaticRuleCriteriaInheritance.test.ts +181 -0
- package/Tests/Server/API/SessionReplayAPI.test.ts +1303 -145
- package/Tests/Server/API/UserTwoFactorSelfService.test.ts +407 -0
- package/Tests/Server/Infrastructure/Postgres/AddConfigurableRuleCriteriaMigration.test.ts +611 -0
- package/Tests/Server/Middleware/MultipartFormData.test.ts +61 -3
- package/Tests/Server/Middleware/TelemetryIngestionDisabled.test.ts +211 -0
- package/Tests/Server/Services/AlertIncidentRuleCriteriaEngineServices.test.ts +651 -0
- package/Tests/Server/Services/AutoRemediationRuleEngineService.test.ts +79 -0
- package/Tests/Server/Services/DatabaseServiceRelationOnlyRuleRollout.test.ts +330 -0
- package/Tests/Server/Services/DatabaseServiceRuleCriteriaValidation.test.ts +522 -0
- package/Tests/Server/Services/IncidentSlaRuleCriteriaCorrelation.test.ts +99 -0
- package/Tests/Server/Services/IncomingCallPolicyPhoneNumberService.test.ts +1540 -0
- package/Tests/Server/Services/NetworkDeviceRuleEngines.test.ts +179 -2
- package/Tests/Server/Services/NetworkSiteAssignmentRuleService.test.ts +170 -0
- package/Tests/Server/Services/NetworkSiteService.test.ts +559 -53
- package/Tests/Server/Services/NetworkSiteTypeService.test.ts +122 -55
- package/Tests/Server/Services/ReminderRuleCriteria.test.ts +173 -0
- package/Tests/Server/Services/ResourceRuleCriteriaEngineServices.test.ts +170 -0
- package/Tests/Server/Services/ScheduledMaintenanceRuleCriteriaCorrelation.test.ts +154 -0
- package/Tests/Server/Services/ServiceLevelObjectiveBurnRateRuleService.test.ts +2450 -470
- package/Tests/Server/Services/ServiceLevelObjectiveService.test.ts +464 -121
- package/Tests/Server/Services/StaticRuleCriteriaRuntimeCoverage.test.ts +281 -0
- package/Tests/Server/Services/StatusPageMonitorRuleEngineService.test.ts +132 -0
- package/Tests/Server/Services/StatusPageMonitorRuleHooks.test.ts +159 -14
- package/Tests/Server/Services/UserEmailChangePasswordResetExpiry.test.ts +6 -8
- package/Tests/Server/Services/UserTwoFactorAuthAdmin.test.ts +203 -34
- package/Tests/Server/Types/Database/QueryHelperJsonArrayObjects.test.ts +128 -0
- package/Tests/Server/Utils/AI/SloTools.test.ts +190 -1
- package/Tests/Server/Utils/AI/Toolbox/AIToolbox.test.ts +461 -0
- package/Tests/Server/Utils/AnalyticsDatabase/StatementGenerator.test.ts +25 -0
- package/Tests/Server/Utils/Billing/BillingFailureNoticeThrottle.test.ts +359 -0
- package/Tests/Server/Utils/CodeRepository/GitHub/GitHubWebhookEvents.test.ts +318 -0
- package/Tests/Server/Utils/CustomField/CustomFieldDefinitionMappingHooks.test.ts +220 -0
- package/Tests/Server/Utils/Dashboard/SloTemplatePublicDashboard.test.ts +1043 -0
- package/Tests/Server/Utils/Execute.test.ts +302 -0
- package/Tests/Server/Utils/GracefulShutdown.test.ts +565 -0
- package/Tests/Server/Utils/IncomingCallPhoneNumber.test.ts +36 -20
- package/Tests/Server/Utils/Monitor/SloTemplateMetricEmitterContract.test.ts +750 -0
- package/Tests/Server/Utils/ProductAnalytics.test.ts +404 -0
- package/Tests/Server/Utils/Profiling.test.ts +366 -0
- package/Tests/Server/Utils/Rules/MonitorRuleCriteriaCache.test.ts +99 -0
- package/Tests/Server/Utils/SessionReplay/SessionReplayReadServiceQueries.test.ts +558 -0
- package/Tests/Server/Utils/VendorAssets.test.ts +17 -0
- package/Tests/Types/Dashboard/DashboardTemplateEditorialInvariants.test.ts +659 -0
- package/Tests/Types/Dashboard/DashboardTemplateInvariants.test.ts +97 -0
- package/Tests/Types/Dashboard/SloDashboardTemplate.test.ts +1179 -0
- package/Tests/Types/Database/AccessControl/OwnedThrough.test.ts +136 -0
- package/Tests/Types/Rum/SessionReplayApiContracts.test.ts +180 -1
- package/Tests/UI/Components/AiInvestigationSettingsCard.test.tsx +13 -6
- package/Tests/UI/Components/Alert.test.tsx +532 -93
- package/Tests/UI/Components/Feed.test.tsx +241 -0
- package/Tests/UI/Components/Forms/BasicFormStepNavigation.test.tsx +368 -0
- package/Tests/UI/Components/Forms/FormSummary.test.tsx +454 -0
- package/Tests/UI/Components/Forms/ModelFormJsonColumns.test.tsx +290 -0
- package/Tests/UI/Components/Forms/ModelFormRuleCriteria.test.tsx +331 -0
- package/Tests/UI/Components/IconOpticalSize.test.tsx +79 -31
- package/Tests/UI/Components/ModelTable/ModelTableWrapContent.test.tsx +6 -6
- package/Tests/UI/Components/NavBar.test.tsx +91 -2
- package/Tests/UI/Components/PencilButton.test.tsx +211 -0
- package/Tests/UI/Components/RuleCriteria/RuleCriteriaBuilder.test.tsx +510 -0
- package/Tests/UI/Components/RuleCriteria/RuleCriteriaModelTable.test.tsx +350 -0
- package/Tests/UI/Components/TableSortAndMobileColumns.test.tsx +50 -0
- package/Tests/UI/Components/Telemetry/TelemetryRetentionConfigForm.test.tsx +329 -0
- package/Tests/UI/Components/useFeedItems.test.tsx +107 -0
- package/Tests/UI/Rum/ChunkLoader.test.ts +401 -0
- package/Tests/UI/Rum/RecordingHealthCard.test.tsx +1 -1
- package/Tests/UI/Rum/RecordingHealthStrip.test.tsx +7 -1
- package/Tests/UI/Rum/ReplayCorrelationPanel.test.tsx +2 -0
- package/Tests/UI/Rum/ReplayEngine.test.ts +1069 -5
- package/Tests/UI/Rum/ReplayHeader.test.tsx +579 -2
- package/Tests/UI/Rum/ReplayPlayerChrome.test.tsx +23 -5
- package/Tests/UI/Rum/ReplayRail.test.tsx +143 -1
- package/Tests/UI/Rum/ReplayRenderBudget.test.tsx +338 -0
- package/Tests/UI/Rum/ReplaySignals.test.ts +179 -0
- package/Tests/UI/Rum/ReplayStage.test.tsx +210 -3
- package/Tests/UI/Rum/ReplayTimeline.test.tsx +180 -1
- package/Tests/UI/Rum/ReplayUserSessionsMenu.test.tsx +405 -0
- package/Tests/UI/Rum/SessionReplayEmptyState.test.tsx +13 -16
- package/Tests/UI/Rum/SessionReplayFacets.test.tsx +199 -0
- package/Tests/UI/Rum/SessionReplaySearchBar.test.tsx +58 -21
- package/Tests/UI/Rum/SessionReplaySetupGuide.test.tsx +2 -0
- package/Tests/UI/Rum/SessionReplayTable.test.tsx +717 -4
- package/Tests/UI/Rum/SessionReplayUsersPage.test.tsx +435 -0
- package/Tests/UI/Rum/SessionReplayUsersTable.test.tsx +577 -0
- package/Tests/UI/Utils/Breadcrumb/fixtures/RealBreadcrumbTrails.ts +1 -1
- package/Tests/UI/Utils/Breadcrumb/fixtures/RealRoutePatterns.ts +1 -1
- package/Tests/UI/Utils/LabelRuleImportExport.test.ts +192 -0
- package/Tests/UI/Utils/Navigation.test.ts +30 -0
- package/Tests/Utils/Dashboard/SloTemplateVariableScoping.test.ts +880 -0
- package/Tests/Utils/LabelRuleImportExport.test.ts +158 -0
- package/Tests/Utils/NetworkDiscovery/AutoImportRuleMatcher.test.ts +93 -0
- package/Tests/Utils/NetworkSite/CidrMatchUtil.test.ts +138 -0
- package/Tests/Utils/NetworkSite/TypeHierarchyUtil.test.ts +174 -0
- package/Tests/Utils/Rules/RuleCriteriaMatcher.test.ts +1424 -0
- package/Tests/Utils/Rum/SessionIdentity.test.ts +72 -0
- package/Tests/Utils/Slo/SloBurnRateRuleState.test.ts +374 -28
- package/Tests/Utils/Telemetry/OriginAllowList.test.ts +118 -0
- package/Types/Dashboard/DashboardTemplates.ts +465 -0
- package/Types/Rules/RuleCriteria.ts +51 -0
- package/Types/Rules/RuleCriteriaFieldRegistry.ts +437 -0
- package/Types/Rum/SessionReplay.ts +75 -0
- package/Types/Rum/SessionReplayApi.ts +93 -0
- package/UI/Components/Alerts/Alert.tsx +102 -72
- package/UI/Components/Button/Button.tsx +4 -1
- package/UI/Components/Dropdown/Dropdown.tsx +2 -0
- package/UI/Components/Feed/Feed.tsx +15 -0
- package/UI/Components/Feed/useFeedItems.ts +227 -0
- package/UI/Components/Forms/BasicForm.tsx +42 -21
- package/UI/Components/Forms/ModelForm.tsx +80 -1
- package/UI/Components/Icon/Icon.tsx +3 -35
- package/UI/Components/ModelTable/ModelTable.tsx +19 -0
- package/UI/Components/Navbar/NavBar.tsx +1 -0
- package/UI/Components/RuleCriteria/RuleCriteriaBuilder.tsx +735 -0
- package/UI/Components/RuleCriteria/RuleCriteriaModelForm.tsx +209 -0
- package/UI/Components/RuleCriteria/RuleCriteriaModelTable.tsx +205 -0
- package/UI/Components/RuleCriteria/RuleCriteriaSummary.tsx +123 -0
- package/UI/Components/Table/Table.tsx +3 -0
- package/UI/Components/Table/TableBody.tsx +3 -0
- package/UI/Components/Table/TableRow.tsx +8 -2
- package/UI/Components/Telemetry/TelemetryRetentionConfigForm.tsx +14 -2
- package/UI/Styles/Theme.css +1 -0
- package/UI/Utils/LabelRuleImportExport.ts +114 -6
- package/UI/Utils/Navigation.ts +1 -2
- package/UI/esbuild-config.js +46 -0
- package/Utils/Faker.ts +93 -6
- package/Utils/LabelRuleImportExport.ts +295 -2
- package/Utils/NetworkDiscovery/AutoImportRuleMatcher.ts +108 -8
- package/Utils/NetworkSite/CidrMatchUtil.ts +102 -0
- package/Utils/NetworkSite/TypeHierarchyUtil.ts +152 -2
- package/Utils/Rules/RuleCriteriaMatcher.ts +931 -0
- package/Utils/Rum/SessionIdentity.ts +16 -0
- package/Utils/Slo/SloBurnRateRuleState.ts +87 -33
- package/Utils/Telemetry/OriginAllowList.ts +74 -0
- package/build/dist/Models/AnalyticsModels/RumSession.js +32 -0
- package/build/dist/Models/AnalyticsModels/RumSession.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertEpisodeLabelRule.js +2 -2
- package/build/dist/Models/DatabaseModels/AlertEpisodeLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertEpisodeOnCallRule.js +2 -2
- package/build/dist/Models/DatabaseModels/AlertEpisodeOnCallRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertEpisodeOwnerRule.js +2 -2
- package/build/dist/Models/DatabaseModels/AlertEpisodeOwnerRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertEpisodePrivacyRule.js +2 -2
- package/build/dist/Models/DatabaseModels/AlertEpisodePrivacyRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertGroupingRule.js +2 -2
- package/build/dist/Models/DatabaseModels/AlertGroupingRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertLabelRule.js +2 -2
- package/build/dist/Models/DatabaseModels/AlertLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertOnCallRule.js +2 -2
- package/build/dist/Models/DatabaseModels/AlertOnCallRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertOwnerRule.js +2 -2
- package/build/dist/Models/DatabaseModels/AlertOwnerRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertPrivacyRule.js +2 -2
- package/build/dist/Models/DatabaseModels/AlertPrivacyRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertReminderRule.js +6 -5
- package/build/dist/Models/DatabaseModels/AlertReminderRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AutoRemediationRule.js +2 -2
- package/build/dist/Models/DatabaseModels/AutoRemediationRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/CephClusterLabelRule.js +2 -2
- package/build/dist/Models/DatabaseModels/CephClusterLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/CephClusterOwnerRule.js +2 -2
- package/build/dist/Models/DatabaseModels/CephClusterOwnerRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/CloudResourceLabelRule.js +2 -2
- package/build/dist/Models/DatabaseModels/CloudResourceLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/CloudResourceOwnerRule.js +2 -2
- package/build/dist/Models/DatabaseModels/CloudResourceOwnerRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/DashboardLabelRule.js +2 -2
- package/build/dist/Models/DatabaseModels/DashboardLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/DashboardOwnerRule.js +2 -2
- package/build/dist/Models/DatabaseModels/DashboardOwnerRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/DatabaseBaseModel/RelationOnlyRuleBaseModel.js +12 -0
- package/build/dist/Models/DatabaseModels/DatabaseBaseModel/RelationOnlyRuleBaseModel.js.map +1 -0
- package/build/dist/Models/DatabaseModels/DatabaseBaseModel/RuleBaseModel.js +50 -0
- package/build/dist/Models/DatabaseModels/DatabaseBaseModel/RuleBaseModel.js.map +1 -0
- package/build/dist/Models/DatabaseModels/DockerHostLabelRule.js +2 -2
- package/build/dist/Models/DatabaseModels/DockerHostLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/DockerHostOwnerRule.js +2 -2
- package/build/dist/Models/DatabaseModels/DockerHostOwnerRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/DockerSwarmClusterLabelRule.js +2 -2
- package/build/dist/Models/DatabaseModels/DockerSwarmClusterLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/DockerSwarmClusterOwnerRule.js +2 -2
- package/build/dist/Models/DatabaseModels/DockerSwarmClusterOwnerRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/HostLabelRule.js +2 -2
- package/build/dist/Models/DatabaseModels/HostLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/HostOwnerRule.js +2 -2
- package/build/dist/Models/DatabaseModels/HostOwnerRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentEpisodeLabelRule.js +2 -2
- package/build/dist/Models/DatabaseModels/IncidentEpisodeLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentEpisodeOnCallRule.js +2 -2
- package/build/dist/Models/DatabaseModels/IncidentEpisodeOnCallRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentEpisodeOwnerRule.js +2 -2
- package/build/dist/Models/DatabaseModels/IncidentEpisodeOwnerRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentEpisodePrivacyRule.js +2 -2
- package/build/dist/Models/DatabaseModels/IncidentEpisodePrivacyRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentGroupingRule.js +2 -2
- package/build/dist/Models/DatabaseModels/IncidentGroupingRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentLabelRule.js +2 -2
- package/build/dist/Models/DatabaseModels/IncidentLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentOnCallRule.js +2 -2
- package/build/dist/Models/DatabaseModels/IncidentOnCallRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentOwnerRule.js +2 -2
- package/build/dist/Models/DatabaseModels/IncidentOwnerRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentPrivacyRule.js +2 -2
- package/build/dist/Models/DatabaseModels/IncidentPrivacyRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentReminderRule.js +6 -5
- package/build/dist/Models/DatabaseModels/IncidentReminderRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentSlaRule.js +2 -2
- package/build/dist/Models/DatabaseModels/IncidentSlaRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncomingCallPolicy.js +3 -4
- package/build/dist/Models/DatabaseModels/IncomingCallPolicy.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncomingCallPolicyLabelRule.js +2 -2
- package/build/dist/Models/DatabaseModels/IncomingCallPolicyLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncomingCallPolicyOwnerRule.js +2 -2
- package/build/dist/Models/DatabaseModels/IncomingCallPolicyOwnerRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncomingCallPolicyPhoneNumber.js +277 -0
- package/build/dist/Models/DatabaseModels/IncomingCallPolicyPhoneNumber.js.map +1 -0
- package/build/dist/Models/DatabaseModels/Index.js +2 -0
- package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IoTFleetLabelRule.js +2 -2
- package/build/dist/Models/DatabaseModels/IoTFleetLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IoTFleetOwnerRule.js +2 -2
- package/build/dist/Models/DatabaseModels/IoTFleetOwnerRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/KubernetesClusterLabelRule.js +2 -2
- package/build/dist/Models/DatabaseModels/KubernetesClusterLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/KubernetesClusterOwnerRule.js +2 -2
- package/build/dist/Models/DatabaseModels/KubernetesClusterOwnerRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/MonitorLabelRule.js +2 -2
- package/build/dist/Models/DatabaseModels/MonitorLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/MonitorOwnerRule.js +2 -2
- package/build/dist/Models/DatabaseModels/MonitorOwnerRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/NetworkDeviceAutoImportRule.js +2 -2
- package/build/dist/Models/DatabaseModels/NetworkDeviceAutoImportRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/NetworkDeviceLabelRule.js +2 -2
- package/build/dist/Models/DatabaseModels/NetworkDeviceLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/NetworkDeviceOwnerRule.js +2 -2
- package/build/dist/Models/DatabaseModels/NetworkDeviceOwnerRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/NetworkSiteAssignmentRule.js +2 -2
- package/build/dist/Models/DatabaseModels/NetworkSiteAssignmentRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyLabelRule.js +2 -2
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyOwnerRule.js +2 -2
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyOwnerRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyScheduleLabelRule.js +2 -2
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyScheduleLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyScheduleOwnerRule.js +2 -2
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyScheduleOwnerRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/PodmanHostLabelRule.js +2 -2
- package/build/dist/Models/DatabaseModels/PodmanHostLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/PodmanHostOwnerRule.js +2 -2
- package/build/dist/Models/DatabaseModels/PodmanHostOwnerRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ProxmoxClusterLabelRule.js +2 -2
- package/build/dist/Models/DatabaseModels/ProxmoxClusterLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ProxmoxClusterOwnerRule.js +2 -2
- package/build/dist/Models/DatabaseModels/ProxmoxClusterOwnerRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/RumApplicationLabelRule.js +2 -2
- package/build/dist/Models/DatabaseModels/RumApplicationLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/RumApplicationOwnerRule.js +2 -2
- package/build/dist/Models/DatabaseModels/RumApplicationOwnerRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/RunbookLabelRule.js +2 -2
- package/build/dist/Models/DatabaseModels/RunbookLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/RunbookOwnerRule.js +2 -2
- package/build/dist/Models/DatabaseModels/RunbookOwnerRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/RunbookRule.js +2 -2
- package/build/dist/Models/DatabaseModels/RunbookRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceLabelRule.js +2 -2
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceOwnerRule.js +2 -2
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceOwnerRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceReminderRule.js +6 -5
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceReminderRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ServerlessFunctionLabelRule.js +2 -2
- package/build/dist/Models/DatabaseModels/ServerlessFunctionLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ServerlessFunctionOwnerRule.js +2 -2
- package/build/dist/Models/DatabaseModels/ServerlessFunctionOwnerRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ServiceLabelRule.js +2 -2
- package/build/dist/Models/DatabaseModels/ServiceLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ServiceLevelObjectiveBurnRateRule.js +281 -4
- package/build/dist/Models/DatabaseModels/ServiceLevelObjectiveBurnRateRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ServiceOwnerRule.js +2 -2
- package/build/dist/Models/DatabaseModels/ServiceOwnerRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPageLabelRule.js +2 -2
- package/build/dist/Models/DatabaseModels/StatusPageLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPageMonitorRule.js +2 -2
- package/build/dist/Models/DatabaseModels/StatusPageMonitorRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPageOwnerRule.js +2 -2
- package/build/dist/Models/DatabaseModels/StatusPageOwnerRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/VMwareVCenterLabelRule.js +2 -2
- package/build/dist/Models/DatabaseModels/VMwareVCenterLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/VMwareVCenterOwnerRule.js +2 -2
- package/build/dist/Models/DatabaseModels/VMwareVCenterOwnerRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/WorkflowLabelRule.js +2 -2
- package/build/dist/Models/DatabaseModels/WorkflowLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/WorkflowOwnerRule.js +2 -2
- package/build/dist/Models/DatabaseModels/WorkflowOwnerRule.js.map +1 -1
- package/build/dist/Server/API/TelemetryAPI.js +211 -4
- package/build/dist/Server/API/TelemetryAPI.js.map +1 -1
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1792400000000-AddSloBurnRateRuleIncidents.js +60 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1792400000000-AddSloBurnRateRuleIncidents.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1792500000000-AddConfigurableRuleCriteria.js +301 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1792500000000-AddConfigurableRuleCriteria.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1792600000000-AddIncomingCallPolicyPhoneNumbers.js +30 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1792600000000-AddIncomingCallPolicyPhoneNumbers.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +6 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
- package/build/dist/Server/Middleware/MultipartFormData.js +38 -21
- package/build/dist/Server/Middleware/MultipartFormData.js.map +1 -1
- package/build/dist/Server/Services/AlertEpisodeLabelRuleEngineService.js +17 -0
- package/build/dist/Server/Services/AlertEpisodeLabelRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/AlertEpisodeOnCallRuleEngineService.js +17 -0
- package/build/dist/Server/Services/AlertEpisodeOnCallRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/AlertEpisodeOwnerRuleEngineService.js +17 -0
- package/build/dist/Server/Services/AlertEpisodeOwnerRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/AlertEpisodePrivacyRuleEngineService.js +17 -0
- package/build/dist/Server/Services/AlertEpisodePrivacyRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/AlertGroupingEngineService.js +21 -0
- package/build/dist/Server/Services/AlertGroupingEngineService.js.map +1 -1
- package/build/dist/Server/Services/AlertLabelRuleEngineService.js +21 -0
- package/build/dist/Server/Services/AlertLabelRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/AlertOnCallRuleEngineService.js +21 -0
- package/build/dist/Server/Services/AlertOnCallRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/AlertOwnerRuleEngineService.js +21 -0
- package/build/dist/Server/Services/AlertOwnerRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/AlertPrivacyRuleEngineService.js +21 -0
- package/build/dist/Server/Services/AlertPrivacyRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/AlertReminderRuleService.js +44 -26
- package/build/dist/Server/Services/AlertReminderRuleService.js.map +1 -1
- package/build/dist/Server/Services/AutoRemediationRuleEngineService.js +54 -11
- package/build/dist/Server/Services/AutoRemediationRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/CephClusterLabelRuleEngineService.js +16 -0
- package/build/dist/Server/Services/CephClusterLabelRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/CephClusterOwnerRuleEngineService.js +16 -0
- package/build/dist/Server/Services/CephClusterOwnerRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/CloudResourceLabelRuleEngineService.js +16 -0
- package/build/dist/Server/Services/CloudResourceLabelRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/CloudResourceOwnerRuleEngineService.js +16 -0
- package/build/dist/Server/Services/CloudResourceOwnerRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/DashboardLabelRuleEngineService.js +16 -0
- package/build/dist/Server/Services/DashboardLabelRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/DashboardOwnerRuleEngineService.js +16 -0
- package/build/dist/Server/Services/DashboardOwnerRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/DatabaseService.js +235 -10
- package/build/dist/Server/Services/DatabaseService.js.map +1 -1
- package/build/dist/Server/Services/DockerHostLabelRuleEngineService.js +16 -0
- package/build/dist/Server/Services/DockerHostLabelRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/DockerHostOwnerRuleEngineService.js +16 -0
- package/build/dist/Server/Services/DockerHostOwnerRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/DockerSwarmClusterLabelRuleEngineService.js +16 -0
- package/build/dist/Server/Services/DockerSwarmClusterLabelRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/DockerSwarmClusterOwnerRuleEngineService.js +16 -0
- package/build/dist/Server/Services/DockerSwarmClusterOwnerRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/HostLabelRuleEngineService.js +12 -0
- package/build/dist/Server/Services/HostLabelRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/HostOwnerRuleEngineService.js +12 -0
- package/build/dist/Server/Services/HostOwnerRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/IncidentEpisodeLabelRuleEngineService.js +17 -0
- package/build/dist/Server/Services/IncidentEpisodeLabelRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/IncidentEpisodeOnCallRuleEngineService.js +17 -0
- package/build/dist/Server/Services/IncidentEpisodeOnCallRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/IncidentEpisodeOwnerRuleEngineService.js +17 -0
- package/build/dist/Server/Services/IncidentEpisodeOwnerRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/IncidentEpisodePrivacyRuleEngineService.js +17 -0
- package/build/dist/Server/Services/IncidentEpisodePrivacyRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/IncidentGroupingEngineService.js +39 -13
- package/build/dist/Server/Services/IncidentGroupingEngineService.js.map +1 -1
- package/build/dist/Server/Services/IncidentLabelRuleEngineService.js +39 -9
- package/build/dist/Server/Services/IncidentLabelRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/IncidentOnCallRuleEngineService.js +39 -10
- package/build/dist/Server/Services/IncidentOnCallRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/IncidentOwnerRuleEngineService.js +39 -10
- package/build/dist/Server/Services/IncidentOwnerRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/IncidentPrivacyRuleEngineService.js +39 -10
- package/build/dist/Server/Services/IncidentPrivacyRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/IncidentReminderRuleService.js +44 -26
- package/build/dist/Server/Services/IncidentReminderRuleService.js.map +1 -1
- package/build/dist/Server/Services/IncidentSlaRuleService.js +33 -12
- package/build/dist/Server/Services/IncidentSlaRuleService.js.map +1 -1
- package/build/dist/Server/Services/IncomingCallPolicyLabelRuleEngineService.js +16 -0
- package/build/dist/Server/Services/IncomingCallPolicyLabelRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/IncomingCallPolicyOwnerRuleEngineService.js +16 -0
- package/build/dist/Server/Services/IncomingCallPolicyOwnerRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/IncomingCallPolicyPhoneNumberService.js +127 -0
- package/build/dist/Server/Services/IncomingCallPolicyPhoneNumberService.js.map +1 -0
- package/build/dist/Server/Services/IncomingCallPolicyService.js +187 -4
- package/build/dist/Server/Services/IncomingCallPolicyService.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/IoTFleetLabelRuleEngineService.js +16 -0
- package/build/dist/Server/Services/IoTFleetLabelRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/IoTFleetOwnerRuleEngineService.js +16 -0
- package/build/dist/Server/Services/IoTFleetOwnerRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/KubernetesClusterLabelRuleEngineService.js +16 -0
- package/build/dist/Server/Services/KubernetesClusterLabelRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/KubernetesClusterOwnerRuleEngineService.js +16 -0
- package/build/dist/Server/Services/KubernetesClusterOwnerRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/LabelService.js +39 -7
- package/build/dist/Server/Services/LabelService.js.map +1 -1
- package/build/dist/Server/Services/MonitorLabelRuleEngineService.js +16 -0
- package/build/dist/Server/Services/MonitorLabelRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/MonitorOwnerRuleEngineService.js +16 -0
- package/build/dist/Server/Services/MonitorOwnerRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/NetworkDeviceAutoImportRuleEngineService.js +2 -0
- package/build/dist/Server/Services/NetworkDeviceAutoImportRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/NetworkDeviceAutoImportRuleService.js +57 -1
- package/build/dist/Server/Services/NetworkDeviceAutoImportRuleService.js.map +1 -1
- package/build/dist/Server/Services/NetworkDeviceLabelRuleEngineService.js +17 -0
- package/build/dist/Server/Services/NetworkDeviceLabelRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/NetworkDeviceOwnerRuleEngineService.js +16 -0
- package/build/dist/Server/Services/NetworkDeviceOwnerRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/NetworkDeviceService.js +2 -0
- package/build/dist/Server/Services/NetworkDeviceService.js.map +1 -1
- package/build/dist/Server/Services/NetworkSiteAssignmentRuleService.js +56 -1
- package/build/dist/Server/Services/NetworkSiteAssignmentRuleService.js.map +1 -1
- package/build/dist/Server/Services/NetworkSiteService.js +187 -22
- package/build/dist/Server/Services/NetworkSiteService.js.map +1 -1
- package/build/dist/Server/Services/NetworkSiteTypeService.js +126 -51
- package/build/dist/Server/Services/NetworkSiteTypeService.js.map +1 -1
- package/build/dist/Server/Services/OnCallDutyPolicyLabelRuleEngineService.js +16 -0
- package/build/dist/Server/Services/OnCallDutyPolicyLabelRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/OnCallDutyPolicyOwnerRuleEngineService.js +16 -0
- package/build/dist/Server/Services/OnCallDutyPolicyOwnerRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/OnCallDutyPolicyScheduleLabelRuleEngineService.js +16 -0
- package/build/dist/Server/Services/OnCallDutyPolicyScheduleLabelRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/OnCallDutyPolicyScheduleOwnerRuleEngineService.js +16 -0
- package/build/dist/Server/Services/OnCallDutyPolicyScheduleOwnerRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/PodmanHostLabelRuleEngineService.js +16 -0
- package/build/dist/Server/Services/PodmanHostLabelRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/PodmanHostOwnerRuleEngineService.js +16 -0
- package/build/dist/Server/Services/PodmanHostOwnerRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/ProjectCallSMSConfigService.js +115 -6
- package/build/dist/Server/Services/ProjectCallSMSConfigService.js.map +1 -1
- package/build/dist/Server/Services/ProxmoxClusterLabelRuleEngineService.js +16 -0
- package/build/dist/Server/Services/ProxmoxClusterLabelRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/ProxmoxClusterOwnerRuleEngineService.js +16 -0
- package/build/dist/Server/Services/ProxmoxClusterOwnerRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/RumApplicationLabelRuleEngineService.js +16 -0
- package/build/dist/Server/Services/RumApplicationLabelRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/RumApplicationOwnerRuleEngineService.js +16 -0
- package/build/dist/Server/Services/RumApplicationOwnerRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/RunbookLabelRuleEngineService.js +16 -0
- package/build/dist/Server/Services/RunbookLabelRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/RunbookOwnerRuleEngineService.js +16 -0
- package/build/dist/Server/Services/RunbookOwnerRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/RunbookRuleEngineService.js +12 -0
- package/build/dist/Server/Services/RunbookRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/ScheduledMaintenanceLabelRuleEngineService.js +38 -9
- package/build/dist/Server/Services/ScheduledMaintenanceLabelRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/ScheduledMaintenanceOwnerRuleEngineService.js +38 -10
- package/build/dist/Server/Services/ScheduledMaintenanceOwnerRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/ScheduledMaintenanceReminderRuleService.js +32 -14
- package/build/dist/Server/Services/ScheduledMaintenanceReminderRuleService.js.map +1 -1
- package/build/dist/Server/Services/ServerlessFunctionLabelRuleEngineService.js +16 -0
- package/build/dist/Server/Services/ServerlessFunctionLabelRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/ServerlessFunctionOwnerRuleEngineService.js +16 -0
- package/build/dist/Server/Services/ServerlessFunctionOwnerRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/ServiceLabelRuleEngineService.js +16 -0
- package/build/dist/Server/Services/ServiceLabelRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/ServiceLevelObjectiveBurnRateRuleService.js +554 -12
- package/build/dist/Server/Services/ServiceLevelObjectiveBurnRateRuleService.js.map +1 -1
- package/build/dist/Server/Services/ServiceLevelObjectiveService.js +50 -14
- package/build/dist/Server/Services/ServiceLevelObjectiveService.js.map +1 -1
- package/build/dist/Server/Services/ServiceOwnerRuleEngineService.js +16 -0
- package/build/dist/Server/Services/ServiceOwnerRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/StatusPageLabelRuleEngineService.js +16 -0
- package/build/dist/Server/Services/StatusPageLabelRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/StatusPageMonitorRuleEngineService.js +25 -2
- package/build/dist/Server/Services/StatusPageMonitorRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/StatusPageMonitorRuleService.js +19 -1
- package/build/dist/Server/Services/StatusPageMonitorRuleService.js.map +1 -1
- package/build/dist/Server/Services/StatusPageOwnerRuleEngineService.js +16 -0
- package/build/dist/Server/Services/StatusPageOwnerRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/UserService.js +14 -49
- package/build/dist/Server/Services/UserService.js.map +1 -1
- package/build/dist/Server/Services/VMwareVCenterLabelRuleEngineService.js +16 -0
- package/build/dist/Server/Services/VMwareVCenterLabelRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/VMwareVCenterOwnerRuleEngineService.js +16 -0
- package/build/dist/Server/Services/VMwareVCenterOwnerRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/WorkflowLabelRuleEngineService.js +16 -0
- package/build/dist/Server/Services/WorkflowLabelRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/WorkflowOwnerRuleEngineService.js +16 -0
- package/build/dist/Server/Services/WorkflowOwnerRuleEngineService.js.map +1 -1
- package/build/dist/Server/Types/Database/QueryHelper.js +67 -0
- package/build/dist/Server/Types/Database/QueryHelper.js.map +1 -1
- package/build/dist/Server/Utils/AI/Toolbox/SloTools.js +21 -4
- package/build/dist/Server/Utils/AI/Toolbox/SloTools.js.map +1 -1
- package/build/dist/Server/Utils/IncomingCallPhoneNumber.js +9 -3
- package/build/dist/Server/Utils/IncomingCallPhoneNumber.js.map +1 -1
- package/build/dist/Server/Utils/Profiling.js +10 -1
- package/build/dist/Server/Utils/Profiling.js.map +1 -1
- package/build/dist/Server/Utils/Rules/MonitorRuleCriteriaCache.js +30 -0
- package/build/dist/Server/Utils/Rules/MonitorRuleCriteriaCache.js.map +1 -0
- package/build/dist/Server/Utils/SessionReplay/SessionReplayReadService.js +344 -0
- package/build/dist/Server/Utils/SessionReplay/SessionReplayReadService.js.map +1 -1
- package/build/dist/Server/Utils/Telemetry.js +1 -1
- package/build/dist/Server/Utils/Telemetry.js.map +1 -1
- package/build/dist/Server/Utils/VendorAssets.js +2 -0
- package/build/dist/Server/Utils/VendorAssets.js.map +1 -1
- package/build/dist/Types/Dashboard/DashboardTemplates.js +425 -0
- package/build/dist/Types/Dashboard/DashboardTemplates.js.map +1 -1
- package/build/dist/Types/Rules/RuleCriteria.js +18 -0
- package/build/dist/Types/Rules/RuleCriteria.js.map +1 -0
- package/build/dist/Types/Rules/RuleCriteriaFieldRegistry.js +426 -0
- package/build/dist/Types/Rules/RuleCriteriaFieldRegistry.js.map +1 -0
- package/build/dist/Types/Rum/SessionReplay.js +64 -0
- package/build/dist/Types/Rum/SessionReplay.js.map +1 -1
- package/build/dist/Types/Rum/SessionReplayApi.js.map +1 -1
- package/build/dist/UI/Components/Alerts/Alert.js +63 -41
- package/build/dist/UI/Components/Alerts/Alert.js.map +1 -1
- package/build/dist/UI/Components/Button/Button.js +3 -1
- package/build/dist/UI/Components/Button/Button.js.map +1 -1
- package/build/dist/UI/Components/Dropdown/Dropdown.js +1 -1
- package/build/dist/UI/Components/Dropdown/Dropdown.js.map +1 -1
- package/build/dist/UI/Components/Feed/Feed.js +4 -1
- package/build/dist/UI/Components/Feed/Feed.js.map +1 -1
- package/build/dist/UI/Components/Feed/useFeedItems.js +137 -0
- package/build/dist/UI/Components/Feed/useFeedItems.js.map +1 -0
- package/build/dist/UI/Components/Forms/BasicForm.js +38 -19
- package/build/dist/UI/Components/Forms/BasicForm.js.map +1 -1
- package/build/dist/UI/Components/Forms/ModelForm.js +65 -1
- package/build/dist/UI/Components/Forms/ModelForm.js.map +1 -1
- package/build/dist/UI/Components/Icon/Icon.js +3 -35
- package/build/dist/UI/Components/Icon/Icon.js.map +1 -1
- package/build/dist/UI/Components/ModelTable/ModelTable.js +12 -1
- package/build/dist/UI/Components/ModelTable/ModelTable.js.map +1 -1
- package/build/dist/UI/Components/Navbar/NavBar.js +1 -0
- package/build/dist/UI/Components/Navbar/NavBar.js.map +1 -1
- package/build/dist/UI/Components/RuleCriteria/RuleCriteriaBuilder.js +383 -0
- package/build/dist/UI/Components/RuleCriteria/RuleCriteriaBuilder.js.map +1 -0
- package/build/dist/UI/Components/RuleCriteria/RuleCriteriaModelForm.js +124 -0
- package/build/dist/UI/Components/RuleCriteria/RuleCriteriaModelForm.js.map +1 -0
- package/build/dist/UI/Components/RuleCriteria/RuleCriteriaModelTable.js +126 -0
- package/build/dist/UI/Components/RuleCriteria/RuleCriteriaModelTable.js.map +1 -0
- package/build/dist/UI/Components/RuleCriteria/RuleCriteriaSummary.js +63 -0
- package/build/dist/UI/Components/RuleCriteria/RuleCriteriaSummary.js.map +1 -0
- package/build/dist/UI/Components/Table/Table.js +1 -1
- package/build/dist/UI/Components/Table/Table.js.map +1 -1
- package/build/dist/UI/Components/Table/TableBody.js +4 -2
- package/build/dist/UI/Components/Table/TableBody.js.map +1 -1
- package/build/dist/UI/Components/Table/TableRow.js +3 -2
- package/build/dist/UI/Components/Table/TableRow.js.map +1 -1
- package/build/dist/UI/Components/Telemetry/TelemetryRetentionConfigForm.js +14 -2
- package/build/dist/UI/Components/Telemetry/TelemetryRetentionConfigForm.js.map +1 -1
- package/build/dist/UI/Utils/LabelRuleImportExport.js +81 -5
- package/build/dist/UI/Utils/LabelRuleImportExport.js.map +1 -1
- package/build/dist/UI/Utils/Navigation.js.map +1 -1
- package/build/dist/Utils/Faker.js +76 -6
- package/build/dist/Utils/Faker.js.map +1 -1
- package/build/dist/Utils/LabelRuleImportExport.js +157 -3
- package/build/dist/Utils/LabelRuleImportExport.js.map +1 -1
- package/build/dist/Utils/NetworkDiscovery/AutoImportRuleMatcher.js +81 -5
- package/build/dist/Utils/NetworkDiscovery/AutoImportRuleMatcher.js.map +1 -1
- package/build/dist/Utils/NetworkSite/CidrMatchUtil.js +77 -0
- package/build/dist/Utils/NetworkSite/CidrMatchUtil.js.map +1 -1
- package/build/dist/Utils/NetworkSite/TypeHierarchyUtil.js +109 -2
- package/build/dist/Utils/NetworkSite/TypeHierarchyUtil.js.map +1 -1
- package/build/dist/Utils/Rules/RuleCriteriaMatcher.js +526 -0
- package/build/dist/Utils/Rules/RuleCriteriaMatcher.js.map +1 -0
- package/build/dist/Utils/Rum/SessionIdentity.js +13 -1
- package/build/dist/Utils/Rum/SessionIdentity.js.map +1 -1
- package/build/dist/Utils/Slo/SloBurnRateRuleState.js +28 -15
- package/build/dist/Utils/Slo/SloBurnRateRuleState.js.map +1 -1
- package/build/dist/Utils/Telemetry/OriginAllowList.js +61 -0
- package/build/dist/Utils/Telemetry/OriginAllowList.js.map +1 -1
- package/package.json +20 -20
|
@@ -746,6 +746,39 @@ export default class RumSession extends AnalyticsBaseModel {
|
|
|
746
746
|
accessControl: identityAccessControl,
|
|
747
747
|
});
|
|
748
748
|
|
|
749
|
+
/*
|
|
750
|
+
* The recorder's per-browser anonymous visitor id: 32 lowercase hex
|
|
751
|
+
* characters (SESSION_REPLAY_VISITOR_ID_PATTERN) minted client-side
|
|
752
|
+
* once per browser profile and repeated on every meta-bearing chunk. A
|
|
753
|
+
* session id lives for one visit, so this is the only thing two visits
|
|
754
|
+
* from the same browser share - it is what lets the list group an
|
|
755
|
+
* application's sessions by visitor when its pages never call
|
|
756
|
+
* identify(). It is random and carries no identity: nothing the host
|
|
757
|
+
* page supplied, nothing that resolves to a person, so it sits under
|
|
758
|
+
* the ORDINARY session ACL beside sessionId rather than the narrow
|
|
759
|
+
* identity ACL the label and traits use. "" for a session from a
|
|
760
|
+
* recorder that predates it. Bloom-indexed because "other sessions
|
|
761
|
+
* from this visitor" is an equality lookup across the whole
|
|
762
|
+
* application, exactly like the identified-user key.
|
|
763
|
+
*/
|
|
764
|
+
const visitorIdColumn: AnalyticsTableColumn = new AnalyticsTableColumn({
|
|
765
|
+
key: "visitorId",
|
|
766
|
+
title: "Visitor ID",
|
|
767
|
+
description:
|
|
768
|
+
"Recorder-minted per-browser anonymous visitor id (32 lowercase hex). Random, not an identity; empty for sessions from a recorder that predates it.",
|
|
769
|
+
required: true,
|
|
770
|
+
defaultValue: "",
|
|
771
|
+
type: TableColumnType.Text,
|
|
772
|
+
codec: { codec: "ZSTD", level: 1 },
|
|
773
|
+
skipIndex: {
|
|
774
|
+
name: "idx_visitor_id",
|
|
775
|
+
type: SkipIndexType.BloomFilter,
|
|
776
|
+
params: [0.01],
|
|
777
|
+
granularity: 1,
|
|
778
|
+
},
|
|
779
|
+
accessControl: sessionAccessControl,
|
|
780
|
+
});
|
|
781
|
+
|
|
749
782
|
/*
|
|
750
783
|
* Per-session tags from setTags()/addTag(): build id, experiment arm,
|
|
751
784
|
* customer tier. They describe the SESSION, not the person, so they
|
|
@@ -1015,6 +1048,7 @@ export default class RumSession extends AnalyticsBaseModel {
|
|
|
1015
1048
|
identifiedUserKeyColumn,
|
|
1016
1049
|
identifiedUserLabelColumn,
|
|
1017
1050
|
identifiedUserTraitsColumn,
|
|
1051
|
+
visitorIdColumn,
|
|
1018
1052
|
tagsColumn,
|
|
1019
1053
|
...correlationArrayColumns,
|
|
1020
1054
|
fidelityNoticesColumn,
|
|
@@ -2,7 +2,7 @@ import AlertSeverity from "./AlertSeverity";
|
|
|
2
2
|
import Label from "./Label";
|
|
3
3
|
import Project from "./Project";
|
|
4
4
|
import User from "./User";
|
|
5
|
-
import
|
|
5
|
+
import RuleBaseModel from "./DatabaseBaseModel/RuleBaseModel";
|
|
6
6
|
import Route from "../../Types/API/Route";
|
|
7
7
|
import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
|
|
8
8
|
import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
|
|
@@ -75,7 +75,7 @@ import {
|
|
|
75
75
|
tableDescription:
|
|
76
76
|
"Configure rules for automatically attaching labels to alert episodes when matching episodes are created",
|
|
77
77
|
})
|
|
78
|
-
export default class AlertEpisodeLabelRule extends
|
|
78
|
+
export default class AlertEpisodeLabelRule extends RuleBaseModel {
|
|
79
79
|
@ColumnAccessControl({
|
|
80
80
|
create: [
|
|
81
81
|
Permission.ProjectOwner,
|
|
@@ -3,7 +3,7 @@ import Label from "./Label";
|
|
|
3
3
|
import OnCallDutyPolicy from "./OnCallDutyPolicy";
|
|
4
4
|
import Project from "./Project";
|
|
5
5
|
import User from "./User";
|
|
6
|
-
import
|
|
6
|
+
import RuleBaseModel from "./DatabaseBaseModel/RuleBaseModel";
|
|
7
7
|
import Route from "../../Types/API/Route";
|
|
8
8
|
import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
|
|
9
9
|
import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
|
|
@@ -76,7 +76,7 @@ import {
|
|
|
76
76
|
tableDescription:
|
|
77
77
|
"Configure rules for automatically executing on-call duty policies when matching alert episodes are created",
|
|
78
78
|
})
|
|
79
|
-
export default class AlertEpisodeOnCallRule extends
|
|
79
|
+
export default class AlertEpisodeOnCallRule extends RuleBaseModel {
|
|
80
80
|
@ColumnAccessControl({
|
|
81
81
|
create: [
|
|
82
82
|
Permission.ProjectOwner,
|
|
@@ -3,7 +3,7 @@ import Label from "./Label";
|
|
|
3
3
|
import Project from "./Project";
|
|
4
4
|
import Team from "./Team";
|
|
5
5
|
import User from "./User";
|
|
6
|
-
import
|
|
6
|
+
import RuleBaseModel from "./DatabaseBaseModel/RuleBaseModel";
|
|
7
7
|
import Route from "../../Types/API/Route";
|
|
8
8
|
import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
|
|
9
9
|
import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
|
|
@@ -76,7 +76,7 @@ import {
|
|
|
76
76
|
tableDescription:
|
|
77
77
|
"Configure rules for automatically assigning owner users and teams when matching alert episodes are created",
|
|
78
78
|
})
|
|
79
|
-
export default class AlertEpisodeOwnerRule extends
|
|
79
|
+
export default class AlertEpisodeOwnerRule extends RuleBaseModel {
|
|
80
80
|
@ColumnAccessControl({
|
|
81
81
|
create: [
|
|
82
82
|
Permission.ProjectOwner,
|
|
@@ -2,7 +2,7 @@ import AlertSeverity from "./AlertSeverity";
|
|
|
2
2
|
import Label from "./Label";
|
|
3
3
|
import Project from "./Project";
|
|
4
4
|
import User from "./User";
|
|
5
|
-
import
|
|
5
|
+
import RuleBaseModel from "./DatabaseBaseModel/RuleBaseModel";
|
|
6
6
|
import Route from "../../Types/API/Route";
|
|
7
7
|
import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
|
|
8
8
|
import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
|
|
@@ -75,7 +75,7 @@ import {
|
|
|
75
75
|
tableDescription:
|
|
76
76
|
"Configure rules for automatically marking matching alert episodes as private",
|
|
77
77
|
})
|
|
78
|
-
export default class AlertEpisodePrivacyRule extends
|
|
78
|
+
export default class AlertEpisodePrivacyRule extends RuleBaseModel {
|
|
79
79
|
@ColumnAccessControl({
|
|
80
80
|
create: [
|
|
81
81
|
Permission.ProjectOwner,
|
|
@@ -5,7 +5,7 @@ import OnCallDutyPolicy from "./OnCallDutyPolicy";
|
|
|
5
5
|
import Project from "./Project";
|
|
6
6
|
import Team from "./Team";
|
|
7
7
|
import User from "./User";
|
|
8
|
-
import
|
|
8
|
+
import RuleBaseModel from "./DatabaseBaseModel/RuleBaseModel";
|
|
9
9
|
import Route from "../../Types/API/Route";
|
|
10
10
|
import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
|
|
11
11
|
import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
|
|
@@ -96,7 +96,7 @@ export interface AlertGroupingRuleGroupByFields {
|
|
|
96
96
|
tableDescription:
|
|
97
97
|
"Configure rules for automatically grouping related alerts into episodes",
|
|
98
98
|
})
|
|
99
|
-
export default class AlertGroupingRule extends
|
|
99
|
+
export default class AlertGroupingRule extends RuleBaseModel {
|
|
100
100
|
@ColumnAccessControl({
|
|
101
101
|
create: [
|
|
102
102
|
Permission.ProjectOwner,
|
|
@@ -3,7 +3,7 @@ import Label from "./Label";
|
|
|
3
3
|
import Monitor from "./Monitor";
|
|
4
4
|
import Project from "./Project";
|
|
5
5
|
import User from "./User";
|
|
6
|
-
import
|
|
6
|
+
import RuleBaseModel from "./DatabaseBaseModel/RuleBaseModel";
|
|
7
7
|
import Route from "../../Types/API/Route";
|
|
8
8
|
import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
|
|
9
9
|
import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
|
|
@@ -76,7 +76,7 @@ import {
|
|
|
76
76
|
tableDescription:
|
|
77
77
|
"Configure rules for automatically attaching labels to alerts — including labels inherited from the alert's monitor — when matching alerts are created",
|
|
78
78
|
})
|
|
79
|
-
export default class AlertLabelRule extends
|
|
79
|
+
export default class AlertLabelRule extends RuleBaseModel {
|
|
80
80
|
@ColumnAccessControl({
|
|
81
81
|
create: [
|
|
82
82
|
Permission.ProjectOwner,
|
|
@@ -4,7 +4,7 @@ import Monitor from "./Monitor";
|
|
|
4
4
|
import OnCallDutyPolicy from "./OnCallDutyPolicy";
|
|
5
5
|
import Project from "./Project";
|
|
6
6
|
import User from "./User";
|
|
7
|
-
import
|
|
7
|
+
import RuleBaseModel from "./DatabaseBaseModel/RuleBaseModel";
|
|
8
8
|
import Route from "../../Types/API/Route";
|
|
9
9
|
import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
|
|
10
10
|
import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
|
|
@@ -77,7 +77,7 @@ import {
|
|
|
77
77
|
tableDescription:
|
|
78
78
|
"Configure rules for automatically executing on-call duty policies when matching alerts are created",
|
|
79
79
|
})
|
|
80
|
-
export default class AlertOnCallRule extends
|
|
80
|
+
export default class AlertOnCallRule extends RuleBaseModel {
|
|
81
81
|
@ColumnAccessControl({
|
|
82
82
|
create: [
|
|
83
83
|
Permission.ProjectOwner,
|
|
@@ -4,7 +4,7 @@ import Monitor from "./Monitor";
|
|
|
4
4
|
import Project from "./Project";
|
|
5
5
|
import Team from "./Team";
|
|
6
6
|
import User from "./User";
|
|
7
|
-
import
|
|
7
|
+
import RuleBaseModel from "./DatabaseBaseModel/RuleBaseModel";
|
|
8
8
|
import Route from "../../Types/API/Route";
|
|
9
9
|
import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
|
|
10
10
|
import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
|
|
@@ -77,7 +77,7 @@ import {
|
|
|
77
77
|
tableDescription:
|
|
78
78
|
"Configure rules for automatically assigning owner users and teams when matching alerts are created",
|
|
79
79
|
})
|
|
80
|
-
export default class AlertOwnerRule extends
|
|
80
|
+
export default class AlertOwnerRule extends RuleBaseModel {
|
|
81
81
|
@ColumnAccessControl({
|
|
82
82
|
create: [
|
|
83
83
|
Permission.ProjectOwner,
|
|
@@ -3,7 +3,7 @@ import Label from "./Label";
|
|
|
3
3
|
import Monitor from "./Monitor";
|
|
4
4
|
import Project from "./Project";
|
|
5
5
|
import User from "./User";
|
|
6
|
-
import
|
|
6
|
+
import RuleBaseModel from "./DatabaseBaseModel/RuleBaseModel";
|
|
7
7
|
import Route from "../../Types/API/Route";
|
|
8
8
|
import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
|
|
9
9
|
import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
|
|
@@ -76,7 +76,7 @@ import {
|
|
|
76
76
|
tableDescription:
|
|
77
77
|
"Configure rules for automatically marking matching alerts as private",
|
|
78
78
|
})
|
|
79
|
-
export default class AlertPrivacyRule extends
|
|
79
|
+
export default class AlertPrivacyRule extends RuleBaseModel {
|
|
80
80
|
@ColumnAccessControl({
|
|
81
81
|
create: [
|
|
82
82
|
Permission.ProjectOwner,
|
|
@@ -2,7 +2,7 @@ import AlertSeverity from "./AlertSeverity";
|
|
|
2
2
|
import Label from "./Label";
|
|
3
3
|
import Project from "./Project";
|
|
4
4
|
import User from "./User";
|
|
5
|
-
import
|
|
5
|
+
import RelationOnlyRuleBaseModel from "./DatabaseBaseModel/RelationOnlyRuleBaseModel";
|
|
6
6
|
import Route from "../../Types/API/Route";
|
|
7
7
|
import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
|
|
8
8
|
import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
|
|
@@ -21,6 +21,7 @@ import Permission from "../../Types/Permission";
|
|
|
21
21
|
import ReminderStopState from "../../Types/Reminder/ReminderStopState";
|
|
22
22
|
import {
|
|
23
23
|
Column,
|
|
24
|
+
Check,
|
|
24
25
|
Entity,
|
|
25
26
|
Index,
|
|
26
27
|
JoinColumn,
|
|
@@ -59,6 +60,7 @@ import {
|
|
|
59
60
|
],
|
|
60
61
|
})
|
|
61
62
|
@CrudApiEndpoint(new Route("/alert-reminder-rule"))
|
|
63
|
+
@Check(`"criteria" IS NULL OR "isEnabled" IS DISTINCT FROM true`)
|
|
62
64
|
@Entity({
|
|
63
65
|
name: "AlertReminderRule",
|
|
64
66
|
})
|
|
@@ -76,7 +78,7 @@ import {
|
|
|
76
78
|
tableDescription:
|
|
77
79
|
"Configure reminder rules to periodically notify alert owners while an alert is still open",
|
|
78
80
|
})
|
|
79
|
-
export default class AlertReminderRule extends
|
|
81
|
+
export default class AlertReminderRule extends RelationOnlyRuleBaseModel {
|
|
80
82
|
@ColumnAccessControl({
|
|
81
83
|
create: [
|
|
82
84
|
Permission.ProjectOwner,
|
|
@@ -294,10 +296,10 @@ export default class AlertReminderRule extends BaseModel {
|
|
|
294
296
|
})
|
|
295
297
|
@Column({
|
|
296
298
|
type: ColumnType.Boolean,
|
|
297
|
-
nullable:
|
|
299
|
+
nullable: true,
|
|
298
300
|
default: true,
|
|
299
301
|
})
|
|
300
|
-
public isEnabled?: boolean = undefined;
|
|
302
|
+
public isEnabled?: boolean | null = undefined;
|
|
301
303
|
|
|
302
304
|
@ColumnAccessControl({
|
|
303
305
|
create: [
|
|
@@ -6,7 +6,7 @@ import Project from "./Project";
|
|
|
6
6
|
import Runbook from "./Runbook";
|
|
7
7
|
import Runner from "./Runner";
|
|
8
8
|
import User from "./User";
|
|
9
|
-
import
|
|
9
|
+
import RuleBaseModel from "./DatabaseBaseModel/RuleBaseModel";
|
|
10
10
|
import Route from "../../Types/API/Route";
|
|
11
11
|
import AutoRemediationExecutionMode from "../../Types/AutoRemediation/AutoRemediationExecutionMode";
|
|
12
12
|
import AutoRemediationTriggerEntity from "../../Types/AutoRemediation/AutoRemediationTriggerEntity";
|
|
@@ -71,7 +71,7 @@ import {
|
|
|
71
71
|
tableDescription:
|
|
72
72
|
"Automatically propose or start remediation runbooks when matching incidents or alerts are created.",
|
|
73
73
|
})
|
|
74
|
-
export default class AutoRemediationRule extends
|
|
74
|
+
export default class AutoRemediationRule extends RuleBaseModel {
|
|
75
75
|
@ColumnAccessControl({
|
|
76
76
|
create: [
|
|
77
77
|
Permission.ProjectOwner,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import Label from "./Label";
|
|
2
2
|
import Project from "./Project";
|
|
3
3
|
import User from "./User";
|
|
4
|
-
import
|
|
4
|
+
import RuleBaseModel from "./DatabaseBaseModel/RuleBaseModel";
|
|
5
5
|
import Route from "../../Types/API/Route";
|
|
6
6
|
import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
|
|
7
7
|
import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
|
|
@@ -71,7 +71,7 @@ import {
|
|
|
71
71
|
tableDescription:
|
|
72
72
|
"Configure rules for automatically attaching labels to Ceph clusters when matching Ceph clusters are created",
|
|
73
73
|
})
|
|
74
|
-
export default class CephClusterLabelRule extends
|
|
74
|
+
export default class CephClusterLabelRule extends RuleBaseModel {
|
|
75
75
|
@ColumnAccessControl({
|
|
76
76
|
create: [
|
|
77
77
|
Permission.ProjectOwner,
|
|
@@ -2,7 +2,7 @@ import Label from "./Label";
|
|
|
2
2
|
import Project from "./Project";
|
|
3
3
|
import Team from "./Team";
|
|
4
4
|
import User from "./User";
|
|
5
|
-
import
|
|
5
|
+
import RuleBaseModel from "./DatabaseBaseModel/RuleBaseModel";
|
|
6
6
|
import Route from "../../Types/API/Route";
|
|
7
7
|
import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
|
|
8
8
|
import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
|
|
@@ -72,7 +72,7 @@ import {
|
|
|
72
72
|
tableDescription:
|
|
73
73
|
"Configure rules for automatically assigning owner users and teams when matching Ceph clusters are created",
|
|
74
74
|
})
|
|
75
|
-
export default class CephClusterOwnerRule extends
|
|
75
|
+
export default class CephClusterOwnerRule extends RuleBaseModel {
|
|
76
76
|
@ColumnAccessControl({
|
|
77
77
|
create: [
|
|
78
78
|
Permission.ProjectOwner,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import Label from "./Label";
|
|
2
2
|
import Project from "./Project";
|
|
3
3
|
import User from "./User";
|
|
4
|
-
import
|
|
4
|
+
import RuleBaseModel from "./DatabaseBaseModel/RuleBaseModel";
|
|
5
5
|
import Route from "../../Types/API/Route";
|
|
6
6
|
import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
|
|
7
7
|
import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
|
|
@@ -71,7 +71,7 @@ import {
|
|
|
71
71
|
tableDescription:
|
|
72
72
|
"Rules for automatically attaching labels to cloud resources when matching resources are created.",
|
|
73
73
|
})
|
|
74
|
-
export default class CloudResourceLabelRule extends
|
|
74
|
+
export default class CloudResourceLabelRule extends RuleBaseModel {
|
|
75
75
|
@ColumnAccessControl({
|
|
76
76
|
create: [
|
|
77
77
|
Permission.ProjectOwner,
|
|
@@ -2,7 +2,7 @@ import Label from "./Label";
|
|
|
2
2
|
import Project from "./Project";
|
|
3
3
|
import Team from "./Team";
|
|
4
4
|
import User from "./User";
|
|
5
|
-
import
|
|
5
|
+
import RuleBaseModel from "./DatabaseBaseModel/RuleBaseModel";
|
|
6
6
|
import Route from "../../Types/API/Route";
|
|
7
7
|
import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
|
|
8
8
|
import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
|
|
@@ -72,7 +72,7 @@ import {
|
|
|
72
72
|
tableDescription:
|
|
73
73
|
"Rules for automatically assigning owners to cloud resources when matching resources are created.",
|
|
74
74
|
})
|
|
75
|
-
export default class CloudResourceOwnerRule extends
|
|
75
|
+
export default class CloudResourceOwnerRule extends RuleBaseModel {
|
|
76
76
|
@ColumnAccessControl({
|
|
77
77
|
create: [
|
|
78
78
|
Permission.ProjectOwner,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import Label from "./Label";
|
|
2
2
|
import Project from "./Project";
|
|
3
3
|
import User from "./User";
|
|
4
|
-
import
|
|
4
|
+
import RuleBaseModel from "./DatabaseBaseModel/RuleBaseModel";
|
|
5
5
|
import Route from "../../Types/API/Route";
|
|
6
6
|
import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
|
|
7
7
|
import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
|
|
@@ -71,7 +71,7 @@ import {
|
|
|
71
71
|
tableDescription:
|
|
72
72
|
"Configure rules for automatically attaching labels to dashboards when matching dashboards are created",
|
|
73
73
|
})
|
|
74
|
-
export default class DashboardLabelRule extends
|
|
74
|
+
export default class DashboardLabelRule extends RuleBaseModel {
|
|
75
75
|
@ColumnAccessControl({
|
|
76
76
|
create: [
|
|
77
77
|
Permission.ProjectOwner,
|
|
@@ -2,7 +2,7 @@ import Label from "./Label";
|
|
|
2
2
|
import Project from "./Project";
|
|
3
3
|
import Team from "./Team";
|
|
4
4
|
import User from "./User";
|
|
5
|
-
import
|
|
5
|
+
import RuleBaseModel from "./DatabaseBaseModel/RuleBaseModel";
|
|
6
6
|
import Route from "../../Types/API/Route";
|
|
7
7
|
import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
|
|
8
8
|
import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
|
|
@@ -72,7 +72,7 @@ import {
|
|
|
72
72
|
tableDescription:
|
|
73
73
|
"Configure rules for automatically assigning owner users and teams when matching dashboards are created",
|
|
74
74
|
})
|
|
75
|
-
export default class DashboardOwnerRule extends
|
|
75
|
+
export default class DashboardOwnerRule extends RuleBaseModel {
|
|
76
76
|
@ColumnAccessControl({
|
|
77
77
|
create: [
|
|
78
78
|
Permission.ProjectOwner,
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import RuleBaseModel from "./RuleBaseModel";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Marker base for rules whose legacy match fields are relations only.
|
|
5
|
+
*
|
|
6
|
+
* Criteria-backed rows encode logical enabled as a nullable legacy isEnabled
|
|
7
|
+
* value: null means enabled and false means disabled. Older workers query for
|
|
8
|
+
* true and therefore ignore both states while criteria-aware versions translate
|
|
9
|
+
* the value through DatabaseService.
|
|
10
|
+
*/
|
|
11
|
+
export default class RelationOnlyRuleBaseModel extends RuleBaseModel {}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { ColumnAccessControl } from "../../../Types/BaseDatabase/AccessControl";
|
|
2
|
+
import ColumnType from "../../../Types/Database/ColumnType";
|
|
3
|
+
import TableColumn from "../../../Types/Database/TableColumn";
|
|
4
|
+
import TableColumnType from "../../../Types/Database/TableColumnType";
|
|
5
|
+
import Dictionary from "../../../Types/Dictionary";
|
|
6
|
+
import RuleCriteria from "../../../Types/Rules/RuleCriteria";
|
|
7
|
+
import { Column } from "typeorm";
|
|
8
|
+
import DatabaseBaseModel from "./DatabaseBaseModel";
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Shared persistence contract for resources configured through a rule form.
|
|
12
|
+
*
|
|
13
|
+
* The criteria column dynamically inherits the concrete model's table ACL.
|
|
14
|
+
* This avoids either widening access to a rule or accidentally requiring a
|
|
15
|
+
* permission that the table itself does not accept.
|
|
16
|
+
*/
|
|
17
|
+
export default class RuleBaseModel extends DatabaseBaseModel {
|
|
18
|
+
@TableColumn({
|
|
19
|
+
required: false,
|
|
20
|
+
type: TableColumnType.JSON,
|
|
21
|
+
title: "Match Criteria",
|
|
22
|
+
description:
|
|
23
|
+
"Versioned conditions that determine whether this rule matches a resource.",
|
|
24
|
+
})
|
|
25
|
+
@Column({
|
|
26
|
+
nullable: true,
|
|
27
|
+
type: ColumnType.JSON,
|
|
28
|
+
})
|
|
29
|
+
public criteria?: RuleCriteria | null = undefined;
|
|
30
|
+
|
|
31
|
+
public override getColumnAccessControlForAllColumns(): Dictionary<ColumnAccessControl> {
|
|
32
|
+
const dictionary: Dictionary<ColumnAccessControl> = {
|
|
33
|
+
...super.getColumnAccessControlForAllColumns(),
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
dictionary["criteria"] = {
|
|
37
|
+
create: this.createRecordPermissions,
|
|
38
|
+
read: this.readRecordPermissions,
|
|
39
|
+
update: this.updateRecordPermissions,
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
return dictionary;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import Label from "./Label";
|
|
2
2
|
import Project from "./Project";
|
|
3
3
|
import User from "./User";
|
|
4
|
-
import
|
|
4
|
+
import RuleBaseModel from "./DatabaseBaseModel/RuleBaseModel";
|
|
5
5
|
import Route from "../../Types/API/Route";
|
|
6
6
|
import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
|
|
7
7
|
import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
|
|
@@ -71,7 +71,7 @@ import {
|
|
|
71
71
|
tableDescription:
|
|
72
72
|
"Configure rules for automatically attaching labels to Docker hosts when matching Docker hosts are created",
|
|
73
73
|
})
|
|
74
|
-
export default class DockerHostLabelRule extends
|
|
74
|
+
export default class DockerHostLabelRule extends RuleBaseModel {
|
|
75
75
|
@ColumnAccessControl({
|
|
76
76
|
create: [
|
|
77
77
|
Permission.ProjectOwner,
|
|
@@ -2,7 +2,7 @@ import Label from "./Label";
|
|
|
2
2
|
import Project from "./Project";
|
|
3
3
|
import Team from "./Team";
|
|
4
4
|
import User from "./User";
|
|
5
|
-
import
|
|
5
|
+
import RuleBaseModel from "./DatabaseBaseModel/RuleBaseModel";
|
|
6
6
|
import Route from "../../Types/API/Route";
|
|
7
7
|
import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
|
|
8
8
|
import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
|
|
@@ -72,7 +72,7 @@ import {
|
|
|
72
72
|
tableDescription:
|
|
73
73
|
"Configure rules for automatically assigning owner users and teams when matching Docker hosts are created",
|
|
74
74
|
})
|
|
75
|
-
export default class DockerHostOwnerRule extends
|
|
75
|
+
export default class DockerHostOwnerRule extends RuleBaseModel {
|
|
76
76
|
@ColumnAccessControl({
|
|
77
77
|
create: [
|
|
78
78
|
Permission.ProjectOwner,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import Label from "./Label";
|
|
2
2
|
import Project from "./Project";
|
|
3
3
|
import User from "./User";
|
|
4
|
-
import
|
|
4
|
+
import RuleBaseModel from "./DatabaseBaseModel/RuleBaseModel";
|
|
5
5
|
import Route from "../../Types/API/Route";
|
|
6
6
|
import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
|
|
7
7
|
import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
|
|
@@ -71,7 +71,7 @@ import {
|
|
|
71
71
|
tableDescription:
|
|
72
72
|
"Configure rules for automatically attaching labels to DockerSwarm clusters when matching DockerSwarm clusters are created",
|
|
73
73
|
})
|
|
74
|
-
export default class DockerSwarmClusterLabelRule extends
|
|
74
|
+
export default class DockerSwarmClusterLabelRule extends RuleBaseModel {
|
|
75
75
|
@ColumnAccessControl({
|
|
76
76
|
create: [
|
|
77
77
|
Permission.ProjectOwner,
|
|
@@ -2,7 +2,7 @@ import Label from "./Label";
|
|
|
2
2
|
import Project from "./Project";
|
|
3
3
|
import Team from "./Team";
|
|
4
4
|
import User from "./User";
|
|
5
|
-
import
|
|
5
|
+
import RuleBaseModel from "./DatabaseBaseModel/RuleBaseModel";
|
|
6
6
|
import Route from "../../Types/API/Route";
|
|
7
7
|
import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
|
|
8
8
|
import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
|
|
@@ -72,7 +72,7 @@ import {
|
|
|
72
72
|
tableDescription:
|
|
73
73
|
"Configure rules for automatically assigning owner users and teams when matching DockerSwarm clusters are created",
|
|
74
74
|
})
|
|
75
|
-
export default class DockerSwarmClusterOwnerRule extends
|
|
75
|
+
export default class DockerSwarmClusterOwnerRule extends RuleBaseModel {
|
|
76
76
|
@ColumnAccessControl({
|
|
77
77
|
create: [
|
|
78
78
|
Permission.ProjectOwner,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import Label from "./Label";
|
|
2
2
|
import Project from "./Project";
|
|
3
3
|
import User from "./User";
|
|
4
|
-
import
|
|
4
|
+
import RuleBaseModel from "./DatabaseBaseModel/RuleBaseModel";
|
|
5
5
|
import Route from "../../Types/API/Route";
|
|
6
6
|
import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
|
|
7
7
|
import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
|
|
@@ -71,7 +71,7 @@ import {
|
|
|
71
71
|
tableDescription:
|
|
72
72
|
"Configure rules for automatically attaching labels to hosts when matching hosts are created",
|
|
73
73
|
})
|
|
74
|
-
export default class HostLabelRule extends
|
|
74
|
+
export default class HostLabelRule extends RuleBaseModel {
|
|
75
75
|
@ColumnAccessControl({
|
|
76
76
|
create: [
|
|
77
77
|
Permission.ProjectOwner,
|
|
@@ -2,7 +2,7 @@ import Label from "./Label";
|
|
|
2
2
|
import Project from "./Project";
|
|
3
3
|
import Team from "./Team";
|
|
4
4
|
import User from "./User";
|
|
5
|
-
import
|
|
5
|
+
import RuleBaseModel from "./DatabaseBaseModel/RuleBaseModel";
|
|
6
6
|
import Route from "../../Types/API/Route";
|
|
7
7
|
import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
|
|
8
8
|
import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
|
|
@@ -72,7 +72,7 @@ import {
|
|
|
72
72
|
tableDescription:
|
|
73
73
|
"Configure rules for automatically assigning owner users and teams when matching hosts are created",
|
|
74
74
|
})
|
|
75
|
-
export default class HostOwnerRule extends
|
|
75
|
+
export default class HostOwnerRule extends RuleBaseModel {
|
|
76
76
|
@ColumnAccessControl({
|
|
77
77
|
create: [
|
|
78
78
|
Permission.ProjectOwner,
|
|
@@ -2,7 +2,7 @@ import IncidentSeverity from "./IncidentSeverity";
|
|
|
2
2
|
import Label from "./Label";
|
|
3
3
|
import Project from "./Project";
|
|
4
4
|
import User from "./User";
|
|
5
|
-
import
|
|
5
|
+
import RuleBaseModel from "./DatabaseBaseModel/RuleBaseModel";
|
|
6
6
|
import Route from "../../Types/API/Route";
|
|
7
7
|
import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
|
|
8
8
|
import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
|
|
@@ -75,7 +75,7 @@ import {
|
|
|
75
75
|
tableDescription:
|
|
76
76
|
"Configure rules for automatically attaching labels to incident episodes when matching episodes are created",
|
|
77
77
|
})
|
|
78
|
-
export default class IncidentEpisodeLabelRule extends
|
|
78
|
+
export default class IncidentEpisodeLabelRule extends RuleBaseModel {
|
|
79
79
|
@ColumnAccessControl({
|
|
80
80
|
create: [
|
|
81
81
|
Permission.ProjectOwner,
|
|
@@ -3,7 +3,7 @@ import Label from "./Label";
|
|
|
3
3
|
import OnCallDutyPolicy from "./OnCallDutyPolicy";
|
|
4
4
|
import Project from "./Project";
|
|
5
5
|
import User from "./User";
|
|
6
|
-
import
|
|
6
|
+
import RuleBaseModel from "./DatabaseBaseModel/RuleBaseModel";
|
|
7
7
|
import Route from "../../Types/API/Route";
|
|
8
8
|
import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
|
|
9
9
|
import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
|
|
@@ -76,7 +76,7 @@ import {
|
|
|
76
76
|
tableDescription:
|
|
77
77
|
"Configure rules for automatically executing on-call duty policies when matching incident episodes are created",
|
|
78
78
|
})
|
|
79
|
-
export default class IncidentEpisodeOnCallRule extends
|
|
79
|
+
export default class IncidentEpisodeOnCallRule extends RuleBaseModel {
|
|
80
80
|
@ColumnAccessControl({
|
|
81
81
|
create: [
|
|
82
82
|
Permission.ProjectOwner,
|
|
@@ -3,7 +3,7 @@ import Label from "./Label";
|
|
|
3
3
|
import Project from "./Project";
|
|
4
4
|
import Team from "./Team";
|
|
5
5
|
import User from "./User";
|
|
6
|
-
import
|
|
6
|
+
import RuleBaseModel from "./DatabaseBaseModel/RuleBaseModel";
|
|
7
7
|
import Route from "../../Types/API/Route";
|
|
8
8
|
import ColumnAccessControl from "../../Types/Database/AccessControl/ColumnAccessControl";
|
|
9
9
|
import TableAccessControl from "../../Types/Database/AccessControl/TableAccessControl";
|
|
@@ -76,7 +76,7 @@ import {
|
|
|
76
76
|
tableDescription:
|
|
77
77
|
"Configure rules for automatically assigning owner users and teams when matching incident episodes are created",
|
|
78
78
|
})
|
|
79
|
-
export default class IncidentEpisodeOwnerRule extends
|
|
79
|
+
export default class IncidentEpisodeOwnerRule extends RuleBaseModel {
|
|
80
80
|
@ColumnAccessControl({
|
|
81
81
|
create: [
|
|
82
82
|
Permission.ProjectOwner,
|