@oneuptime/common 10.2.22 → 10.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Models/AnalyticsModels/AuditLog.ts +13 -0
- package/Models/AnalyticsModels/ExceptionInstance.ts +94 -0
- package/Models/AnalyticsModels/Log.ts +84 -0
- package/Models/AnalyticsModels/Metric.ts +164 -0
- package/Models/AnalyticsModels/MonitorLog.ts +29 -0
- package/Models/AnalyticsModels/Profile.ts +99 -0
- package/Models/AnalyticsModels/ProfileSample.ts +74 -0
- package/Models/AnalyticsModels/Span.ts +119 -0
- package/Models/DatabaseModels/AIAgent.ts +66 -30
- package/Models/DatabaseModels/AIAgentOwnerTeam.ts +58 -23
- package/Models/DatabaseModels/AIAgentOwnerUser.ts +58 -23
- package/Models/DatabaseModels/AIAgentTask.ts +82 -34
- package/Models/DatabaseModels/Alert.ts +199 -81
- package/Models/DatabaseModels/AlertCustomField.ts +30 -10
- package/Models/DatabaseModels/AlertEpisode.ts +209 -87
- package/Models/DatabaseModels/AlertEpisodeFeed.ts +70 -28
- package/Models/DatabaseModels/AlertEpisodeInternalNote.ts +61 -25
- package/Models/DatabaseModels/AlertEpisodeLabelRule.ts +39 -13
- package/Models/DatabaseModels/AlertEpisodeMember.ts +87 -34
- package/Models/DatabaseModels/AlertEpisodeOnCallRule.ts +39 -13
- package/Models/DatabaseModels/AlertEpisodeOwnerRule.ts +45 -15
- package/Models/DatabaseModels/AlertEpisodeOwnerTeam.ts +60 -24
- package/Models/DatabaseModels/AlertEpisodeOwnerUser.ts +60 -24
- package/Models/DatabaseModels/AlertEpisodePrivacyRule.ts +36 -12
- package/Models/DatabaseModels/AlertEpisodeStateTimeline.ts +74 -30
- package/Models/DatabaseModels/AlertFeed.ts +72 -28
- package/Models/DatabaseModels/AlertGroupingRule.ts +123 -41
- package/Models/DatabaseModels/AlertInternalNote.ts +63 -25
- package/Models/DatabaseModels/AlertLabelRule.ts +54 -18
- package/Models/DatabaseModels/AlertNoteTemplate.ts +50 -21
- package/Models/DatabaseModels/AlertOnCallRule.ts +51 -17
- package/Models/DatabaseModels/AlertOwnerRule.ts +63 -21
- package/Models/DatabaseModels/AlertOwnerTeam.ts +60 -24
- package/Models/DatabaseModels/AlertOwnerUser.ts +60 -24
- package/Models/DatabaseModels/AlertPrivacyRule.ts +48 -16
- package/Models/DatabaseModels/AlertSeverity.ts +51 -42
- package/Models/DatabaseModels/AlertState.ts +63 -56
- package/Models/DatabaseModels/AlertStateTimeline.ts +76 -30
- package/Models/DatabaseModels/BillingPaymentMethod.ts +36 -12
- package/Models/DatabaseModels/CodeRepository.ts +84 -34
- package/Models/DatabaseModels/Dashboard.ts +72 -24
- package/Models/DatabaseModels/DashboardDomain.ts +98 -39
- package/Models/DatabaseModels/DashboardLabelRule.ts +526 -0
- package/Models/DatabaseModels/DashboardOwnerRule.ts +610 -0
- package/Models/DatabaseModels/DashboardOwnerTeam.ts +440 -0
- package/Models/DatabaseModels/DashboardOwnerUser.ts +439 -0
- package/Models/DatabaseModels/DatabaseBaseModel/DatabaseBaseModel.ts +18 -0
- package/Models/DatabaseModels/DockerHost.ts +87 -34
- package/Models/DatabaseModels/DockerHostLabelRule.ts +526 -0
- package/Models/DatabaseModels/DockerHostOwnerRule.ts +610 -0
- package/Models/DatabaseModels/DockerHostOwnerTeam.ts +58 -23
- package/Models/DatabaseModels/DockerHostOwnerUser.ts +58 -23
- package/Models/DatabaseModels/DockerResource.ts +3 -1
- package/Models/DatabaseModels/Domain.ts +35 -12
- package/Models/DatabaseModels/Host.ts +114 -43
- package/Models/DatabaseModels/HostLabelRule.ts +526 -0
- package/Models/DatabaseModels/HostOwnerRule.ts +608 -0
- package/Models/DatabaseModels/HostOwnerTeam.ts +58 -23
- package/Models/DatabaseModels/HostOwnerUser.ts +58 -23
- package/Models/DatabaseModels/Incident.ts +282 -116
- package/Models/DatabaseModels/IncidentCustomField.ts +30 -10
- package/Models/DatabaseModels/IncidentEpisode.ts +237 -98
- package/Models/DatabaseModels/IncidentEpisodeFeed.ts +70 -28
- package/Models/DatabaseModels/IncidentEpisodeInternalNote.ts +61 -25
- package/Models/DatabaseModels/IncidentEpisodeLabelRule.ts +39 -13
- package/Models/DatabaseModels/IncidentEpisodeMember.ts +87 -34
- package/Models/DatabaseModels/IncidentEpisodeOnCallRule.ts +39 -13
- package/Models/DatabaseModels/IncidentEpisodeOwnerRule.ts +45 -15
- package/Models/DatabaseModels/IncidentEpisodeOwnerTeam.ts +60 -24
- package/Models/DatabaseModels/IncidentEpisodeOwnerUser.ts +60 -24
- package/Models/DatabaseModels/IncidentEpisodePrivacyRule.ts +36 -12
- package/Models/DatabaseModels/IncidentEpisodePublicNote.ts +87 -36
- package/Models/DatabaseModels/IncidentEpisodeRoleMember.ts +76 -31
- package/Models/DatabaseModels/IncidentEpisodeStateTimeline.ts +85 -34
- package/Models/DatabaseModels/IncidentFeed.ts +72 -28
- package/Models/DatabaseModels/IncidentGroupingRule.ts +132 -44
- package/Models/DatabaseModels/IncidentInternalNote.ts +63 -25
- package/Models/DatabaseModels/IncidentLabelRule.ts +57 -19
- package/Models/DatabaseModels/IncidentMember.ts +78 -31
- package/Models/DatabaseModels/IncidentNoteTemplate.ts +50 -21
- package/Models/DatabaseModels/IncidentOnCallRule.ts +51 -17
- package/Models/DatabaseModels/IncidentOwnerRule.ts +63 -21
- package/Models/DatabaseModels/IncidentOwnerTeam.ts +58 -23
- package/Models/DatabaseModels/IncidentOwnerUser.ts +60 -24
- package/Models/DatabaseModels/IncidentPostmortemTemplate.ts +50 -21
- package/Models/DatabaseModels/IncidentPrivacyRule.ts +48 -16
- package/Models/DatabaseModels/IncidentPublicNote.ts +89 -36
- package/Models/DatabaseModels/IncidentRole.ts +79 -32
- package/Models/DatabaseModels/IncidentSeverity.ts +51 -42
- package/Models/DatabaseModels/IncidentSla.ts +56 -18
- package/Models/DatabaseModels/IncidentSlaRule.ts +66 -22
- package/Models/DatabaseModels/IncidentState.ts +66 -57
- package/Models/DatabaseModels/IncidentStateTimeline.ts +95 -38
- package/Models/DatabaseModels/IncidentTemplate.ts +126 -53
- package/Models/DatabaseModels/IncidentTemplateOwnerTeam.ts +58 -23
- package/Models/DatabaseModels/IncidentTemplateOwnerUser.ts +94 -35
- package/Models/DatabaseModels/IncomingCallPolicy.ts +126 -52
- package/Models/DatabaseModels/IncomingCallPolicyEscalationRule.ts +95 -40
- package/Models/DatabaseModels/Index.ts +67 -0
- package/Models/DatabaseModels/KubernetesCluster.ts +88 -35
- package/Models/DatabaseModels/KubernetesClusterLabelRule.ts +526 -0
- package/Models/DatabaseModels/KubernetesClusterOwnerRule.ts +610 -0
- package/Models/DatabaseModels/KubernetesClusterOwnerTeam.ts +58 -23
- package/Models/DatabaseModels/KubernetesClusterOwnerUser.ts +58 -23
- package/Models/DatabaseModels/KubernetesContainer.ts +3 -1
- package/Models/DatabaseModels/KubernetesResource.ts +3 -1
- package/Models/DatabaseModels/Label.ts +33 -11
- package/Models/DatabaseModels/LlmProvider.ts +45 -22
- package/Models/DatabaseModels/LogDropFilter.ts +42 -14
- package/Models/DatabaseModels/LogPipeline.ts +36 -12
- package/Models/DatabaseModels/LogPipelineProcessor.ts +36 -12
- package/Models/DatabaseModels/LogScrubRule.ts +45 -15
- package/Models/DatabaseModels/MetricPipelineRule.ts +68 -22
- package/Models/DatabaseModels/MetricRecordingRule.ts +39 -13
- package/Models/DatabaseModels/MetricType.ts +41 -15
- package/Models/DatabaseModels/Monitor.ts +190 -76
- package/Models/DatabaseModels/MonitorCustomField.ts +30 -10
- package/Models/DatabaseModels/MonitorFeed.ts +74 -28
- package/Models/DatabaseModels/MonitorGroup.ts +53 -22
- package/Models/DatabaseModels/MonitorGroupOwnerTeam.ts +58 -23
- package/Models/DatabaseModels/MonitorGroupOwnerUser.ts +58 -23
- package/Models/DatabaseModels/MonitorGroupResource.ts +55 -22
- package/Models/DatabaseModels/MonitorLabelRule.ts +562 -0
- package/Models/DatabaseModels/MonitorOwnerRule.ts +652 -0
- package/Models/DatabaseModels/MonitorOwnerTeam.ts +60 -24
- package/Models/DatabaseModels/MonitorOwnerUser.ts +60 -24
- package/Models/DatabaseModels/MonitorProbe.ts +53 -18
- package/Models/DatabaseModels/MonitorStatus.ts +61 -52
- package/Models/DatabaseModels/MonitorStatusTimeline.ts +76 -30
- package/Models/DatabaseModels/MonitorTemplate.ts +100 -42
- package/Models/DatabaseModels/MonitorTest.ts +88 -36
- package/Models/DatabaseModels/OnCallDutyPolicy.ts +78 -32
- package/Models/DatabaseModels/OnCallDutyPolicyCustomField.ts +30 -10
- package/Models/DatabaseModels/OnCallDutyPolicyEscalationRule.ts +69 -28
- package/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleSchedule.ts +61 -24
- package/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleTeam.ts +61 -24
- package/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleUser.ts +61 -24
- package/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.ts +149 -60
- package/Models/DatabaseModels/OnCallDutyPolicyExecutionLogTimeline.ts +95 -31
- package/Models/DatabaseModels/OnCallDutyPolicyFeed.ts +72 -28
- package/Models/DatabaseModels/OnCallDutyPolicyOwnerTeam.ts +58 -23
- package/Models/DatabaseModels/OnCallDutyPolicyOwnerUser.ts +58 -23
- package/Models/DatabaseModels/OnCallDutyPolicySchedule.ts +83 -33
- package/Models/DatabaseModels/OnCallDutyPolicyScheduleLayer.ts +86 -35
- package/Models/DatabaseModels/OnCallDutyPolicyScheduleLayerUser.ts +72 -29
- package/Models/DatabaseModels/OnCallDutyPolicyTimeLog.ts +77 -30
- package/Models/DatabaseModels/OnCallDutyPolicyUserOverride.ts +71 -28
- package/Models/DatabaseModels/Probe.ts +69 -31
- package/Models/DatabaseModels/ProbeOwnerTeam.ts +58 -23
- package/Models/DatabaseModels/ProbeOwnerUser.ts +58 -23
- package/Models/DatabaseModels/ProjectCallSMSConfig.ts +82 -14
- package/Models/DatabaseModels/ProjectOidc.ts +36 -12
- package/Models/DatabaseModels/ProjectSCIM.ts +39 -13
- package/Models/DatabaseModels/ProjectSmtpConfig.ts +63 -21
- package/Models/DatabaseModels/ProjectSso.ts +39 -13
- package/Models/DatabaseModels/PromoCode.ts +15 -5
- package/Models/DatabaseModels/Runbook.ts +561 -0
- package/Models/DatabaseModels/RunbookAgent.ts +617 -0
- package/Models/DatabaseModels/RunbookAgentJob.ts +633 -0
- package/Models/DatabaseModels/RunbookAgentOwnerTeam.ts +496 -0
- package/Models/DatabaseModels/RunbookAgentOwnerUser.ts +495 -0
- package/Models/DatabaseModels/RunbookExecution.ts +785 -0
- package/Models/DatabaseModels/RunbookLabelRule.ts +526 -0
- package/Models/DatabaseModels/RunbookOwnerRule.ts +610 -0
- package/Models/DatabaseModels/RunbookOwnerTeam.ts +498 -0
- package/Models/DatabaseModels/RunbookOwnerUser.ts +497 -0
- package/Models/DatabaseModels/RunbookRule.ts +554 -0
- package/Models/DatabaseModels/RunbookSecret.ts +423 -0
- package/Models/DatabaseModels/ScheduledMaintenance.ts +179 -74
- package/Models/DatabaseModels/ScheduledMaintenanceCustomField.ts +30 -10
- package/Models/DatabaseModels/ScheduledMaintenanceFeed.ts +72 -28
- package/Models/DatabaseModels/ScheduledMaintenanceInternalNote.ts +63 -25
- package/Models/DatabaseModels/ScheduledMaintenanceLabelRule.ts +51 -17
- package/Models/DatabaseModels/ScheduledMaintenanceNoteTemplate.ts +50 -21
- package/Models/DatabaseModels/ScheduledMaintenanceOwnerRule.ts +57 -19
- package/Models/DatabaseModels/ScheduledMaintenanceOwnerTeam.ts +58 -23
- package/Models/DatabaseModels/ScheduledMaintenanceOwnerUser.ts +58 -23
- package/Models/DatabaseModels/ScheduledMaintenancePublicNote.ts +89 -36
- package/Models/DatabaseModels/ScheduledMaintenanceState.ts +71 -62
- package/Models/DatabaseModels/ScheduledMaintenanceStateTimeline.ts +87 -35
- package/Models/DatabaseModels/ScheduledMaintenanceTemplate.ts +170 -72
- package/Models/DatabaseModels/ScheduledMaintenanceTemplateOwnerTeam.ts +55 -22
- package/Models/DatabaseModels/ScheduledMaintenanceTemplateOwnerUser.ts +55 -22
- package/Models/DatabaseModels/Service.ts +141 -54
- package/Models/DatabaseModels/ServiceCodeRepository.ts +85 -34
- package/Models/DatabaseModels/ServiceDependency.ts +88 -33
- package/Models/DatabaseModels/ServiceLabelRule.ts +526 -0
- package/Models/DatabaseModels/ServiceMonitor.ts +88 -33
- package/Models/DatabaseModels/ServiceOwnerRule.ts +610 -0
- package/Models/DatabaseModels/ServiceOwnerTeam.ts +51 -20
- package/Models/DatabaseModels/ServiceOwnerUser.ts +51 -20
- package/Models/DatabaseModels/StatusPage.ts +494 -210
- package/Models/DatabaseModels/StatusPageAnnouncement.ts +105 -44
- package/Models/DatabaseModels/StatusPageAnnouncementTemplate.ts +79 -33
- package/Models/DatabaseModels/StatusPageCustomField.ts +30 -10
- package/Models/DatabaseModels/StatusPageDomain.ts +98 -39
- package/Models/DatabaseModels/StatusPageFooterLink.ts +65 -26
- package/Models/DatabaseModels/StatusPageGroup.ts +93 -38
- package/Models/DatabaseModels/StatusPageHeaderLink.ts +65 -26
- package/Models/DatabaseModels/StatusPageHistoryChartBarColorRule.ts +62 -25
- package/Models/DatabaseModels/StatusPageLabelRule.ts +526 -0
- package/Models/DatabaseModels/StatusPageOidc.ts +12 -4
- package/Models/DatabaseModels/StatusPageOwnerRule.ts +610 -0
- package/Models/DatabaseModels/StatusPageOwnerTeam.ts +54 -21
- package/Models/DatabaseModels/StatusPageOwnerUser.ts +56 -22
- package/Models/DatabaseModels/StatusPagePrivateUser.ts +63 -25
- package/Models/DatabaseModels/StatusPagePrivateUserSession.ts +2 -0
- package/Models/DatabaseModels/StatusPageResource.ts +137 -58
- package/Models/DatabaseModels/StatusPageSCIM.ts +2 -0
- package/Models/DatabaseModels/StatusPageSCIMLog.ts +2 -0
- package/Models/DatabaseModels/StatusPageSso.ts +12 -4
- package/Models/DatabaseModels/StatusPageSubscriber.ts +139 -58
- package/Models/DatabaseModels/StatusPageSubscriberNotificationTemplate.ts +72 -30
- package/Models/DatabaseModels/StatusPageSubscriberNotificationTemplateStatusPage.ts +56 -22
- package/Models/DatabaseModels/TableView.ts +39 -13
- package/Models/DatabaseModels/Team.ts +38 -13
- package/Models/DatabaseModels/TeamMember.ts +24 -8
- package/Models/DatabaseModels/TeamMemberCustomField.ts +30 -10
- package/Models/DatabaseModels/TeamPermission.ts +76 -11
- package/Models/DatabaseModels/TelemetryException.ts +95 -31
- package/Models/DatabaseModels/TraceDropFilter.ts +42 -14
- package/Models/DatabaseModels/TracePipeline.ts +36 -12
- package/Models/DatabaseModels/TracePipelineProcessor.ts +36 -12
- package/Models/DatabaseModels/TraceRecordingRule.ts +39 -13
- package/Models/DatabaseModels/TraceScrubRule.ts +45 -15
- package/Models/DatabaseModels/UserOnCallLog.ts +2 -0
- package/Models/DatabaseModels/UserOnCallLogTimeline.ts +2 -0
- package/Models/DatabaseModels/Workflow.ts +66 -25
- package/Models/DatabaseModels/WorkflowLabelRule.ts +526 -0
- package/Models/DatabaseModels/WorkflowLog.ts +29 -9
- package/Models/DatabaseModels/WorkflowOwnerRule.ts +610 -0
- package/Models/DatabaseModels/WorkflowOwnerTeam.ts +498 -0
- package/Models/DatabaseModels/WorkflowOwnerUser.ts +497 -0
- package/Models/DatabaseModels/WorkflowVariable.ts +38 -12
- package/Models/DatabaseModels/WorkspaceNotificationRule.ts +82 -35
- package/Models/DatabaseModels/WorkspaceNotificationSummary.ts +152 -65
- package/Server/API/CommonAPI.ts +4 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1778759476700-MigrationName.ts +119 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1778761532493-MigrationName.ts +151 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1778776830462-MigrationName.ts +139 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1778777574869-MigrationName.ts +29 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1778779608191-MigrationName.ts +97 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1778782819382-AddMonitorAndStatusPageOwnerLabelRules.ts +463 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1778784000000-AddRunbookAgentJobStepType.ts +28 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1778784396629-AddHostServiceDockerK8sOwnerLabelRules.ts +909 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1778785741500-AddRunbookOwnerLabelRules.ts +183 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1778791942334-AddDashboardWorkflowOwnerLabelRules.ts +719 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1778800000000-AddTeamPermissionScope.ts +15 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1778834788959-SwitchRunbookAgentTagsToAgentId.ts +64 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1778842348388-AddRunbookAgentOwnersAndLabels.ts +133 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1778851431287-AddRunbookSecret.ts +67 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1778877094014-UpdateTeamPermissionScopeDefault.ts +19 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1778900000000-MigrateLegacyManagerRolesToAdmin.ts +51 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +32 -0
- package/Server/Infrastructure/Queue.ts +1 -0
- package/Server/Middleware/UserAuthorization.ts +13 -0
- package/Server/Services/AccessTokenService.ts +2 -0
- package/Server/Services/AlertService.ts +14 -0
- package/Server/Services/DashboardLabelRuleEngineService.ts +198 -0
- package/Server/Services/DashboardLabelRuleService.ts +14 -0
- package/Server/Services/DashboardOwnerRuleEngineService.ts +216 -0
- package/Server/Services/DashboardOwnerRuleService.ts +14 -0
- package/Server/Services/DashboardOwnerTeamService.ts +9 -0
- package/Server/Services/DashboardOwnerUserService.ts +9 -0
- package/Server/Services/DashboardService.ts +37 -0
- package/Server/Services/DatabaseService.ts +110 -0
- package/Server/Services/DockerHostLabelRuleEngineService.ts +198 -0
- package/Server/Services/DockerHostLabelRuleService.ts +14 -0
- package/Server/Services/DockerHostOwnerRuleEngineService.ts +216 -0
- package/Server/Services/DockerHostOwnerRuleService.ts +14 -0
- package/Server/Services/DockerHostService.ts +34 -1
- package/Server/Services/HostLabelRuleEngineService.ts +181 -0
- package/Server/Services/HostLabelRuleService.ts +14 -0
- package/Server/Services/HostOwnerRuleEngineService.ts +198 -0
- package/Server/Services/HostOwnerRuleService.ts +14 -0
- package/Server/Services/HostService.ts +35 -1
- package/Server/Services/IncidentEpisodeService.ts +3 -3
- package/Server/Services/IncidentService.ts +14 -0
- package/Server/Services/Index.ts +2 -0
- package/Server/Services/KubernetesClusterLabelRuleEngineService.ts +211 -0
- package/Server/Services/KubernetesClusterLabelRuleService.ts +14 -0
- package/Server/Services/KubernetesClusterOwnerRuleEngineService.ts +229 -0
- package/Server/Services/KubernetesClusterOwnerRuleService.ts +14 -0
- package/Server/Services/KubernetesClusterService.ts +34 -1
- package/Server/Services/MonitorLabelRuleEngineService.ts +300 -0
- package/Server/Services/MonitorLabelRuleService.ts +14 -0
- package/Server/Services/MonitorOwnerRuleEngineService.ts +331 -0
- package/Server/Services/MonitorOwnerRuleService.ts +14 -0
- package/Server/Services/MonitorService.ts +39 -0
- package/Server/Services/ProjectCallSMSConfigService.ts +120 -0
- package/Server/Services/RunbookAgentJobService.ts +460 -0
- package/Server/Services/RunbookAgentOwnerTeamService.ts +10 -0
- package/Server/Services/RunbookAgentOwnerUserService.ts +10 -0
- package/Server/Services/RunbookAgentService.ts +93 -0
- package/Server/Services/RunbookExecutionService.ts +10 -0
- package/Server/Services/RunbookLabelRuleEngineService.ts +194 -0
- package/Server/Services/RunbookLabelRuleService.ts +14 -0
- package/Server/Services/RunbookOwnerRuleEngineService.ts +212 -0
- package/Server/Services/RunbookOwnerRuleService.ts +14 -0
- package/Server/Services/RunbookOwnerTeamService.ts +9 -0
- package/Server/Services/RunbookOwnerUserService.ts +9 -0
- package/Server/Services/RunbookRuleEngineService.ts +302 -0
- package/Server/Services/RunbookRuleService.ts +10 -0
- package/Server/Services/RunbookSecretService.ts +10 -0
- package/Server/Services/RunbookService.ts +46 -0
- package/Server/Services/ScheduledMaintenanceService.ts +16 -0
- package/Server/Services/ServiceLabelRuleEngineService.ts +194 -0
- package/Server/Services/ServiceLabelRuleService.ts +14 -0
- package/Server/Services/ServiceOwnerRuleEngineService.ts +210 -0
- package/Server/Services/ServiceOwnerRuleService.ts +14 -0
- package/Server/Services/ServiceService.ts +29 -1
- package/Server/Services/StatusPageLabelRuleEngineService.ts +202 -0
- package/Server/Services/StatusPageLabelRuleService.ts +14 -0
- package/Server/Services/StatusPageOwnerRuleEngineService.ts +219 -0
- package/Server/Services/StatusPageOwnerRuleService.ts +14 -0
- package/Server/Services/StatusPageService.ts +30 -0
- package/Server/Services/TeamMemberService.ts +38 -0
- package/Server/Services/UserCallService.ts +16 -6
- package/Server/Services/UserNotificationRuleService.ts +18 -0
- package/Server/Services/UserNotificationSettingService.ts +13 -0
- package/Server/Services/UserSmsService.ts +23 -14
- package/Server/Services/WorkflowLabelRuleEngineService.ts +198 -0
- package/Server/Services/WorkflowLabelRuleService.ts +14 -0
- package/Server/Services/WorkflowOwnerRuleEngineService.ts +216 -0
- package/Server/Services/WorkflowOwnerRuleService.ts +14 -0
- package/Server/Services/WorkflowOwnerTeamService.ts +9 -0
- package/Server/Services/WorkflowOwnerUserService.ts +9 -0
- package/Server/Services/WorkflowService.ts +30 -0
- package/Server/Types/AnalyticsDatabase/ModelPermission.ts +240 -1
- package/Server/Types/Database/Permissions/BasePermission.ts +15 -0
- package/Server/Types/Database/Permissions/OwnedScopePermission.ts +310 -0
- package/Server/Types/Database/Permissions/OwnerTableRegistry.ts +126 -0
- package/Server/Types/Database/Permissions/TablePermission.ts +69 -1
- package/Server/Utils/Express.ts +6 -0
- package/Server/Utils/Monitor/MonitorCriteriaObservationBuilder.ts +166 -0
- package/ServiceRoute.ts +2 -0
- package/Tests/Server/Utils/Monitor/Criteria/SnmpMonitorCriteria.test.ts +318 -0
- package/Types/BaseDatabase/DatabaseCommonInteractionProps.ts +7 -0
- package/Types/Database/AccessControl/OperationalResource.ts +7 -0
- package/Types/Database/AccessControl/OwnedThrough.ts +12 -0
- package/Types/Database/AccessControl/PermissionScope.ts +7 -0
- package/Types/Monitor/MonitorSteps.ts +16 -3
- package/Types/Permission.ts +3844 -2040
- package/Types/Runbook/RunbookAgentJobStatus.ts +21 -0
- package/Types/Runbook/RunbookExecutionStatus.ts +10 -0
- package/Types/Runbook/RunbookRuleTriggerEntity.ts +7 -0
- package/Types/Runbook/RunbookStep.ts +78 -0
- package/Types/Runbook/RunbookStepExecution.ts +13 -0
- package/Types/Runbook/RunbookStepExecutionStatus.ts +11 -0
- package/Types/Runbook/RunbookStepType.ts +8 -0
- package/UI/Components/BulkUpdate/BulkUpdateForm.tsx +156 -69
- package/UI/Components/Charts/ChartGroup/ChartGroup.tsx +14 -4
- package/UI/Components/Icon/Icon.tsx +1 -1
- package/UI/Components/ModelTable/BaseModelTable.tsx +10 -3
- package/UI/Config.ts +7 -0
- package/build/dist/Models/AnalyticsModels/AuditLog.js +13 -0
- package/build/dist/Models/AnalyticsModels/AuditLog.js.map +1 -1
- package/build/dist/Models/AnalyticsModels/ExceptionInstance.js +94 -0
- package/build/dist/Models/AnalyticsModels/ExceptionInstance.js.map +1 -1
- package/build/dist/Models/AnalyticsModels/Log.js +99 -2
- package/build/dist/Models/AnalyticsModels/Log.js.map +1 -1
- package/build/dist/Models/AnalyticsModels/Metric.js +179 -2
- package/build/dist/Models/AnalyticsModels/Metric.js.map +1 -1
- package/build/dist/Models/AnalyticsModels/MonitorLog.js +29 -0
- package/build/dist/Models/AnalyticsModels/MonitorLog.js.map +1 -1
- package/build/dist/Models/AnalyticsModels/Profile.js +99 -0
- package/build/dist/Models/AnalyticsModels/Profile.js.map +1 -1
- package/build/dist/Models/AnalyticsModels/ProfileSample.js +74 -0
- package/build/dist/Models/AnalyticsModels/ProfileSample.js.map +1 -1
- package/build/dist/Models/AnalyticsModels/Span.js +134 -2
- package/build/dist/Models/AnalyticsModels/Span.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AIAgent.js +66 -30
- package/build/dist/Models/DatabaseModels/AIAgent.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AIAgentOwnerTeam.js +58 -23
- package/build/dist/Models/DatabaseModels/AIAgentOwnerTeam.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AIAgentOwnerUser.js +58 -23
- package/build/dist/Models/DatabaseModels/AIAgentOwnerUser.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AIAgentTask.js +82 -34
- package/build/dist/Models/DatabaseModels/AIAgentTask.js.map +1 -1
- package/build/dist/Models/DatabaseModels/Alert.js +199 -81
- package/build/dist/Models/DatabaseModels/Alert.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertCustomField.js +30 -10
- package/build/dist/Models/DatabaseModels/AlertCustomField.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertEpisode.js +209 -87
- package/build/dist/Models/DatabaseModels/AlertEpisode.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertEpisodeFeed.js +70 -28
- package/build/dist/Models/DatabaseModels/AlertEpisodeFeed.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertEpisodeInternalNote.js +61 -25
- package/build/dist/Models/DatabaseModels/AlertEpisodeInternalNote.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertEpisodeLabelRule.js +39 -13
- package/build/dist/Models/DatabaseModels/AlertEpisodeLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertEpisodeMember.js +87 -34
- package/build/dist/Models/DatabaseModels/AlertEpisodeMember.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertEpisodeOnCallRule.js +39 -13
- package/build/dist/Models/DatabaseModels/AlertEpisodeOnCallRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertEpisodeOwnerRule.js +45 -15
- package/build/dist/Models/DatabaseModels/AlertEpisodeOwnerRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertEpisodeOwnerTeam.js +60 -24
- package/build/dist/Models/DatabaseModels/AlertEpisodeOwnerTeam.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertEpisodeOwnerUser.js +60 -24
- package/build/dist/Models/DatabaseModels/AlertEpisodeOwnerUser.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertEpisodePrivacyRule.js +36 -12
- package/build/dist/Models/DatabaseModels/AlertEpisodePrivacyRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertEpisodeStateTimeline.js +74 -30
- package/build/dist/Models/DatabaseModels/AlertEpisodeStateTimeline.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertFeed.js +72 -28
- package/build/dist/Models/DatabaseModels/AlertFeed.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertGroupingRule.js +123 -41
- package/build/dist/Models/DatabaseModels/AlertGroupingRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertInternalNote.js +63 -25
- package/build/dist/Models/DatabaseModels/AlertInternalNote.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertLabelRule.js +54 -18
- package/build/dist/Models/DatabaseModels/AlertLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertNoteTemplate.js +50 -21
- package/build/dist/Models/DatabaseModels/AlertNoteTemplate.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertOnCallRule.js +51 -17
- package/build/dist/Models/DatabaseModels/AlertOnCallRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertOwnerRule.js +63 -21
- package/build/dist/Models/DatabaseModels/AlertOwnerRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertOwnerTeam.js +60 -24
- package/build/dist/Models/DatabaseModels/AlertOwnerTeam.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertOwnerUser.js +60 -24
- package/build/dist/Models/DatabaseModels/AlertOwnerUser.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertPrivacyRule.js +48 -16
- package/build/dist/Models/DatabaseModels/AlertPrivacyRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertSeverity.js +51 -42
- package/build/dist/Models/DatabaseModels/AlertSeverity.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertState.js +63 -56
- package/build/dist/Models/DatabaseModels/AlertState.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertStateTimeline.js +76 -30
- package/build/dist/Models/DatabaseModels/AlertStateTimeline.js.map +1 -1
- package/build/dist/Models/DatabaseModels/BillingPaymentMethod.js +36 -12
- package/build/dist/Models/DatabaseModels/BillingPaymentMethod.js.map +1 -1
- package/build/dist/Models/DatabaseModels/CodeRepository.js +84 -34
- package/build/dist/Models/DatabaseModels/CodeRepository.js.map +1 -1
- package/build/dist/Models/DatabaseModels/Dashboard.js +72 -24
- package/build/dist/Models/DatabaseModels/Dashboard.js.map +1 -1
- package/build/dist/Models/DatabaseModels/DashboardDomain.js +98 -39
- package/build/dist/Models/DatabaseModels/DashboardDomain.js.map +1 -1
- package/build/dist/Models/DatabaseModels/DashboardLabelRule.js +534 -0
- package/build/dist/Models/DatabaseModels/DashboardLabelRule.js.map +1 -0
- package/build/dist/Models/DatabaseModels/DashboardOwnerRule.js +617 -0
- package/build/dist/Models/DatabaseModels/DashboardOwnerRule.js.map +1 -0
- package/build/dist/Models/DatabaseModels/DashboardOwnerTeam.js +458 -0
- package/build/dist/Models/DatabaseModels/DashboardOwnerTeam.js.map +1 -0
- package/build/dist/Models/DatabaseModels/DashboardOwnerUser.js +457 -0
- package/build/dist/Models/DatabaseModels/DashboardOwnerUser.js.map +1 -0
- package/build/dist/Models/DatabaseModels/DatabaseBaseModel/DatabaseBaseModel.js.map +1 -1
- package/build/dist/Models/DatabaseModels/DockerHost.js +87 -34
- package/build/dist/Models/DatabaseModels/DockerHost.js.map +1 -1
- package/build/dist/Models/DatabaseModels/DockerHostLabelRule.js +534 -0
- package/build/dist/Models/DatabaseModels/DockerHostLabelRule.js.map +1 -0
- package/build/dist/Models/DatabaseModels/DockerHostOwnerRule.js +617 -0
- package/build/dist/Models/DatabaseModels/DockerHostOwnerRule.js.map +1 -0
- package/build/dist/Models/DatabaseModels/DockerHostOwnerTeam.js +58 -23
- package/build/dist/Models/DatabaseModels/DockerHostOwnerTeam.js.map +1 -1
- package/build/dist/Models/DatabaseModels/DockerHostOwnerUser.js +58 -23
- package/build/dist/Models/DatabaseModels/DockerHostOwnerUser.js.map +1 -1
- package/build/dist/Models/DatabaseModels/DockerResource.js +3 -1
- package/build/dist/Models/DatabaseModels/DockerResource.js.map +1 -1
- package/build/dist/Models/DatabaseModels/Domain.js +35 -12
- package/build/dist/Models/DatabaseModels/Domain.js.map +1 -1
- package/build/dist/Models/DatabaseModels/Host.js +114 -43
- package/build/dist/Models/DatabaseModels/Host.js.map +1 -1
- package/build/dist/Models/DatabaseModels/HostLabelRule.js +534 -0
- package/build/dist/Models/DatabaseModels/HostLabelRule.js.map +1 -0
- package/build/dist/Models/DatabaseModels/HostOwnerRule.js +617 -0
- package/build/dist/Models/DatabaseModels/HostOwnerRule.js.map +1 -0
- package/build/dist/Models/DatabaseModels/HostOwnerTeam.js +58 -23
- package/build/dist/Models/DatabaseModels/HostOwnerTeam.js.map +1 -1
- package/build/dist/Models/DatabaseModels/HostOwnerUser.js +58 -23
- package/build/dist/Models/DatabaseModels/HostOwnerUser.js.map +1 -1
- package/build/dist/Models/DatabaseModels/Incident.js +282 -116
- package/build/dist/Models/DatabaseModels/Incident.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentCustomField.js +30 -10
- package/build/dist/Models/DatabaseModels/IncidentCustomField.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentEpisode.js +237 -98
- package/build/dist/Models/DatabaseModels/IncidentEpisode.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentEpisodeFeed.js +70 -28
- package/build/dist/Models/DatabaseModels/IncidentEpisodeFeed.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentEpisodeInternalNote.js +61 -25
- package/build/dist/Models/DatabaseModels/IncidentEpisodeInternalNote.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentEpisodeLabelRule.js +39 -13
- package/build/dist/Models/DatabaseModels/IncidentEpisodeLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentEpisodeMember.js +87 -34
- package/build/dist/Models/DatabaseModels/IncidentEpisodeMember.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentEpisodeOnCallRule.js +39 -13
- package/build/dist/Models/DatabaseModels/IncidentEpisodeOnCallRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentEpisodeOwnerRule.js +45 -15
- package/build/dist/Models/DatabaseModels/IncidentEpisodeOwnerRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentEpisodeOwnerTeam.js +60 -24
- package/build/dist/Models/DatabaseModels/IncidentEpisodeOwnerTeam.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentEpisodeOwnerUser.js +60 -24
- package/build/dist/Models/DatabaseModels/IncidentEpisodeOwnerUser.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentEpisodePrivacyRule.js +36 -12
- package/build/dist/Models/DatabaseModels/IncidentEpisodePrivacyRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentEpisodePublicNote.js +87 -36
- package/build/dist/Models/DatabaseModels/IncidentEpisodePublicNote.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentEpisodeRoleMember.js +76 -31
- package/build/dist/Models/DatabaseModels/IncidentEpisodeRoleMember.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentEpisodeStateTimeline.js +85 -34
- package/build/dist/Models/DatabaseModels/IncidentEpisodeStateTimeline.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentFeed.js +72 -28
- package/build/dist/Models/DatabaseModels/IncidentFeed.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentGroupingRule.js +132 -44
- package/build/dist/Models/DatabaseModels/IncidentGroupingRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentInternalNote.js +63 -25
- package/build/dist/Models/DatabaseModels/IncidentInternalNote.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentLabelRule.js +57 -19
- package/build/dist/Models/DatabaseModels/IncidentLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentMember.js +78 -31
- package/build/dist/Models/DatabaseModels/IncidentMember.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentNoteTemplate.js +50 -21
- package/build/dist/Models/DatabaseModels/IncidentNoteTemplate.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentOnCallRule.js +51 -17
- package/build/dist/Models/DatabaseModels/IncidentOnCallRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentOwnerRule.js +63 -21
- package/build/dist/Models/DatabaseModels/IncidentOwnerRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentOwnerTeam.js +58 -23
- package/build/dist/Models/DatabaseModels/IncidentOwnerTeam.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentOwnerUser.js +60 -24
- package/build/dist/Models/DatabaseModels/IncidentOwnerUser.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentPostmortemTemplate.js +50 -21
- package/build/dist/Models/DatabaseModels/IncidentPostmortemTemplate.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentPrivacyRule.js +48 -16
- package/build/dist/Models/DatabaseModels/IncidentPrivacyRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentPublicNote.js +89 -36
- package/build/dist/Models/DatabaseModels/IncidentPublicNote.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentRole.js +79 -32
- package/build/dist/Models/DatabaseModels/IncidentRole.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentSeverity.js +51 -42
- package/build/dist/Models/DatabaseModels/IncidentSeverity.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentSla.js +56 -18
- package/build/dist/Models/DatabaseModels/IncidentSla.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentSlaRule.js +66 -22
- package/build/dist/Models/DatabaseModels/IncidentSlaRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentState.js +66 -57
- package/build/dist/Models/DatabaseModels/IncidentState.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentStateTimeline.js +95 -38
- package/build/dist/Models/DatabaseModels/IncidentStateTimeline.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentTemplate.js +126 -53
- package/build/dist/Models/DatabaseModels/IncidentTemplate.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentTemplateOwnerTeam.js +58 -23
- package/build/dist/Models/DatabaseModels/IncidentTemplateOwnerTeam.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentTemplateOwnerUser.js +94 -35
- package/build/dist/Models/DatabaseModels/IncidentTemplateOwnerUser.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncomingCallPolicy.js +126 -52
- package/build/dist/Models/DatabaseModels/IncomingCallPolicy.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncomingCallPolicyEscalationRule.js +95 -40
- package/build/dist/Models/DatabaseModels/IncomingCallPolicyEscalationRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/Index.js +65 -0
- package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
- package/build/dist/Models/DatabaseModels/KubernetesCluster.js +88 -35
- package/build/dist/Models/DatabaseModels/KubernetesCluster.js.map +1 -1
- package/build/dist/Models/DatabaseModels/KubernetesClusterLabelRule.js +534 -0
- package/build/dist/Models/DatabaseModels/KubernetesClusterLabelRule.js.map +1 -0
- package/build/dist/Models/DatabaseModels/KubernetesClusterOwnerRule.js +617 -0
- package/build/dist/Models/DatabaseModels/KubernetesClusterOwnerRule.js.map +1 -0
- package/build/dist/Models/DatabaseModels/KubernetesClusterOwnerTeam.js +58 -23
- package/build/dist/Models/DatabaseModels/KubernetesClusterOwnerTeam.js.map +1 -1
- package/build/dist/Models/DatabaseModels/KubernetesClusterOwnerUser.js +58 -23
- package/build/dist/Models/DatabaseModels/KubernetesClusterOwnerUser.js.map +1 -1
- package/build/dist/Models/DatabaseModels/KubernetesContainer.js +3 -1
- package/build/dist/Models/DatabaseModels/KubernetesContainer.js.map +1 -1
- package/build/dist/Models/DatabaseModels/KubernetesResource.js +3 -1
- package/build/dist/Models/DatabaseModels/KubernetesResource.js.map +1 -1
- package/build/dist/Models/DatabaseModels/Label.js +33 -11
- package/build/dist/Models/DatabaseModels/Label.js.map +1 -1
- package/build/dist/Models/DatabaseModels/LlmProvider.js +45 -22
- package/build/dist/Models/DatabaseModels/LlmProvider.js.map +1 -1
- package/build/dist/Models/DatabaseModels/LogDropFilter.js +42 -14
- package/build/dist/Models/DatabaseModels/LogDropFilter.js.map +1 -1
- package/build/dist/Models/DatabaseModels/LogPipeline.js +36 -12
- package/build/dist/Models/DatabaseModels/LogPipeline.js.map +1 -1
- package/build/dist/Models/DatabaseModels/LogPipelineProcessor.js +36 -12
- package/build/dist/Models/DatabaseModels/LogPipelineProcessor.js.map +1 -1
- package/build/dist/Models/DatabaseModels/LogScrubRule.js +45 -15
- package/build/dist/Models/DatabaseModels/LogScrubRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/MetricPipelineRule.js +68 -22
- package/build/dist/Models/DatabaseModels/MetricPipelineRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/MetricRecordingRule.js +39 -13
- package/build/dist/Models/DatabaseModels/MetricRecordingRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/MetricType.js +41 -15
- package/build/dist/Models/DatabaseModels/MetricType.js.map +1 -1
- package/build/dist/Models/DatabaseModels/Monitor.js +190 -76
- package/build/dist/Models/DatabaseModels/Monitor.js.map +1 -1
- package/build/dist/Models/DatabaseModels/MonitorCustomField.js +30 -10
- package/build/dist/Models/DatabaseModels/MonitorCustomField.js.map +1 -1
- package/build/dist/Models/DatabaseModels/MonitorFeed.js +74 -28
- package/build/dist/Models/DatabaseModels/MonitorFeed.js.map +1 -1
- package/build/dist/Models/DatabaseModels/MonitorGroup.js +53 -22
- package/build/dist/Models/DatabaseModels/MonitorGroup.js.map +1 -1
- package/build/dist/Models/DatabaseModels/MonitorGroupOwnerTeam.js +58 -23
- package/build/dist/Models/DatabaseModels/MonitorGroupOwnerTeam.js.map +1 -1
- package/build/dist/Models/DatabaseModels/MonitorGroupOwnerUser.js +58 -23
- package/build/dist/Models/DatabaseModels/MonitorGroupOwnerUser.js.map +1 -1
- package/build/dist/Models/DatabaseModels/MonitorGroupResource.js +55 -22
- package/build/dist/Models/DatabaseModels/MonitorGroupResource.js.map +1 -1
- package/build/dist/Models/DatabaseModels/MonitorLabelRule.js +570 -0
- package/build/dist/Models/DatabaseModels/MonitorLabelRule.js.map +1 -0
- package/build/dist/Models/DatabaseModels/MonitorOwnerRule.js +659 -0
- package/build/dist/Models/DatabaseModels/MonitorOwnerRule.js.map +1 -0
- package/build/dist/Models/DatabaseModels/MonitorOwnerTeam.js +60 -24
- package/build/dist/Models/DatabaseModels/MonitorOwnerTeam.js.map +1 -1
- package/build/dist/Models/DatabaseModels/MonitorOwnerUser.js +60 -24
- package/build/dist/Models/DatabaseModels/MonitorOwnerUser.js.map +1 -1
- package/build/dist/Models/DatabaseModels/MonitorProbe.js +53 -18
- package/build/dist/Models/DatabaseModels/MonitorProbe.js.map +1 -1
- package/build/dist/Models/DatabaseModels/MonitorStatus.js +61 -52
- package/build/dist/Models/DatabaseModels/MonitorStatus.js.map +1 -1
- package/build/dist/Models/DatabaseModels/MonitorStatusTimeline.js +76 -30
- package/build/dist/Models/DatabaseModels/MonitorStatusTimeline.js.map +1 -1
- package/build/dist/Models/DatabaseModels/MonitorTemplate.js +100 -42
- package/build/dist/Models/DatabaseModels/MonitorTemplate.js.map +1 -1
- package/build/dist/Models/DatabaseModels/MonitorTest.js +88 -36
- package/build/dist/Models/DatabaseModels/MonitorTest.js.map +1 -1
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicy.js +78 -32
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicy.js.map +1 -1
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyCustomField.js +30 -10
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyCustomField.js.map +1 -1
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRule.js +69 -28
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleSchedule.js +61 -24
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleSchedule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleTeam.js +61 -24
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleTeam.js.map +1 -1
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleUser.js +61 -24
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyEscalationRuleUser.js.map +1 -1
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.js +149 -60
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.js.map +1 -1
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLogTimeline.js +95 -31
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLogTimeline.js.map +1 -1
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyFeed.js +72 -28
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyFeed.js.map +1 -1
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyOwnerTeam.js +58 -23
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyOwnerTeam.js.map +1 -1
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyOwnerUser.js +58 -23
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyOwnerUser.js.map +1 -1
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicySchedule.js +83 -33
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicySchedule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyScheduleLayer.js +86 -35
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyScheduleLayer.js.map +1 -1
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyScheduleLayerUser.js +72 -29
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyScheduleLayerUser.js.map +1 -1
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyTimeLog.js +77 -30
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyTimeLog.js.map +1 -1
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyUserOverride.js +71 -28
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyUserOverride.js.map +1 -1
- package/build/dist/Models/DatabaseModels/Probe.js +69 -31
- package/build/dist/Models/DatabaseModels/Probe.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ProbeOwnerTeam.js +58 -23
- package/build/dist/Models/DatabaseModels/ProbeOwnerTeam.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ProbeOwnerUser.js +58 -23
- package/build/dist/Models/DatabaseModels/ProbeOwnerUser.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ProjectCallSMSConfig.js +83 -14
- package/build/dist/Models/DatabaseModels/ProjectCallSMSConfig.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ProjectOidc.js +36 -12
- package/build/dist/Models/DatabaseModels/ProjectOidc.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ProjectSCIM.js +39 -13
- package/build/dist/Models/DatabaseModels/ProjectSCIM.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ProjectSmtpConfig.js +63 -21
- package/build/dist/Models/DatabaseModels/ProjectSmtpConfig.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ProjectSso.js +39 -13
- package/build/dist/Models/DatabaseModels/ProjectSso.js.map +1 -1
- package/build/dist/Models/DatabaseModels/PromoCode.js +15 -5
- package/build/dist/Models/DatabaseModels/PromoCode.js.map +1 -1
- package/build/dist/Models/DatabaseModels/Runbook.js +572 -0
- package/build/dist/Models/DatabaseModels/Runbook.js.map +1 -0
- package/build/dist/Models/DatabaseModels/RunbookAgent.js +633 -0
- package/build/dist/Models/DatabaseModels/RunbookAgent.js.map +1 -0
- package/build/dist/Models/DatabaseModels/RunbookAgentJob.js +675 -0
- package/build/dist/Models/DatabaseModels/RunbookAgentJob.js.map +1 -0
- package/build/dist/Models/DatabaseModels/RunbookAgentOwnerTeam.js +512 -0
- package/build/dist/Models/DatabaseModels/RunbookAgentOwnerTeam.js.map +1 -0
- package/build/dist/Models/DatabaseModels/RunbookAgentOwnerUser.js +511 -0
- package/build/dist/Models/DatabaseModels/RunbookAgentOwnerUser.js.map +1 -0
- package/build/dist/Models/DatabaseModels/RunbookExecution.js +809 -0
- package/build/dist/Models/DatabaseModels/RunbookExecution.js.map +1 -0
- package/build/dist/Models/DatabaseModels/RunbookLabelRule.js +534 -0
- package/build/dist/Models/DatabaseModels/RunbookLabelRule.js.map +1 -0
- package/build/dist/Models/DatabaseModels/RunbookOwnerRule.js +617 -0
- package/build/dist/Models/DatabaseModels/RunbookOwnerRule.js.map +1 -0
- package/build/dist/Models/DatabaseModels/RunbookOwnerTeam.js +516 -0
- package/build/dist/Models/DatabaseModels/RunbookOwnerTeam.js.map +1 -0
- package/build/dist/Models/DatabaseModels/RunbookOwnerUser.js +515 -0
- package/build/dist/Models/DatabaseModels/RunbookOwnerUser.js.map +1 -0
- package/build/dist/Models/DatabaseModels/RunbookRule.js +569 -0
- package/build/dist/Models/DatabaseModels/RunbookRule.js.map +1 -0
- package/build/dist/Models/DatabaseModels/RunbookSecret.js +420 -0
- package/build/dist/Models/DatabaseModels/RunbookSecret.js.map +1 -0
- package/build/dist/Models/DatabaseModels/ScheduledMaintenance.js +179 -74
- package/build/dist/Models/DatabaseModels/ScheduledMaintenance.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceCustomField.js +30 -10
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceCustomField.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceFeed.js +72 -28
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceFeed.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceInternalNote.js +63 -25
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceInternalNote.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceLabelRule.js +51 -17
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceLabelRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceNoteTemplate.js +50 -21
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceNoteTemplate.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceOwnerRule.js +57 -19
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceOwnerRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceOwnerTeam.js +58 -23
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceOwnerTeam.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceOwnerUser.js +58 -23
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceOwnerUser.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ScheduledMaintenancePublicNote.js +89 -36
- package/build/dist/Models/DatabaseModels/ScheduledMaintenancePublicNote.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceState.js +71 -62
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceState.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceStateTimeline.js +87 -35
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceStateTimeline.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceTemplate.js +170 -72
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceTemplate.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceTemplateOwnerTeam.js +55 -22
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceTemplateOwnerTeam.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceTemplateOwnerUser.js +55 -22
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceTemplateOwnerUser.js.map +1 -1
- package/build/dist/Models/DatabaseModels/Service.js +141 -54
- package/build/dist/Models/DatabaseModels/Service.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ServiceCodeRepository.js +85 -34
- package/build/dist/Models/DatabaseModels/ServiceCodeRepository.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ServiceDependency.js +88 -33
- package/build/dist/Models/DatabaseModels/ServiceDependency.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ServiceLabelRule.js +534 -0
- package/build/dist/Models/DatabaseModels/ServiceLabelRule.js.map +1 -0
- package/build/dist/Models/DatabaseModels/ServiceMonitor.js +88 -33
- package/build/dist/Models/DatabaseModels/ServiceMonitor.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ServiceOwnerRule.js +617 -0
- package/build/dist/Models/DatabaseModels/ServiceOwnerRule.js.map +1 -0
- package/build/dist/Models/DatabaseModels/ServiceOwnerTeam.js +51 -20
- package/build/dist/Models/DatabaseModels/ServiceOwnerTeam.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ServiceOwnerUser.js +51 -20
- package/build/dist/Models/DatabaseModels/ServiceOwnerUser.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPage.js +494 -210
- package/build/dist/Models/DatabaseModels/StatusPage.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPageAnnouncement.js +105 -44
- package/build/dist/Models/DatabaseModels/StatusPageAnnouncement.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPageAnnouncementTemplate.js +79 -33
- package/build/dist/Models/DatabaseModels/StatusPageAnnouncementTemplate.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPageCustomField.js +30 -10
- package/build/dist/Models/DatabaseModels/StatusPageCustomField.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPageDomain.js +98 -39
- package/build/dist/Models/DatabaseModels/StatusPageDomain.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPageFooterLink.js +65 -26
- package/build/dist/Models/DatabaseModels/StatusPageFooterLink.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPageGroup.js +93 -38
- package/build/dist/Models/DatabaseModels/StatusPageGroup.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPageHeaderLink.js +65 -26
- package/build/dist/Models/DatabaseModels/StatusPageHeaderLink.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPageHistoryChartBarColorRule.js +62 -25
- package/build/dist/Models/DatabaseModels/StatusPageHistoryChartBarColorRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPageLabelRule.js +534 -0
- package/build/dist/Models/DatabaseModels/StatusPageLabelRule.js.map +1 -0
- package/build/dist/Models/DatabaseModels/StatusPageOidc.js +12 -4
- package/build/dist/Models/DatabaseModels/StatusPageOidc.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPageOwnerRule.js +617 -0
- package/build/dist/Models/DatabaseModels/StatusPageOwnerRule.js.map +1 -0
- package/build/dist/Models/DatabaseModels/StatusPageOwnerTeam.js +54 -21
- package/build/dist/Models/DatabaseModels/StatusPageOwnerTeam.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPageOwnerUser.js +56 -22
- package/build/dist/Models/DatabaseModels/StatusPageOwnerUser.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPagePrivateUser.js +63 -25
- package/build/dist/Models/DatabaseModels/StatusPagePrivateUser.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPagePrivateUserSession.js +2 -0
- package/build/dist/Models/DatabaseModels/StatusPagePrivateUserSession.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPageResource.js +137 -58
- package/build/dist/Models/DatabaseModels/StatusPageResource.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPageSCIM.js +2 -0
- package/build/dist/Models/DatabaseModels/StatusPageSCIM.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPageSCIMLog.js +2 -0
- package/build/dist/Models/DatabaseModels/StatusPageSCIMLog.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPageSso.js +12 -4
- package/build/dist/Models/DatabaseModels/StatusPageSso.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPageSubscriber.js +139 -58
- package/build/dist/Models/DatabaseModels/StatusPageSubscriber.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPageSubscriberNotificationTemplate.js +72 -30
- package/build/dist/Models/DatabaseModels/StatusPageSubscriberNotificationTemplate.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPageSubscriberNotificationTemplateStatusPage.js +56 -22
- package/build/dist/Models/DatabaseModels/StatusPageSubscriberNotificationTemplateStatusPage.js.map +1 -1
- package/build/dist/Models/DatabaseModels/TableView.js +39 -13
- package/build/dist/Models/DatabaseModels/TableView.js.map +1 -1
- package/build/dist/Models/DatabaseModels/Team.js +38 -13
- package/build/dist/Models/DatabaseModels/Team.js.map +1 -1
- package/build/dist/Models/DatabaseModels/TeamMember.js +24 -8
- package/build/dist/Models/DatabaseModels/TeamMember.js.map +1 -1
- package/build/dist/Models/DatabaseModels/TeamMemberCustomField.js +30 -10
- package/build/dist/Models/DatabaseModels/TeamMemberCustomField.js.map +1 -1
- package/build/dist/Models/DatabaseModels/TeamPermission.js +77 -11
- package/build/dist/Models/DatabaseModels/TeamPermission.js.map +1 -1
- package/build/dist/Models/DatabaseModels/TelemetryException.js +95 -31
- package/build/dist/Models/DatabaseModels/TelemetryException.js.map +1 -1
- package/build/dist/Models/DatabaseModels/TraceDropFilter.js +42 -14
- package/build/dist/Models/DatabaseModels/TraceDropFilter.js.map +1 -1
- package/build/dist/Models/DatabaseModels/TracePipeline.js +36 -12
- package/build/dist/Models/DatabaseModels/TracePipeline.js.map +1 -1
- package/build/dist/Models/DatabaseModels/TracePipelineProcessor.js +36 -12
- package/build/dist/Models/DatabaseModels/TracePipelineProcessor.js.map +1 -1
- package/build/dist/Models/DatabaseModels/TraceRecordingRule.js +39 -13
- package/build/dist/Models/DatabaseModels/TraceRecordingRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/TraceScrubRule.js +45 -15
- package/build/dist/Models/DatabaseModels/TraceScrubRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/UserOnCallLog.js +2 -0
- package/build/dist/Models/DatabaseModels/UserOnCallLog.js.map +1 -1
- package/build/dist/Models/DatabaseModels/UserOnCallLogTimeline.js +2 -0
- package/build/dist/Models/DatabaseModels/UserOnCallLogTimeline.js.map +1 -1
- package/build/dist/Models/DatabaseModels/Workflow.js +66 -25
- package/build/dist/Models/DatabaseModels/Workflow.js.map +1 -1
- package/build/dist/Models/DatabaseModels/WorkflowLabelRule.js +534 -0
- package/build/dist/Models/DatabaseModels/WorkflowLabelRule.js.map +1 -0
- package/build/dist/Models/DatabaseModels/WorkflowLog.js +29 -9
- package/build/dist/Models/DatabaseModels/WorkflowLog.js.map +1 -1
- package/build/dist/Models/DatabaseModels/WorkflowOwnerRule.js +617 -0
- package/build/dist/Models/DatabaseModels/WorkflowOwnerRule.js.map +1 -0
- package/build/dist/Models/DatabaseModels/WorkflowOwnerTeam.js +516 -0
- package/build/dist/Models/DatabaseModels/WorkflowOwnerTeam.js.map +1 -0
- package/build/dist/Models/DatabaseModels/WorkflowOwnerUser.js +515 -0
- package/build/dist/Models/DatabaseModels/WorkflowOwnerUser.js.map +1 -0
- package/build/dist/Models/DatabaseModels/WorkflowVariable.js +38 -12
- package/build/dist/Models/DatabaseModels/WorkflowVariable.js.map +1 -1
- package/build/dist/Models/DatabaseModels/WorkspaceNotificationRule.js +82 -35
- package/build/dist/Models/DatabaseModels/WorkspaceNotificationRule.js.map +1 -1
- package/build/dist/Models/DatabaseModels/WorkspaceNotificationSummary.js +152 -65
- package/build/dist/Models/DatabaseModels/WorkspaceNotificationSummary.js.map +1 -1
- package/build/dist/Server/API/CommonAPI.js +3 -0
- package/build/dist/Server/API/CommonAPI.js.map +1 -1
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778759476700-MigrationName.js +48 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778759476700-MigrationName.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778761532493-MigrationName.js +58 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778761532493-MigrationName.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778776830462-MigrationName.js +54 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778776830462-MigrationName.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778777574869-MigrationName.js +16 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778777574869-MigrationName.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778779608191-MigrationName.js +40 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778779608191-MigrationName.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778782819382-AddMonitorAndStatusPageOwnerLabelRules.js +170 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778782819382-AddMonitorAndStatusPageOwnerLabelRules.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778784000000-AddRunbookAgentJobStepType.js +19 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778784000000-AddRunbookAgentJobStepType.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778784396629-AddHostServiceDockerK8sOwnerLabelRules.js +326 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778784396629-AddHostServiceDockerK8sOwnerLabelRules.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778785741500-AddRunbookOwnerLabelRules.js +72 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778785741500-AddRunbookOwnerLabelRules.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778791942334-AddDashboardWorkflowOwnerLabelRules.js +258 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778791942334-AddDashboardWorkflowOwnerLabelRules.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778800000000-AddTeamPermissionScope.js +12 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778800000000-AddTeamPermissionScope.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778834788959-SwitchRunbookAgentTagsToAgentId.js +37 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778834788959-SwitchRunbookAgentTagsToAgentId.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778842348388-AddRunbookAgentOwnersAndLabels.js +52 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778842348388-AddRunbookAgentOwnersAndLabels.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778851431287-AddRunbookSecret.js +30 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778851431287-AddRunbookSecret.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778877094014-UpdateTeamPermissionScopeDefault.js +12 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778877094014-UpdateTeamPermissionScopeDefault.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778900000000-MigrateLegacyManagerRolesToAdmin.js +35 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1778900000000-MigrateLegacyManagerRolesToAdmin.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +32 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
- package/build/dist/Server/Infrastructure/Queue.js +1 -0
- package/build/dist/Server/Infrastructure/Queue.js.map +1 -1
- package/build/dist/Server/Middleware/UserAuthorization.js +9 -0
- package/build/dist/Server/Middleware/UserAuthorization.js.map +1 -1
- package/build/dist/Server/Services/AccessTokenService.js +2 -0
- package/build/dist/Server/Services/AccessTokenService.js.map +1 -1
- package/build/dist/Server/Services/AlertService.js +13 -0
- package/build/dist/Server/Services/AlertService.js.map +1 -1
- package/build/dist/Server/Services/DashboardLabelRuleEngineService.js +166 -0
- package/build/dist/Server/Services/DashboardLabelRuleEngineService.js.map +1 -0
- package/build/dist/Server/Services/DashboardLabelRuleService.js +13 -0
- package/build/dist/Server/Services/DashboardLabelRuleService.js.map +1 -0
- package/build/dist/Server/Services/DashboardOwnerRuleEngineService.js +186 -0
- package/build/dist/Server/Services/DashboardOwnerRuleEngineService.js.map +1 -0
- package/build/dist/Server/Services/DashboardOwnerRuleService.js +13 -0
- package/build/dist/Server/Services/DashboardOwnerRuleService.js.map +1 -0
- package/build/dist/Server/Services/DashboardOwnerTeamService.js +9 -0
- package/build/dist/Server/Services/DashboardOwnerTeamService.js.map +1 -0
- package/build/dist/Server/Services/DashboardOwnerUserService.js +9 -0
- package/build/dist/Server/Services/DashboardOwnerUserService.js.map +1 -0
- package/build/dist/Server/Services/DashboardService.js +32 -0
- package/build/dist/Server/Services/DashboardService.js.map +1 -1
- package/build/dist/Server/Services/DatabaseService.js +80 -0
- package/build/dist/Server/Services/DatabaseService.js.map +1 -1
- package/build/dist/Server/Services/DockerHostLabelRuleEngineService.js +166 -0
- package/build/dist/Server/Services/DockerHostLabelRuleEngineService.js.map +1 -0
- package/build/dist/Server/Services/DockerHostLabelRuleService.js +13 -0
- package/build/dist/Server/Services/DockerHostLabelRuleService.js.map +1 -0
- package/build/dist/Server/Services/DockerHostOwnerRuleEngineService.js +186 -0
- package/build/dist/Server/Services/DockerHostOwnerRuleEngineService.js.map +1 -0
- package/build/dist/Server/Services/DockerHostOwnerRuleService.js +13 -0
- package/build/dist/Server/Services/DockerHostOwnerRuleService.js.map +1 -0
- package/build/dist/Server/Services/DockerHostService.js +27 -0
- package/build/dist/Server/Services/DockerHostService.js.map +1 -1
- package/build/dist/Server/Services/HostLabelRuleEngineService.js +165 -0
- package/build/dist/Server/Services/HostLabelRuleEngineService.js.map +1 -0
- package/build/dist/Server/Services/HostLabelRuleService.js +13 -0
- package/build/dist/Server/Services/HostLabelRuleService.js.map +1 -0
- package/build/dist/Server/Services/HostOwnerRuleEngineService.js +187 -0
- package/build/dist/Server/Services/HostOwnerRuleEngineService.js.map +1 -0
- package/build/dist/Server/Services/HostOwnerRuleService.js +13 -0
- package/build/dist/Server/Services/HostOwnerRuleService.js.map +1 -0
- package/build/dist/Server/Services/HostService.js +32 -0
- package/build/dist/Server/Services/HostService.js.map +1 -1
- package/build/dist/Server/Services/IncidentEpisodeService.js +3 -3
- package/build/dist/Server/Services/IncidentEpisodeService.js.map +1 -1
- package/build/dist/Server/Services/IncidentService.js +13 -0
- package/build/dist/Server/Services/IncidentService.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/KubernetesClusterLabelRuleEngineService.js +167 -0
- package/build/dist/Server/Services/KubernetesClusterLabelRuleEngineService.js.map +1 -0
- package/build/dist/Server/Services/KubernetesClusterLabelRuleService.js +13 -0
- package/build/dist/Server/Services/KubernetesClusterLabelRuleService.js.map +1 -0
- package/build/dist/Server/Services/KubernetesClusterOwnerRuleEngineService.js +187 -0
- package/build/dist/Server/Services/KubernetesClusterOwnerRuleEngineService.js.map +1 -0
- package/build/dist/Server/Services/KubernetesClusterOwnerRuleService.js +13 -0
- package/build/dist/Server/Services/KubernetesClusterOwnerRuleService.js.map +1 -0
- package/build/dist/Server/Services/KubernetesClusterService.js +27 -0
- package/build/dist/Server/Services/KubernetesClusterService.js.map +1 -1
- package/build/dist/Server/Services/MonitorLabelRuleEngineService.js +252 -0
- package/build/dist/Server/Services/MonitorLabelRuleEngineService.js.map +1 -0
- package/build/dist/Server/Services/MonitorLabelRuleService.js +13 -0
- package/build/dist/Server/Services/MonitorLabelRuleService.js.map +1 -0
- package/build/dist/Server/Services/MonitorOwnerRuleEngineService.js +272 -0
- package/build/dist/Server/Services/MonitorOwnerRuleEngineService.js.map +1 -0
- package/build/dist/Server/Services/MonitorOwnerRuleService.js +13 -0
- package/build/dist/Server/Services/MonitorOwnerRuleService.js.map +1 -0
- package/build/dist/Server/Services/MonitorService.js +37 -0
- package/build/dist/Server/Services/MonitorService.js.map +1 -1
- package/build/dist/Server/Services/ProjectCallSMSConfigService.js +126 -0
- package/build/dist/Server/Services/ProjectCallSMSConfigService.js.map +1 -1
- package/build/dist/Server/Services/RunbookAgentJobService.js +393 -0
- package/build/dist/Server/Services/RunbookAgentJobService.js.map +1 -0
- package/build/dist/Server/Services/RunbookAgentOwnerTeamService.js +9 -0
- package/build/dist/Server/Services/RunbookAgentOwnerTeamService.js.map +1 -0
- package/build/dist/Server/Services/RunbookAgentOwnerUserService.js +9 -0
- package/build/dist/Server/Services/RunbookAgentOwnerUserService.js.map +1 -0
- package/build/dist/Server/Services/RunbookAgentService.js +91 -0
- package/build/dist/Server/Services/RunbookAgentService.js.map +1 -0
- package/build/dist/Server/Services/RunbookExecutionService.js +9 -0
- package/build/dist/Server/Services/RunbookExecutionService.js.map +1 -0
- package/build/dist/Server/Services/RunbookLabelRuleEngineService.js +166 -0
- package/build/dist/Server/Services/RunbookLabelRuleEngineService.js.map +1 -0
- package/build/dist/Server/Services/RunbookLabelRuleService.js +13 -0
- package/build/dist/Server/Services/RunbookLabelRuleService.js.map +1 -0
- package/build/dist/Server/Services/RunbookOwnerRuleEngineService.js +186 -0
- package/build/dist/Server/Services/RunbookOwnerRuleEngineService.js.map +1 -0
- package/build/dist/Server/Services/RunbookOwnerRuleService.js +13 -0
- package/build/dist/Server/Services/RunbookOwnerRuleService.js.map +1 -0
- package/build/dist/Server/Services/RunbookOwnerTeamService.js +9 -0
- package/build/dist/Server/Services/RunbookOwnerTeamService.js.map +1 -0
- package/build/dist/Server/Services/RunbookOwnerUserService.js +9 -0
- package/build/dist/Server/Services/RunbookOwnerUserService.js.map +1 -0
- package/build/dist/Server/Services/RunbookRuleEngineService.js +269 -0
- package/build/dist/Server/Services/RunbookRuleEngineService.js.map +1 -0
- package/build/dist/Server/Services/RunbookRuleService.js +9 -0
- package/build/dist/Server/Services/RunbookRuleService.js.map +1 -0
- package/build/dist/Server/Services/RunbookSecretService.js +9 -0
- package/build/dist/Server/Services/RunbookSecretService.js.map +1 -0
- package/build/dist/Server/Services/RunbookService.js +52 -0
- package/build/dist/Server/Services/RunbookService.js.map +1 -0
- package/build/dist/Server/Services/ScheduledMaintenanceService.js +13 -0
- package/build/dist/Server/Services/ScheduledMaintenanceService.js.map +1 -1
- package/build/dist/Server/Services/ServiceLabelRuleEngineService.js +166 -0
- package/build/dist/Server/Services/ServiceLabelRuleEngineService.js.map +1 -0
- package/build/dist/Server/Services/ServiceLabelRuleService.js +13 -0
- package/build/dist/Server/Services/ServiceLabelRuleService.js.map +1 -0
- package/build/dist/Server/Services/ServiceOwnerRuleEngineService.js +184 -0
- package/build/dist/Server/Services/ServiceOwnerRuleEngineService.js.map +1 -0
- package/build/dist/Server/Services/ServiceOwnerRuleService.js +13 -0
- package/build/dist/Server/Services/ServiceOwnerRuleService.js.map +1 -0
- package/build/dist/Server/Services/ServiceService.js +27 -0
- package/build/dist/Server/Services/ServiceService.js.map +1 -1
- package/build/dist/Server/Services/StatusPageLabelRuleEngineService.js +168 -0
- package/build/dist/Server/Services/StatusPageLabelRuleEngineService.js.map +1 -0
- package/build/dist/Server/Services/StatusPageLabelRuleService.js +13 -0
- package/build/dist/Server/Services/StatusPageLabelRuleService.js.map +1 -0
- package/build/dist/Server/Services/StatusPageOwnerRuleEngineService.js +175 -0
- package/build/dist/Server/Services/StatusPageOwnerRuleEngineService.js.map +1 -0
- package/build/dist/Server/Services/StatusPageOwnerRuleService.js +13 -0
- package/build/dist/Server/Services/StatusPageOwnerRuleService.js.map +1 -0
- package/build/dist/Server/Services/StatusPageService.js +23 -0
- package/build/dist/Server/Services/StatusPageService.js.map +1 -1
- package/build/dist/Server/Services/TeamMemberService.js +39 -0
- package/build/dist/Server/Services/TeamMemberService.js.map +1 -1
- package/build/dist/Server/Services/UserCallService.js +11 -6
- package/build/dist/Server/Services/UserCallService.js.map +1 -1
- package/build/dist/Server/Services/UserNotificationRuleService.js +13 -0
- package/build/dist/Server/Services/UserNotificationRuleService.js.map +1 -1
- package/build/dist/Server/Services/UserNotificationSettingService.js +8 -0
- package/build/dist/Server/Services/UserNotificationSettingService.js.map +1 -1
- package/build/dist/Server/Services/UserSmsService.js +14 -10
- package/build/dist/Server/Services/UserSmsService.js.map +1 -1
- package/build/dist/Server/Services/WorkflowLabelRuleEngineService.js +166 -0
- package/build/dist/Server/Services/WorkflowLabelRuleEngineService.js.map +1 -0
- package/build/dist/Server/Services/WorkflowLabelRuleService.js +13 -0
- package/build/dist/Server/Services/WorkflowLabelRuleService.js.map +1 -0
- package/build/dist/Server/Services/WorkflowOwnerRuleEngineService.js +186 -0
- package/build/dist/Server/Services/WorkflowOwnerRuleEngineService.js.map +1 -0
- package/build/dist/Server/Services/WorkflowOwnerRuleService.js +13 -0
- package/build/dist/Server/Services/WorkflowOwnerRuleService.js.map +1 -0
- package/build/dist/Server/Services/WorkflowOwnerTeamService.js +9 -0
- package/build/dist/Server/Services/WorkflowOwnerTeamService.js.map +1 -0
- package/build/dist/Server/Services/WorkflowOwnerUserService.js +9 -0
- package/build/dist/Server/Services/WorkflowOwnerUserService.js.map +1 -0
- package/build/dist/Server/Services/WorkflowService.js +23 -0
- package/build/dist/Server/Services/WorkflowService.js.map +1 -1
- package/build/dist/Server/Types/AnalyticsDatabase/ModelPermission.js +158 -1
- package/build/dist/Server/Types/AnalyticsDatabase/ModelPermission.js.map +1 -1
- package/build/dist/Server/Types/Database/Permissions/BasePermission.js +9 -0
- package/build/dist/Server/Types/Database/Permissions/BasePermission.js.map +1 -1
- package/build/dist/Server/Types/Database/Permissions/OwnedScopePermission.js +241 -0
- package/build/dist/Server/Types/Database/Permissions/OwnedScopePermission.js.map +1 -0
- package/build/dist/Server/Types/Database/Permissions/OwnerTableRegistry.js +104 -0
- package/build/dist/Server/Types/Database/Permissions/OwnerTableRegistry.js.map +1 -0
- package/build/dist/Server/Types/Database/Permissions/TablePermission.js +48 -2
- package/build/dist/Server/Types/Database/Permissions/TablePermission.js.map +1 -1
- package/build/dist/Server/Utils/Express.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorCriteriaObservationBuilder.js +90 -0
- package/build/dist/Server/Utils/Monitor/MonitorCriteriaObservationBuilder.js.map +1 -1
- package/build/dist/ServiceRoute.js +1 -0
- package/build/dist/ServiceRoute.js.map +1 -1
- package/build/dist/Tests/Server/Utils/Monitor/Criteria/SnmpMonitorCriteria.test.js +255 -0
- package/build/dist/Tests/Server/Utils/Monitor/Criteria/SnmpMonitorCriteria.test.js.map +1 -0
- package/build/dist/Types/Database/AccessControl/OperationalResource.js +6 -0
- package/build/dist/Types/Database/AccessControl/OperationalResource.js.map +1 -0
- package/build/dist/Types/Database/AccessControl/OwnedThrough.js +6 -0
- package/build/dist/Types/Database/AccessControl/OwnedThrough.js.map +1 -0
- package/build/dist/Types/Database/AccessControl/PermissionScope.js +8 -0
- package/build/dist/Types/Database/AccessControl/PermissionScope.js.map +1 -0
- package/build/dist/Types/Monitor/MonitorSteps.js +16 -2
- package/build/dist/Types/Monitor/MonitorSteps.js.map +1 -1
- package/build/dist/Types/Permission.js +3462 -1878
- package/build/dist/Types/Permission.js.map +1 -1
- package/build/dist/Types/Runbook/RunbookAgentJobStatus.js +22 -0
- package/build/dist/Types/Runbook/RunbookAgentJobStatus.js.map +1 -0
- package/build/dist/Types/Runbook/RunbookExecutionStatus.js +11 -0
- package/build/dist/Types/Runbook/RunbookExecutionStatus.js.map +1 -0
- package/build/dist/Types/Runbook/RunbookRuleTriggerEntity.js +8 -0
- package/build/dist/Types/Runbook/RunbookRuleTriggerEntity.js.map +1 -0
- package/build/dist/Types/Runbook/RunbookStep.js +2 -0
- package/build/dist/Types/Runbook/RunbookStep.js.map +1 -0
- package/build/dist/Types/Runbook/RunbookStepExecution.js +2 -0
- package/build/dist/Types/Runbook/RunbookStepExecution.js.map +1 -0
- package/build/dist/Types/Runbook/RunbookStepExecutionStatus.js +12 -0
- package/build/dist/Types/Runbook/RunbookStepExecutionStatus.js.map +1 -0
- package/build/dist/Types/Runbook/RunbookStepType.js +9 -0
- package/build/dist/Types/Runbook/RunbookStepType.js.map +1 -0
- package/build/dist/UI/Components/BulkUpdate/BulkUpdateForm.js +99 -50
- package/build/dist/UI/Components/BulkUpdate/BulkUpdateForm.js.map +1 -1
- package/build/dist/UI/Components/Charts/ChartGroup/ChartGroup.js +13 -2
- package/build/dist/UI/Components/Charts/ChartGroup/ChartGroup.js.map +1 -1
- package/build/dist/UI/Components/Icon/Icon.js +1 -1
- package/build/dist/UI/Components/Icon/Icon.js.map +1 -1
- package/build/dist/UI/Components/ModelTable/BaseModelTable.js +4 -1
- package/build/dist/UI/Components/ModelTable/BaseModelTable.js.map +1 -1
- package/build/dist/UI/Config.js +2 -1
- package/build/dist/UI/Config.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,198 @@
|
|
|
1
|
+
import Label from "../../Models/DatabaseModels/Label";
|
|
2
|
+
import Host from "../../Models/DatabaseModels/Host";
|
|
3
|
+
import HostOwnerRule from "../../Models/DatabaseModels/HostOwnerRule";
|
|
4
|
+
import HostOwnerUser from "../../Models/DatabaseModels/HostOwnerUser";
|
|
5
|
+
import HostOwnerTeam from "../../Models/DatabaseModels/HostOwnerTeam";
|
|
6
|
+
import HostOwnerRuleService from "./HostOwnerRuleService";
|
|
7
|
+
import HostOwnerUserService from "./HostOwnerUserService";
|
|
8
|
+
import HostOwnerTeamService from "./HostOwnerTeamService";
|
|
9
|
+
import HostService from "./HostService";
|
|
10
|
+
import ObjectID from "../../Types/ObjectID";
|
|
11
|
+
import CaptureSpan from "../Utils/Telemetry/CaptureSpan";
|
|
12
|
+
import logger, { LogAttributes } from "../Utils/Logger";
|
|
13
|
+
|
|
14
|
+
class HostOwnerRuleEngineServiceClass {
|
|
15
|
+
/**
|
|
16
|
+
* Evaluates HostOwnerRule rows for the given host and adds matched
|
|
17
|
+
* owner users / teams via HostOwnerUserService / HostOwnerTeamService. Rules
|
|
18
|
+
* with notifyOwners set notify the added owners; rules with notifyOwners off
|
|
19
|
+
* add silently.
|
|
20
|
+
*/
|
|
21
|
+
@CaptureSpan()
|
|
22
|
+
public async applyRulesToHost(host: Host): Promise<void> {
|
|
23
|
+
if (!host.id || !host.projectId) {
|
|
24
|
+
return;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
try {
|
|
28
|
+
const rules: Array<HostOwnerRule> = await HostOwnerRuleService.findBy({
|
|
29
|
+
query: {
|
|
30
|
+
projectId: host.projectId,
|
|
31
|
+
isEnabled: true,
|
|
32
|
+
},
|
|
33
|
+
props: { isRoot: true },
|
|
34
|
+
select: {
|
|
35
|
+
_id: true,
|
|
36
|
+
name: true,
|
|
37
|
+
notifyOwners: true,
|
|
38
|
+
hostLabels: { _id: true },
|
|
39
|
+
hostNamePattern: true,
|
|
40
|
+
hostDescriptionPattern: true,
|
|
41
|
+
ownerUsers: { _id: true },
|
|
42
|
+
ownerTeams: { _id: true },
|
|
43
|
+
},
|
|
44
|
+
limit: 100,
|
|
45
|
+
skip: 0,
|
|
46
|
+
});
|
|
47
|
+
|
|
48
|
+
if (rules.length === 0) {
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
const hostWithDetails: Host | null = await HostService.findOneById({
|
|
53
|
+
id: host.id,
|
|
54
|
+
select: {
|
|
55
|
+
name: true,
|
|
56
|
+
description: true,
|
|
57
|
+
labels: { _id: true },
|
|
58
|
+
},
|
|
59
|
+
props: { isRoot: true },
|
|
60
|
+
});
|
|
61
|
+
|
|
62
|
+
if (!hostWithDetails) {
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
const usersByNotify: Map<boolean, Set<string>> = new Map([
|
|
67
|
+
[true, new Set()],
|
|
68
|
+
[false, new Set()],
|
|
69
|
+
]);
|
|
70
|
+
const teamsByNotify: Map<boolean, Set<string>> = new Map([
|
|
71
|
+
[true, new Set()],
|
|
72
|
+
[false, new Set()],
|
|
73
|
+
]);
|
|
74
|
+
|
|
75
|
+
const matchedRules: Array<HostOwnerRule> = [];
|
|
76
|
+
|
|
77
|
+
for (const rule of rules) {
|
|
78
|
+
const matches: boolean = this.doesHostMatchRule(hostWithDetails, rule);
|
|
79
|
+
if (!matches) {
|
|
80
|
+
continue;
|
|
81
|
+
}
|
|
82
|
+
let ruleAddedAny: boolean = false;
|
|
83
|
+
const notify: boolean = rule.notifyOwners !== false;
|
|
84
|
+
for (const user of rule.ownerUsers || []) {
|
|
85
|
+
if (user.id) {
|
|
86
|
+
usersByNotify.get(notify)!.add(user.id.toString());
|
|
87
|
+
ruleAddedAny = true;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
for (const team of rule.ownerTeams || []) {
|
|
91
|
+
if (team.id) {
|
|
92
|
+
teamsByNotify.get(notify)!.add(team.id.toString());
|
|
93
|
+
ruleAddedAny = true;
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
if (ruleAddedAny) {
|
|
97
|
+
matchedRules.push(rule);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
if (matchedRules.length === 0) {
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
for (const notify of [true, false]) {
|
|
106
|
+
const userIds: Set<string> = usersByNotify.get(notify)!;
|
|
107
|
+
const teamIds: Set<string> = teamsByNotify.get(notify)!;
|
|
108
|
+
|
|
109
|
+
for (const userId of userIds) {
|
|
110
|
+
const owner: HostOwnerUser = new HostOwnerUser();
|
|
111
|
+
owner.hostId = host.id;
|
|
112
|
+
owner.projectId = host.projectId;
|
|
113
|
+
owner.userId = new ObjectID(userId);
|
|
114
|
+
owner.isOwnerNotified = !notify;
|
|
115
|
+
await HostOwnerUserService.create({
|
|
116
|
+
data: owner,
|
|
117
|
+
props: { isRoot: true },
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
for (const teamId of teamIds) {
|
|
122
|
+
const owner: HostOwnerTeam = new HostOwnerTeam();
|
|
123
|
+
owner.hostId = host.id;
|
|
124
|
+
owner.projectId = host.projectId;
|
|
125
|
+
owner.teamId = new ObjectID(teamId);
|
|
126
|
+
owner.isOwnerNotified = !notify;
|
|
127
|
+
await HostOwnerTeamService.create({
|
|
128
|
+
data: owner,
|
|
129
|
+
props: { isRoot: true },
|
|
130
|
+
});
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
logger.debug(`HostOwnerRuleEngine added owners to host ${host.id}`, {
|
|
135
|
+
projectId: host.projectId.toString(),
|
|
136
|
+
} as LogAttributes);
|
|
137
|
+
} catch (error) {
|
|
138
|
+
logger.error(`Error applying host owner rules: ${error}`, {
|
|
139
|
+
projectId: host.projectId?.toString(),
|
|
140
|
+
hostId: host.id?.toString(),
|
|
141
|
+
} as LogAttributes);
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
private doesHostMatchRule(host: Host, rule: HostOwnerRule): boolean {
|
|
146
|
+
if (rule.hostLabels && rule.hostLabels.length > 0) {
|
|
147
|
+
if (!host.labels || host.labels.length === 0) {
|
|
148
|
+
return false;
|
|
149
|
+
}
|
|
150
|
+
const ruleLabelIds: Array<string> = rule.hostLabels.map((l: Label) => {
|
|
151
|
+
return l.id?.toString() || "";
|
|
152
|
+
});
|
|
153
|
+
const labelIds: Array<string> = host.labels.map((l: Label) => {
|
|
154
|
+
return l.id?.toString() || "";
|
|
155
|
+
});
|
|
156
|
+
if (
|
|
157
|
+
!ruleLabelIds.some((id: string) => {
|
|
158
|
+
return labelIds.includes(id);
|
|
159
|
+
})
|
|
160
|
+
) {
|
|
161
|
+
return false;
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
if (
|
|
166
|
+
rule.hostNamePattern &&
|
|
167
|
+
(!host.name || !this.testRegex(rule.hostNamePattern, host.name, rule))
|
|
168
|
+
) {
|
|
169
|
+
return false;
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
if (
|
|
173
|
+
rule.hostDescriptionPattern &&
|
|
174
|
+
(!host.description ||
|
|
175
|
+
!this.testRegex(rule.hostDescriptionPattern, host.description, rule))
|
|
176
|
+
) {
|
|
177
|
+
return false;
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
return true;
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
private testRegex(
|
|
184
|
+
pattern: string,
|
|
185
|
+
value: string,
|
|
186
|
+
rule: HostOwnerRule,
|
|
187
|
+
): boolean {
|
|
188
|
+
try {
|
|
189
|
+
const regex: RegExp = new RegExp(pattern, "i");
|
|
190
|
+
return regex.test(value);
|
|
191
|
+
} catch {
|
|
192
|
+
logger.warn(`Invalid regex in host owner rule ${rule.id}: ${pattern}`);
|
|
193
|
+
return false;
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
export default new HostOwnerRuleEngineServiceClass();
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import DatabaseService from "./DatabaseService";
|
|
2
|
+
import Model from "../../Models/DatabaseModels/HostOwnerRule";
|
|
3
|
+
import { IsBillingEnabled } from "../EnvironmentConfig";
|
|
4
|
+
|
|
5
|
+
export class Service extends DatabaseService<Model> {
|
|
6
|
+
public constructor() {
|
|
7
|
+
super(Model);
|
|
8
|
+
if (IsBillingEnabled) {
|
|
9
|
+
this.hardDeleteItemsOlderThanInDays("createdAt", 3 * 365);
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export default new Service();
|
|
@@ -1,13 +1,16 @@
|
|
|
1
1
|
import DatabaseService from "./DatabaseService";
|
|
2
|
+
import HostLabelRuleEngineService from "./HostLabelRuleEngineService";
|
|
3
|
+
import HostOwnerRuleEngineService from "./HostOwnerRuleEngineService";
|
|
2
4
|
import Model from "../../Models/DatabaseModels/Host";
|
|
3
5
|
import Label from "../../Models/DatabaseModels/Label";
|
|
6
|
+
import { OnCreate } from "../Types/Database/Hooks";
|
|
4
7
|
import CaptureSpan from "../Utils/Telemetry/CaptureSpan";
|
|
5
8
|
import ObjectID from "../../Types/ObjectID";
|
|
6
9
|
import QueryHelper from "../Types/Database/QueryHelper";
|
|
7
10
|
import OneUptimeDate from "../../Types/Date";
|
|
8
11
|
import LIMIT_MAX from "../../Types/Database/LimitMax";
|
|
9
12
|
import GlobalCache from "../Infrastructure/GlobalCache";
|
|
10
|
-
import logger from "../Utils/Logger";
|
|
13
|
+
import logger, { LogAttributes } from "../Utils/Logger";
|
|
11
14
|
import crypto from "crypto";
|
|
12
15
|
|
|
13
16
|
const LAST_SEEN_CACHE_NAMESPACE: string = "host-last-seen";
|
|
@@ -21,6 +24,37 @@ export class Service extends DatabaseService<Model> {
|
|
|
21
24
|
super(Model);
|
|
22
25
|
}
|
|
23
26
|
|
|
27
|
+
@CaptureSpan()
|
|
28
|
+
protected override async onCreateSuccess(
|
|
29
|
+
_onCreate: OnCreate<Model>,
|
|
30
|
+
createdItem: Model,
|
|
31
|
+
): Promise<Model> {
|
|
32
|
+
if (createdItem.projectId && createdItem.id) {
|
|
33
|
+
/*
|
|
34
|
+
* Run label rule first so rule-added labels are persisted before
|
|
35
|
+
* owner rules run. Owner rules re-fetch labels, so this lets owner
|
|
36
|
+
* rules key on rule-added labels.
|
|
37
|
+
*/
|
|
38
|
+
Promise.resolve()
|
|
39
|
+
.then(async () => {
|
|
40
|
+
await HostLabelRuleEngineService.applyRulesToHost(createdItem);
|
|
41
|
+
})
|
|
42
|
+
.then(async () => {
|
|
43
|
+
await HostOwnerRuleEngineService.applyRulesToHost(createdItem);
|
|
44
|
+
})
|
|
45
|
+
.catch((error: Error) => {
|
|
46
|
+
logger.error(
|
|
47
|
+
`Error applying host rules in HostService.onCreateSuccess: ${error}`,
|
|
48
|
+
{
|
|
49
|
+
projectId: createdItem.projectId?.toString(),
|
|
50
|
+
hostId: createdItem.id?.toString(),
|
|
51
|
+
} as LogAttributes,
|
|
52
|
+
);
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
return createdItem;
|
|
56
|
+
}
|
|
57
|
+
|
|
24
58
|
@CaptureSpan()
|
|
25
59
|
public async findOrCreateByHostIdentifier(data: {
|
|
26
60
|
projectId: ObjectID;
|
|
@@ -717,7 +717,7 @@ export class Service extends DatabaseService<Model> {
|
|
|
717
717
|
projectId: episode.projectId,
|
|
718
718
|
episodeId: episodeId,
|
|
719
719
|
incidentStateId: incidentState.id,
|
|
720
|
-
notifyOwners:
|
|
720
|
+
notifyOwners: true,
|
|
721
721
|
rootCause: acknowledgedByUserId
|
|
722
722
|
? `Acknowledged by user.`
|
|
723
723
|
: "Acknowledged via API.",
|
|
@@ -773,7 +773,7 @@ export class Service extends DatabaseService<Model> {
|
|
|
773
773
|
projectId: episode.projectId,
|
|
774
774
|
episodeId: episodeId,
|
|
775
775
|
incidentStateId: incidentState.id,
|
|
776
|
-
notifyOwners:
|
|
776
|
+
notifyOwners: true,
|
|
777
777
|
rootCause: resolvedByUserId ? `Resolved by user.` : "Resolved via API.",
|
|
778
778
|
props: {
|
|
779
779
|
isRoot: true,
|
|
@@ -827,7 +827,7 @@ export class Service extends DatabaseService<Model> {
|
|
|
827
827
|
projectId: episode.projectId,
|
|
828
828
|
episodeId: episodeId,
|
|
829
829
|
incidentStateId: incidentState.id,
|
|
830
|
-
notifyOwners:
|
|
830
|
+
notifyOwners: true,
|
|
831
831
|
rootCause: reopenedByUserId ? `Reopened by user.` : "Reopened via API.",
|
|
832
832
|
props: {
|
|
833
833
|
isRoot: true,
|
|
@@ -59,6 +59,7 @@ import IncidentLabelRuleEngineService from "./IncidentLabelRuleEngineService";
|
|
|
59
59
|
import IncidentOnCallRuleEngineService from "./IncidentOnCallRuleEngineService";
|
|
60
60
|
import IncidentOwnerRuleEngineService from "./IncidentOwnerRuleEngineService";
|
|
61
61
|
import IncidentPrivacyRuleEngineService from "./IncidentPrivacyRuleEngineService";
|
|
62
|
+
import RunbookRuleEngineService from "./RunbookRuleEngineService";
|
|
62
63
|
import { Blue500, Gray500, Red500 } from "../../Types/BrandColors";
|
|
63
64
|
import Label from "../../Models/DatabaseModels/Label";
|
|
64
65
|
import LabelService from "./LabelService";
|
|
@@ -920,6 +921,19 @@ export class Service extends DatabaseService<Model> {
|
|
|
920
921
|
);
|
|
921
922
|
}
|
|
922
923
|
})
|
|
924
|
+
.then(async () => {
|
|
925
|
+
try {
|
|
926
|
+
await RunbookRuleEngineService.applyRulesToIncident(createdItem);
|
|
927
|
+
} catch (error) {
|
|
928
|
+
logger.error(
|
|
929
|
+
`Apply runbook rules failed in IncidentService.onCreateSuccess: ${error}`,
|
|
930
|
+
{
|
|
931
|
+
projectId: createdItem.projectId?.toString(),
|
|
932
|
+
incidentId: createdItem.id?.toString(),
|
|
933
|
+
} as LogAttributes,
|
|
934
|
+
);
|
|
935
|
+
}
|
|
936
|
+
})
|
|
923
937
|
.then(async () => {
|
|
924
938
|
try {
|
|
925
939
|
if (
|
package/Server/Services/Index.ts
CHANGED
|
@@ -52,6 +52,7 @@ import MonitorOwnerTeamService from "./MonitorOwnerTeamService";
|
|
|
52
52
|
import MonitorOwnerUserService from "./MonitorOwnerUserService";
|
|
53
53
|
import MonitorProbeService from "./MonitorProbeService";
|
|
54
54
|
import MonitorSecretService from "./MonitorSecretService";
|
|
55
|
+
import RunbookSecretService from "./RunbookSecretService";
|
|
55
56
|
|
|
56
57
|
// Monitors
|
|
57
58
|
import MonitorService from "./MonitorService";
|
|
@@ -280,6 +281,7 @@ const services: Array<BaseService> = [
|
|
|
280
281
|
MonitorStatusService,
|
|
281
282
|
MonitorStatusTimelineService,
|
|
282
283
|
MonitorSecretService,
|
|
284
|
+
RunbookSecretService,
|
|
283
285
|
MonitorFeedService,
|
|
284
286
|
|
|
285
287
|
NotificationService,
|
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
import Label from "../../Models/DatabaseModels/Label";
|
|
2
|
+
import KubernetesCluster from "../../Models/DatabaseModels/KubernetesCluster";
|
|
3
|
+
import KubernetesClusterLabelRule from "../../Models/DatabaseModels/KubernetesClusterLabelRule";
|
|
4
|
+
import KubernetesClusterLabelRuleService from "./KubernetesClusterLabelRuleService";
|
|
5
|
+
import KubernetesClusterService from "./KubernetesClusterService";
|
|
6
|
+
import ObjectID from "../../Types/ObjectID";
|
|
7
|
+
import CaptureSpan from "../Utils/Telemetry/CaptureSpan";
|
|
8
|
+
import logger, { LogAttributes } from "../Utils/Logger";
|
|
9
|
+
|
|
10
|
+
class KubernetesClusterLabelRuleEngineServiceClass {
|
|
11
|
+
/**
|
|
12
|
+
* Evaluates KubernetesClusterLabelRule rows for the given Kubernetes cluster and attaches matched
|
|
13
|
+
* labels to it. The union is deduped against labels already on the Kubernetes cluster
|
|
14
|
+
* before insert to avoid PK conflicts on the join table.
|
|
15
|
+
*/
|
|
16
|
+
@CaptureSpan()
|
|
17
|
+
public async applyRulesToKubernetesCluster(
|
|
18
|
+
kubernetesCluster: KubernetesCluster,
|
|
19
|
+
): Promise<void> {
|
|
20
|
+
if (!kubernetesCluster.id || !kubernetesCluster.projectId) {
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
try {
|
|
25
|
+
const rules: Array<KubernetesClusterLabelRule> =
|
|
26
|
+
await KubernetesClusterLabelRuleService.findBy({
|
|
27
|
+
query: {
|
|
28
|
+
projectId: kubernetesCluster.projectId,
|
|
29
|
+
isEnabled: true,
|
|
30
|
+
},
|
|
31
|
+
props: { isRoot: true },
|
|
32
|
+
select: {
|
|
33
|
+
_id: true,
|
|
34
|
+
name: true,
|
|
35
|
+
kubernetesClusterLabels: { _id: true },
|
|
36
|
+
kubernetesClusterNamePattern: true,
|
|
37
|
+
kubernetesClusterDescriptionPattern: true,
|
|
38
|
+
labelsToAdd: { _id: true },
|
|
39
|
+
},
|
|
40
|
+
limit: 100,
|
|
41
|
+
skip: 0,
|
|
42
|
+
});
|
|
43
|
+
|
|
44
|
+
if (rules.length === 0) {
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
const kubernetesClusterWithDetails: KubernetesCluster | null =
|
|
49
|
+
await KubernetesClusterService.findOneById({
|
|
50
|
+
id: kubernetesCluster.id,
|
|
51
|
+
select: {
|
|
52
|
+
name: true,
|
|
53
|
+
description: true,
|
|
54
|
+
labels: { _id: true },
|
|
55
|
+
},
|
|
56
|
+
props: { isRoot: true },
|
|
57
|
+
});
|
|
58
|
+
|
|
59
|
+
if (!kubernetesClusterWithDetails) {
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
const labelIdsToAdd: Set<string> = new Set();
|
|
64
|
+
|
|
65
|
+
for (const rule of rules) {
|
|
66
|
+
const matches: boolean = this.doesKubernetesClusterMatchRule(
|
|
67
|
+
kubernetesClusterWithDetails,
|
|
68
|
+
rule,
|
|
69
|
+
);
|
|
70
|
+
if (!matches) {
|
|
71
|
+
continue;
|
|
72
|
+
}
|
|
73
|
+
for (const label of rule.labelsToAdd || []) {
|
|
74
|
+
if (label.id) {
|
|
75
|
+
labelIdsToAdd.add(label.id.toString());
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
if (labelIdsToAdd.size === 0) {
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
const existingLabelIds: Set<string> = new Set(
|
|
85
|
+
(kubernetesClusterWithDetails.labels || [])
|
|
86
|
+
.map((l: Label) => {
|
|
87
|
+
return l.id?.toString() || "";
|
|
88
|
+
})
|
|
89
|
+
.filter((id: string) => {
|
|
90
|
+
return id !== "";
|
|
91
|
+
}),
|
|
92
|
+
);
|
|
93
|
+
|
|
94
|
+
const newLabelIds: Array<string> = Array.from(labelIdsToAdd).filter(
|
|
95
|
+
(id: string) => {
|
|
96
|
+
return !existingLabelIds.has(id);
|
|
97
|
+
},
|
|
98
|
+
);
|
|
99
|
+
if (newLabelIds.length === 0) {
|
|
100
|
+
return;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
await KubernetesClusterService.getRepository()
|
|
104
|
+
.createQueryBuilder()
|
|
105
|
+
.relation(KubernetesCluster, "labels")
|
|
106
|
+
.of(kubernetesCluster.id.toString())
|
|
107
|
+
.add(newLabelIds);
|
|
108
|
+
|
|
109
|
+
/*
|
|
110
|
+
* Sync in-memory kubernetesCluster.labels so a downstream owner-rule engine in
|
|
111
|
+
* the same onCreateSuccess chain can match on rule-added labels.
|
|
112
|
+
*/
|
|
113
|
+
const mergedLabelIds: Set<string> = new Set([
|
|
114
|
+
...existingLabelIds,
|
|
115
|
+
...newLabelIds,
|
|
116
|
+
]);
|
|
117
|
+
kubernetesCluster.labels = Array.from(mergedLabelIds).map(
|
|
118
|
+
(id: string) => {
|
|
119
|
+
const label: Label = new Label();
|
|
120
|
+
label.id = new ObjectID(id);
|
|
121
|
+
return label;
|
|
122
|
+
},
|
|
123
|
+
);
|
|
124
|
+
|
|
125
|
+
logger.debug(
|
|
126
|
+
`KubernetesClusterLabelRuleEngine attached ${newLabelIds.length} labels to Kubernetes cluster ${kubernetesCluster.id}`,
|
|
127
|
+
{ projectId: kubernetesCluster.projectId.toString() } as LogAttributes,
|
|
128
|
+
);
|
|
129
|
+
} catch (error) {
|
|
130
|
+
logger.error(`Error applying Kubernetes cluster label rules: ${error}`, {
|
|
131
|
+
projectId: kubernetesCluster.projectId?.toString(),
|
|
132
|
+
kubernetesClusterId: kubernetesCluster.id?.toString(),
|
|
133
|
+
} as LogAttributes);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
private doesKubernetesClusterMatchRule(
|
|
138
|
+
kubernetesCluster: KubernetesCluster,
|
|
139
|
+
rule: KubernetesClusterLabelRule,
|
|
140
|
+
): boolean {
|
|
141
|
+
if (
|
|
142
|
+
rule.kubernetesClusterLabels &&
|
|
143
|
+
rule.kubernetesClusterLabels.length > 0
|
|
144
|
+
) {
|
|
145
|
+
if (!kubernetesCluster.labels || kubernetesCluster.labels.length === 0) {
|
|
146
|
+
return false;
|
|
147
|
+
}
|
|
148
|
+
const ruleLabelIds: Array<string> = rule.kubernetesClusterLabels.map(
|
|
149
|
+
(l: Label) => {
|
|
150
|
+
return l.id?.toString() || "";
|
|
151
|
+
},
|
|
152
|
+
);
|
|
153
|
+
const labelIds: Array<string> = kubernetesCluster.labels.map(
|
|
154
|
+
(l: Label) => {
|
|
155
|
+
return l.id?.toString() || "";
|
|
156
|
+
},
|
|
157
|
+
);
|
|
158
|
+
if (
|
|
159
|
+
!ruleLabelIds.some((id: string) => {
|
|
160
|
+
return labelIds.includes(id);
|
|
161
|
+
})
|
|
162
|
+
) {
|
|
163
|
+
return false;
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
|
|
167
|
+
if (
|
|
168
|
+
rule.kubernetesClusterNamePattern &&
|
|
169
|
+
(!kubernetesCluster.name ||
|
|
170
|
+
!this.testRegex(
|
|
171
|
+
rule.kubernetesClusterNamePattern,
|
|
172
|
+
kubernetesCluster.name,
|
|
173
|
+
rule,
|
|
174
|
+
))
|
|
175
|
+
) {
|
|
176
|
+
return false;
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
if (
|
|
180
|
+
rule.kubernetesClusterDescriptionPattern &&
|
|
181
|
+
(!kubernetesCluster.description ||
|
|
182
|
+
!this.testRegex(
|
|
183
|
+
rule.kubernetesClusterDescriptionPattern,
|
|
184
|
+
kubernetesCluster.description,
|
|
185
|
+
rule,
|
|
186
|
+
))
|
|
187
|
+
) {
|
|
188
|
+
return false;
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
return true;
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
private testRegex(
|
|
195
|
+
pattern: string,
|
|
196
|
+
value: string,
|
|
197
|
+
rule: KubernetesClusterLabelRule,
|
|
198
|
+
): boolean {
|
|
199
|
+
try {
|
|
200
|
+
const regex: RegExp = new RegExp(pattern, "i");
|
|
201
|
+
return regex.test(value);
|
|
202
|
+
} catch {
|
|
203
|
+
logger.warn(
|
|
204
|
+
`Invalid regex in Kubernetes cluster label rule ${rule.id}: ${pattern}`,
|
|
205
|
+
);
|
|
206
|
+
return false;
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
|
|
211
|
+
export default new KubernetesClusterLabelRuleEngineServiceClass();
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import DatabaseService from "./DatabaseService";
|
|
2
|
+
import Model from "../../Models/DatabaseModels/KubernetesClusterLabelRule";
|
|
3
|
+
import { IsBillingEnabled } from "../EnvironmentConfig";
|
|
4
|
+
|
|
5
|
+
export class Service extends DatabaseService<Model> {
|
|
6
|
+
public constructor() {
|
|
7
|
+
super(Model);
|
|
8
|
+
if (IsBillingEnabled) {
|
|
9
|
+
this.hardDeleteItemsOlderThanInDays("createdAt", 3 * 365);
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
export default new Service();
|