@oneuptime/common 10.0.53 → 10.0.55
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/Metric.ts +78 -0
- package/Server/API/AIAgentDataAPI.ts +6 -1
- package/Server/API/BillingAPI.ts +28 -6
- package/Server/API/CommonAPI.ts +11 -0
- package/Server/API/DashboardAPI.ts +6 -2
- package/Server/API/DashboardDomainAPI.ts +10 -3
- package/Server/API/GitHubAPI.ts +58 -14
- package/Server/API/MicrosoftTeamsAPI.ts +97 -33
- package/Server/API/OpenSourceDeploymentAPI.ts +2 -2
- package/Server/API/SlackAPI.ts +107 -36
- package/Server/API/StatusAPI.ts +37 -16
- package/Server/API/StatusPageAPI.ts +97 -23
- package/Server/API/StatusPageDomainAPI.ts +6 -3
- package/Server/API/UserAPI.ts +3 -3
- package/Server/API/UserCallAPI.ts +5 -2
- package/Server/API/UserEmailAPI.ts +5 -2
- package/Server/API/UserPushAPI.ts +9 -3
- package/Server/API/UserSmsAPI.ts +5 -2
- package/Server/API/UserWhatsAppAPI.ts +5 -2
- package/Server/Infrastructure/Postgres/SchemaMigrations/1774559064921-MigrationName.ts +47 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1775735059360-MigrationName.ts +35 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +4 -0
- package/Server/Middleware/NotificationMiddleware.ts +2 -2
- package/Server/Middleware/ProjectAuthorization.ts +6 -0
- package/Server/Middleware/SCIMAuthorization.ts +2 -1
- package/Server/Middleware/SlackAuthorization.ts +28 -10
- package/Server/Middleware/TelemetryIngest.ts +16 -3
- package/Server/Middleware/UserAuthorization.ts +22 -5
- package/Server/Middleware/WhatsAppAuthorization.ts +15 -4
- package/Server/Services/AIAgentService.ts +13 -6
- package/Server/Services/AIService.ts +9 -3
- package/Server/Services/AlertEpisodeFeedService.ts +17 -5
- package/Server/Services/AlertEpisodeService.ts +34 -3
- package/Server/Services/AlertEpisodeStateTimelineService.ts +80 -22
- package/Server/Services/AlertFeedService.ts +17 -5
- package/Server/Services/AlertGroupingEngineService.ts +36 -7
- package/Server/Services/AlertService.ts +60 -8
- package/Server/Services/AlertStateTimelineService.ts +29 -7
- package/Server/Services/AnalyticsDatabaseService.ts +59 -25
- package/Server/Services/BillingInvoiceService.ts +7 -3
- package/Server/Services/BillingService.ts +9 -2
- package/Server/Services/DashboardDomainService.ts +56 -22
- package/Server/Services/DashboardService.ts +11 -4
- package/Server/Services/DatabaseService.ts +31 -11
- package/Server/Services/IncidentEpisodeFeedService.ts +17 -5
- package/Server/Services/IncidentEpisodeService.ts +34 -3
- package/Server/Services/IncidentEpisodeStateTimelineService.ts +80 -22
- package/Server/Services/IncidentFeedService.ts +33 -9
- package/Server/Services/IncidentGroupingEngineService.ts +35 -6
- package/Server/Services/IncidentService.ts +103 -9
- package/Server/Services/IncidentSlaRuleService.ts +16 -4
- package/Server/Services/IncidentSlaService.ts +20 -4
- package/Server/Services/IncidentStateTimelineService.ts +120 -31
- package/Server/Services/KubernetesClusterService.ts +62 -14
- package/Server/Services/MonitorFeedService.ts +33 -9
- package/Server/Services/MonitorProbeService.ts +46 -23
- package/Server/Services/MonitorService.ts +35 -4
- package/Server/Services/MonitorStatusTimelineService.ts +68 -20
- package/Server/Services/NotificationService.ts +4 -2
- package/Server/Services/OnCallDutyPolicyEscalationRuleService.ts +53 -9
- package/Server/Services/OnCallDutyPolicyEscalationRuleUserService.ts +9 -2
- package/Server/Services/OnCallDutyPolicyExecutionLogTimelineService.ts +29 -8
- package/Server/Services/OnCallDutyPolicyFeedService.ts +33 -8
- package/Server/Services/OnCallDutyPolicyScheduleService.ts +97 -24
- package/Server/Services/OnCallDutyPolicyService.ts +2 -1
- package/Server/Services/OpenTelemetryIngestService.ts +51 -20
- package/Server/Services/ProbeService.ts +16 -7
- package/Server/Services/ProjectService.ts +21 -7
- package/Server/Services/ScheduledMaintenanceFeedService.ts +17 -4
- package/Server/Services/ScheduledMaintenanceService.ts +52 -6
- package/Server/Services/ScheduledMaintenanceStateTimelineService.ts +72 -20
- package/Server/Services/StatusPageDomainService.ts +59 -23
- package/Server/Services/StatusPageService.ts +26 -8
- package/Server/Services/StatusPageSubscriberService.ts +382 -111
- package/Server/Services/TeamMemberService.ts +9 -3
- package/Server/Services/UserNotificationRuleService.ts +9 -3
- package/Server/Services/UserService.ts +6 -4
- package/Server/Services/UserWhatsAppService.ts +9 -3
- package/Server/Services/WorkflowService.ts +7 -3
- package/Server/Services/WorkspaceNotificationRuleService.ts +398 -156
- package/Server/Types/Domain.ts +15 -5
- package/Server/Types/Workflow/Components/API/Post.ts +22 -8
- package/Server/Types/Workflow/Components/BaseModel/OnTriggerBaseModel.ts +12 -4
- package/Server/Utils/AnalyticsDatabase/StatementGenerator.ts +10 -0
- package/Server/Utils/CodeRepository/CodeRepository.ts +62 -13
- package/Server/Utils/Express.ts +1 -0
- package/Server/Utils/Greenlock/Greenlock.ts +75 -20
- package/Server/Utils/LLM/LLMService.ts +22 -7
- package/Server/Utils/Logger.ts +93 -13
- package/Server/Utils/Monitor/MonitorAlert.ts +15 -3
- package/Server/Utils/Monitor/MonitorCriteriaEvaluator.ts +15 -5
- package/Server/Utils/Monitor/MonitorIncident.ts +17 -3
- package/Server/Utils/Monitor/MonitorStatusTimeline.ts +6 -1
- package/Server/Utils/Profiling.ts +11 -5
- package/Server/Utils/Realtime.ts +90 -31
- package/Server/Utils/Response.ts +2 -2
- package/Server/Utils/StartServer.ts +43 -9
- package/Server/Utils/Telemetry/SpanUtil.ts +90 -0
- package/Server/Utils/Workspace/MicrosoftTeams/Actions/Alert.ts +58 -15
- package/Server/Utils/Workspace/MicrosoftTeams/Actions/AlertEpisode.ts +58 -15
- package/Server/Utils/Workspace/MicrosoftTeams/Actions/Auth.ts +19 -3
- package/Server/Utils/Workspace/MicrosoftTeams/Actions/Incident.ts +87 -22
- package/Server/Utils/Workspace/MicrosoftTeams/Actions/Monitor.ts +12 -3
- package/Server/Utils/Workspace/MicrosoftTeams/Actions/OnCallDutyPolicy.ts +25 -7
- package/Server/Utils/Workspace/MicrosoftTeams/Actions/ScheduledMaintenance.ts +55 -8
- package/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.ts +100 -22
- package/Server/Utils/Workspace/Slack/Actions/Alert.ts +35 -9
- package/Server/Utils/Workspace/Slack/Actions/AlertEpisode.ts +32 -8
- package/Server/Utils/Workspace/Slack/Actions/Auth.ts +3 -1
- package/Server/Utils/Workspace/Slack/Actions/Incident.ts +52 -11
- package/Server/Utils/Workspace/Slack/Actions/IncidentEpisode.ts +4 -1
- package/Server/Utils/Workspace/Slack/Actions/ScheduledMaintenance.ts +89 -20
- package/Server/Utils/Workspace/Slack/Slack.ts +498 -247
- package/Server/Utils/Workspace/Workspace.ts +33 -11
- package/Server/Utils/Workspace/WorkspaceBase.ts +3 -1
- package/Server/Utils/Workspace/WorkspaceMessages/Alert.ts +8 -2
- package/Tests/Server/Middleware/UserAuthorization.test.ts +1 -1
- package/Tests/Server/Services/AnalyticsDatabaseService.test.ts +12 -3
- package/UI/Components/Charts/Area/AreaChart.tsx +35 -1
- package/UI/Components/Charts/ChartGroup/ChartGroup.tsx +7 -0
- package/UI/Components/Charts/ChartLibrary/AreaChart/AreaChart.tsx +33 -0
- package/UI/Components/Charts/ChartLibrary/LineChart/LineChart.tsx +33 -0
- package/UI/Components/Charts/ChartLibrary/Types/FormattedExemplarPoint.ts +14 -0
- package/UI/Components/Charts/Line/LineChart.tsx +35 -1
- package/UI/Components/Charts/Types/ExemplarPoint.ts +6 -0
- package/UI/Components/Markdown.tsx/MarkdownViewer.tsx +3 -3
- package/UI/Components/Navbar/NavBar.tsx +10 -0
- package/build/dist/Models/AnalyticsModels/Metric.js +70 -0
- package/build/dist/Models/AnalyticsModels/Metric.js.map +1 -1
- package/build/dist/Server/API/AIAgentDataAPI.js +6 -6
- package/build/dist/Server/API/AIAgentDataAPI.js.map +1 -1
- package/build/dist/Server/API/BillingAPI.js +13 -13
- package/build/dist/Server/API/BillingAPI.js.map +1 -1
- package/build/dist/Server/API/CommonAPI.js +5 -0
- package/build/dist/Server/API/CommonAPI.js.map +1 -1
- package/build/dist/Server/API/DashboardAPI.js +2 -2
- package/build/dist/Server/API/DashboardAPI.js.map +1 -1
- package/build/dist/Server/API/DashboardDomainAPI.js +3 -3
- package/build/dist/Server/API/DashboardDomainAPI.js.map +1 -1
- package/build/dist/Server/API/GitHubAPI.js +19 -19
- package/build/dist/Server/API/GitHubAPI.js.map +1 -1
- package/build/dist/Server/API/MicrosoftTeamsAPI.js +34 -34
- package/build/dist/Server/API/MicrosoftTeamsAPI.js.map +1 -1
- package/build/dist/Server/API/OpenSourceDeploymentAPI.js +2 -2
- package/build/dist/Server/API/OpenSourceDeploymentAPI.js.map +1 -1
- package/build/dist/Server/API/SlackAPI.js +38 -38
- package/build/dist/Server/API/SlackAPI.js.map +1 -1
- package/build/dist/Server/API/StatusAPI.js +16 -16
- package/build/dist/Server/API/StatusAPI.js.map +1 -1
- package/build/dist/Server/API/StatusPageAPI.js +52 -52
- package/build/dist/Server/API/StatusPageAPI.js.map +1 -1
- package/build/dist/Server/API/StatusPageDomainAPI.js +3 -3
- package/build/dist/Server/API/StatusPageDomainAPI.js.map +1 -1
- package/build/dist/Server/API/UserAPI.js +3 -3
- package/build/dist/Server/API/UserAPI.js.map +1 -1
- package/build/dist/Server/API/UserCallAPI.js +2 -2
- package/build/dist/Server/API/UserCallAPI.js.map +1 -1
- package/build/dist/Server/API/UserEmailAPI.js +2 -2
- package/build/dist/Server/API/UserEmailAPI.js.map +1 -1
- package/build/dist/Server/API/UserPushAPI.js +3 -3
- package/build/dist/Server/API/UserPushAPI.js.map +1 -1
- package/build/dist/Server/API/UserSmsAPI.js +2 -2
- package/build/dist/Server/API/UserSmsAPI.js.map +1 -1
- package/build/dist/Server/API/UserWhatsAppAPI.js +2 -2
- package/build/dist/Server/API/UserWhatsAppAPI.js.map +1 -1
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1774559064921-MigrationName.js +40 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1774559064921-MigrationName.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1775735059360-MigrationName.js +18 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1775735059360-MigrationName.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +4 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
- package/build/dist/Server/Middleware/NotificationMiddleware.js +2 -2
- package/build/dist/Server/Middleware/NotificationMiddleware.js.map +1 -1
- package/build/dist/Server/Middleware/ProjectAuthorization.js +5 -0
- package/build/dist/Server/Middleware/ProjectAuthorization.js.map +1 -1
- package/build/dist/Server/Middleware/SCIMAuthorization.js +2 -2
- package/build/dist/Server/Middleware/SCIMAuthorization.js.map +1 -1
- package/build/dist/Server/Middleware/SlackAuthorization.js +10 -10
- package/build/dist/Server/Middleware/SlackAuthorization.js.map +1 -1
- package/build/dist/Server/Middleware/TelemetryIngest.js +9 -4
- package/build/dist/Server/Middleware/TelemetryIngest.js.map +1 -1
- package/build/dist/Server/Middleware/UserAuthorization.js +10 -5
- package/build/dist/Server/Middleware/UserAuthorization.js.map +1 -1
- package/build/dist/Server/Middleware/WhatsAppAuthorization.js +6 -6
- package/build/dist/Server/Middleware/WhatsAppAuthorization.js.map +1 -1
- package/build/dist/Server/Services/AIAgentService.js +13 -7
- package/build/dist/Server/Services/AIAgentService.js.map +1 -1
- package/build/dist/Server/Services/AIService.js +9 -2
- package/build/dist/Server/Services/AIService.js.map +1 -1
- package/build/dist/Server/Services/AlertEpisodeFeedService.js +17 -5
- package/build/dist/Server/Services/AlertEpisodeFeedService.js.map +1 -1
- package/build/dist/Server/Services/AlertEpisodeService.js +40 -10
- package/build/dist/Server/Services/AlertEpisodeService.js.map +1 -1
- package/build/dist/Server/Services/AlertEpisodeStateTimelineService.js +81 -24
- package/build/dist/Server/Services/AlertEpisodeStateTimelineService.js.map +1 -1
- package/build/dist/Server/Services/AlertFeedService.js +17 -5
- package/build/dist/Server/Services/AlertFeedService.js.map +1 -1
- package/build/dist/Server/Services/AlertGroupingEngineService.js +44 -28
- package/build/dist/Server/Services/AlertGroupingEngineService.js.map +1 -1
- package/build/dist/Server/Services/AlertService.js +72 -20
- package/build/dist/Server/Services/AlertService.js.map +1 -1
- package/build/dist/Server/Services/AlertStateTimelineService.js +36 -13
- package/build/dist/Server/Services/AlertStateTimelineService.js.map +1 -1
- package/build/dist/Server/Services/AnalyticsDatabaseService.js +52 -28
- package/build/dist/Server/Services/AnalyticsDatabaseService.js.map +1 -1
- package/build/dist/Server/Services/BillingInvoiceService.js +7 -2
- package/build/dist/Server/Services/BillingInvoiceService.js.map +1 -1
- package/build/dist/Server/Services/BillingService.js +8 -8
- package/build/dist/Server/Services/BillingService.js.map +1 -1
- package/build/dist/Server/Services/DashboardDomainService.js +49 -27
- package/build/dist/Server/Services/DashboardDomainService.js.map +1 -1
- package/build/dist/Server/Services/DashboardService.js +11 -4
- package/build/dist/Server/Services/DashboardService.js.map +1 -1
- package/build/dist/Server/Services/DatabaseService.js +32 -12
- package/build/dist/Server/Services/DatabaseService.js.map +1 -1
- package/build/dist/Server/Services/IncidentEpisodeFeedService.js +17 -5
- package/build/dist/Server/Services/IncidentEpisodeFeedService.js.map +1 -1
- package/build/dist/Server/Services/IncidentEpisodeService.js +40 -10
- package/build/dist/Server/Services/IncidentEpisodeService.js.map +1 -1
- package/build/dist/Server/Services/IncidentEpisodeStateTimelineService.js +81 -24
- package/build/dist/Server/Services/IncidentEpisodeStateTimelineService.js.map +1 -1
- package/build/dist/Server/Services/IncidentFeedService.js +34 -10
- package/build/dist/Server/Services/IncidentFeedService.js.map +1 -1
- package/build/dist/Server/Services/IncidentGroupingEngineService.js +43 -29
- package/build/dist/Server/Services/IncidentGroupingEngineService.js.map +1 -1
- package/build/dist/Server/Services/IncidentService.js +116 -28
- package/build/dist/Server/Services/IncidentService.js.map +1 -1
- package/build/dist/Server/Services/IncidentSlaRuleService.js +19 -11
- package/build/dist/Server/Services/IncidentSlaRuleService.js.map +1 -1
- package/build/dist/Server/Services/IncidentSlaService.js +21 -14
- package/build/dist/Server/Services/IncidentSlaService.js.map +1 -1
- package/build/dist/Server/Services/IncidentStateTimelineService.js +130 -37
- package/build/dist/Server/Services/IncidentStateTimelineService.js.map +1 -1
- package/build/dist/Server/Services/KubernetesClusterService.js +51 -14
- package/build/dist/Server/Services/KubernetesClusterService.js.map +1 -1
- package/build/dist/Server/Services/MonitorFeedService.js +34 -10
- package/build/dist/Server/Services/MonitorFeedService.js.map +1 -1
- package/build/dist/Server/Services/MonitorProbeService.js +32 -16
- package/build/dist/Server/Services/MonitorProbeService.js.map +1 -1
- package/build/dist/Server/Services/MonitorService.js +42 -11
- package/build/dist/Server/Services/MonitorService.js.map +1 -1
- package/build/dist/Server/Services/MonitorStatusTimelineService.js +69 -21
- package/build/dist/Server/Services/MonitorStatusTimelineService.js.map +1 -1
- package/build/dist/Server/Services/NotificationService.js +4 -3
- package/build/dist/Server/Services/NotificationService.js.map +1 -1
- package/build/dist/Server/Services/OnCallDutyPolicyEscalationRuleService.js +49 -12
- package/build/dist/Server/Services/OnCallDutyPolicyEscalationRuleService.js.map +1 -1
- package/build/dist/Server/Services/OnCallDutyPolicyEscalationRuleUserService.js +9 -3
- package/build/dist/Server/Services/OnCallDutyPolicyEscalationRuleUserService.js.map +1 -1
- package/build/dist/Server/Services/OnCallDutyPolicyExecutionLogTimelineService.js +26 -11
- package/build/dist/Server/Services/OnCallDutyPolicyExecutionLogTimelineService.js.map +1 -1
- package/build/dist/Server/Services/OnCallDutyPolicyFeedService.js +34 -10
- package/build/dist/Server/Services/OnCallDutyPolicyFeedService.js.map +1 -1
- package/build/dist/Server/Services/OnCallDutyPolicyScheduleService.js +94 -37
- package/build/dist/Server/Services/OnCallDutyPolicyScheduleService.js.map +1 -1
- package/build/dist/Server/Services/OnCallDutyPolicyService.js +1 -1
- package/build/dist/Server/Services/OnCallDutyPolicyService.js.map +1 -1
- package/build/dist/Server/Services/OpenTelemetryIngestService.js +45 -17
- package/build/dist/Server/Services/OpenTelemetryIngestService.js.map +1 -1
- package/build/dist/Server/Services/ProbeService.js +13 -7
- package/build/dist/Server/Services/ProbeService.js.map +1 -1
- package/build/dist/Server/Services/ProjectService.js +33 -17
- package/build/dist/Server/Services/ProjectService.js.map +1 -1
- package/build/dist/Server/Services/ScheduledMaintenanceFeedService.js +17 -5
- package/build/dist/Server/Services/ScheduledMaintenanceFeedService.js.map +1 -1
- package/build/dist/Server/Services/ScheduledMaintenanceService.js +71 -24
- package/build/dist/Server/Services/ScheduledMaintenanceService.js.map +1 -1
- package/build/dist/Server/Services/ScheduledMaintenanceStateTimelineService.js +72 -24
- package/build/dist/Server/Services/ScheduledMaintenanceStateTimelineService.js.map +1 -1
- package/build/dist/Server/Services/StatusPageDomainService.js +55 -29
- package/build/dist/Server/Services/StatusPageDomainService.js.map +1 -1
- package/build/dist/Server/Services/StatusPageService.js +29 -9
- package/build/dist/Server/Services/StatusPageService.js.map +1 -1
- package/build/dist/Server/Services/StatusPageSubscriberService.js +393 -130
- package/build/dist/Server/Services/StatusPageSubscriberService.js.map +1 -1
- package/build/dist/Server/Services/TeamMemberService.js +10 -2
- package/build/dist/Server/Services/TeamMemberService.js.map +1 -1
- package/build/dist/Server/Services/UserNotificationRuleService.js +10 -2
- package/build/dist/Server/Services/UserNotificationRuleService.js.map +1 -1
- package/build/dist/Server/Services/UserService.js +8 -3
- package/build/dist/Server/Services/UserService.js.map +1 -1
- package/build/dist/Server/Services/UserWhatsAppService.js +10 -2
- package/build/dist/Server/Services/UserWhatsAppService.js.map +1 -1
- package/build/dist/Server/Services/WorkflowService.js +7 -2
- package/build/dist/Server/Services/WorkflowService.js.map +1 -1
- package/build/dist/Server/Services/WorkspaceNotificationRuleService.js +367 -180
- package/build/dist/Server/Services/WorkspaceNotificationRuleService.js.map +1 -1
- package/build/dist/Server/Types/Domain.js +12 -6
- package/build/dist/Server/Types/Domain.js.map +1 -1
- package/build/dist/Server/Types/Workflow/Components/API/Post.js +11 -7
- package/build/dist/Server/Types/Workflow/Components/API/Post.js.map +1 -1
- package/build/dist/Server/Types/Workflow/Components/BaseModel/OnTriggerBaseModel.js +11 -4
- package/build/dist/Server/Types/Workflow/Components/BaseModel/OnTriggerBaseModel.js.map +1 -1
- package/build/dist/Server/Utils/AnalyticsDatabase/StatementGenerator.js +7 -0
- package/build/dist/Server/Utils/AnalyticsDatabase/StatementGenerator.js.map +1 -1
- package/build/dist/Server/Utils/CodeRepository/CodeRepository.js +45 -17
- package/build/dist/Server/Utils/CodeRepository/CodeRepository.js.map +1 -1
- package/build/dist/Server/Utils/Express.js.map +1 -1
- package/build/dist/Server/Utils/Greenlock/Greenlock.js +36 -29
- package/build/dist/Server/Utils/Greenlock/Greenlock.js.map +1 -1
- package/build/dist/Server/Utils/LLM/LLMService.js +18 -6
- package/build/dist/Server/Utils/LLM/LLMService.js.map +1 -1
- package/build/dist/Server/Utils/Logger.js +61 -13
- package/build/dist/Server/Utils/Logger.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorAlert.js +23 -20
- package/build/dist/Server/Utils/Monitor/MonitorAlert.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js +13 -4
- package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorIncident.js +25 -22
- package/build/dist/Server/Utils/Monitor/MonitorIncident.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorStatusTimeline.js +6 -3
- package/build/dist/Server/Utils/Monitor/MonitorStatusTimeline.js.map +1 -1
- package/build/dist/Server/Utils/Profiling.js +9 -6
- package/build/dist/Server/Utils/Profiling.js.map +1 -1
- package/build/dist/Server/Utils/Realtime.js +50 -34
- package/build/dist/Server/Utils/Realtime.js.map +1 -1
- package/build/dist/Server/Utils/Response.js +2 -2
- package/build/dist/Server/Utils/Response.js.map +1 -1
- package/build/dist/Server/Utils/StartServer.js +23 -11
- package/build/dist/Server/Utils/StartServer.js.map +1 -1
- package/build/dist/Server/Utils/Telemetry/SpanUtil.js +52 -0
- package/build/dist/Server/Utils/Telemetry/SpanUtil.js.map +1 -0
- package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/Alert.js +58 -15
- package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/Alert.js.map +1 -1
- package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/AlertEpisode.js +58 -15
- package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/AlertEpisode.js.map +1 -1
- package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/Auth.js +19 -5
- package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/Auth.js.map +1 -1
- package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/Incident.js +90 -26
- package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/Incident.js.map +1 -1
- package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/Monitor.js +12 -3
- package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/Monitor.js.map +1 -1
- package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/OnCallDutyPolicy.js +25 -7
- package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/OnCallDutyPolicy.js.map +1 -1
- package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/ScheduledMaintenance.js +58 -19
- package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/ScheduledMaintenance.js.map +1 -1
- package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.js +102 -29
- package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.js.map +1 -1
- package/build/dist/Server/Utils/Workspace/Slack/Actions/Alert.js +38 -9
- package/build/dist/Server/Utils/Workspace/Slack/Actions/Alert.js.map +1 -1
- package/build/dist/Server/Utils/Workspace/Slack/Actions/AlertEpisode.js +34 -8
- package/build/dist/Server/Utils/Workspace/Slack/Actions/AlertEpisode.js.map +1 -1
- package/build/dist/Server/Utils/Workspace/Slack/Actions/Auth.js +3 -1
- package/build/dist/Server/Utils/Workspace/Slack/Actions/Auth.js.map +1 -1
- package/build/dist/Server/Utils/Workspace/Slack/Actions/Incident.js +55 -13
- package/build/dist/Server/Utils/Workspace/Slack/Actions/Incident.js.map +1 -1
- package/build/dist/Server/Utils/Workspace/Slack/Actions/IncidentEpisode.js +5 -1
- package/build/dist/Server/Utils/Workspace/Slack/Actions/IncidentEpisode.js.map +1 -1
- package/build/dist/Server/Utils/Workspace/Slack/Actions/ScheduledMaintenance.js +91 -26
- package/build/dist/Server/Utils/Workspace/Slack/Actions/ScheduledMaintenance.js.map +1 -1
- package/build/dist/Server/Utils/Workspace/Slack/Slack.js +355 -270
- package/build/dist/Server/Utils/Workspace/Slack/Slack.js.map +1 -1
- package/build/dist/Server/Utils/Workspace/Workspace.js +21 -12
- package/build/dist/Server/Utils/Workspace/Workspace.js.map +1 -1
- package/build/dist/Server/Utils/Workspace/WorkspaceBase.js +3 -1
- package/build/dist/Server/Utils/Workspace/WorkspaceBase.js.map +1 -1
- package/build/dist/Server/Utils/Workspace/WorkspaceMessages/Alert.js +9 -2
- package/build/dist/Server/Utils/Workspace/WorkspaceMessages/Alert.js.map +1 -1
- package/build/dist/Tests/Server/Middleware/UserAuthorization.test.js +1 -1
- package/build/dist/Tests/Server/Middleware/UserAuthorization.test.js.map +1 -1
- package/build/dist/Tests/Server/Services/AnalyticsDatabaseService.test.js +12 -6
- package/build/dist/Tests/Server/Services/AnalyticsDatabaseService.test.js.map +1 -1
- package/build/dist/UI/Components/Charts/Area/AreaChart.js +20 -2
- package/build/dist/UI/Components/Charts/Area/AreaChart.js.map +1 -1
- package/build/dist/UI/Components/Charts/ChartGroup/ChartGroup.js +2 -2
- package/build/dist/UI/Components/Charts/ChartGroup/ChartGroup.js.map +1 -1
- package/build/dist/UI/Components/Charts/ChartLibrary/AreaChart/AreaChart.js +9 -2
- package/build/dist/UI/Components/Charts/ChartLibrary/AreaChart/AreaChart.js.map +1 -1
- package/build/dist/UI/Components/Charts/ChartLibrary/LineChart/LineChart.js +9 -2
- package/build/dist/UI/Components/Charts/ChartLibrary/LineChart/LineChart.js.map +1 -1
- package/build/dist/UI/Components/Charts/ChartLibrary/Types/FormattedExemplarPoint.js +2 -0
- package/build/dist/UI/Components/Charts/ChartLibrary/Types/FormattedExemplarPoint.js.map +1 -0
- package/build/dist/UI/Components/Charts/Line/LineChart.js +20 -2
- package/build/dist/UI/Components/Charts/Line/LineChart.js.map +1 -1
- package/build/dist/UI/Components/Charts/Types/ExemplarPoint.js +2 -0
- package/build/dist/UI/Components/Charts/Types/ExemplarPoint.js.map +1 -0
- package/build/dist/UI/Components/Markdown.tsx/MarkdownViewer.js +3 -3
- package/build/dist/UI/Components/Navbar/NavBar.js +9 -1
- package/build/dist/UI/Components/Navbar/NavBar.js.map +1 -1
- package/package.json +1 -1
|
@@ -27,7 +27,7 @@ import UserNotificationSettingService from "./UserNotificationSettingService";
|
|
|
27
27
|
import NotificationSettingEventType from "../../Types/NotificationSetting/NotificationSettingEventType";
|
|
28
28
|
import BadDataException from "../../Types/Exception/BadDataException";
|
|
29
29
|
import Timezone from "../../Types/Timezone";
|
|
30
|
-
import logger from "../Utils/Logger";
|
|
30
|
+
import logger, { LogAttributes } from "../Utils/Logger";
|
|
31
31
|
import OnCallDutyPolicyFeedService from "./OnCallDutyPolicyFeedService";
|
|
32
32
|
import { OnCallDutyPolicyFeedEventType } from "../../Models/DatabaseModels/OnCallDutyPolicyFeed";
|
|
33
33
|
import { Green500 } from "../../Types/BrandColors";
|
|
@@ -68,7 +68,9 @@ export class Service extends DatabaseService<OnCallDutyPolicySchedule> {
|
|
|
68
68
|
onCallDutyPolicyScheduleId: schedule.id!,
|
|
69
69
|
endsAt: OneUptimeDate.getCurrentDate(),
|
|
70
70
|
}).catch((err: Error) => {
|
|
71
|
-
logger.error(err
|
|
71
|
+
logger.error(err, {
|
|
72
|
+
projectId: schedule.projectId?.toString(),
|
|
73
|
+
} as LogAttributes);
|
|
72
74
|
});
|
|
73
75
|
}
|
|
74
76
|
|
|
@@ -310,8 +312,15 @@ export class Service extends DatabaseService<OnCallDutyPolicySchedule> {
|
|
|
310
312
|
sendEmailToUserId.toString() +
|
|
311
313
|
" for schedule: " +
|
|
312
314
|
data.scheduleId.toString(),
|
|
315
|
+
{
|
|
316
|
+
projectId: projectId?.toString(),
|
|
317
|
+
userId: sendEmailToUserId?.toString(),
|
|
318
|
+
} as LogAttributes,
|
|
313
319
|
);
|
|
314
|
-
logger.error(err
|
|
320
|
+
logger.error(err, {
|
|
321
|
+
projectId: projectId?.toString(),
|
|
322
|
+
userId: sendEmailToUserId?.toString(),
|
|
323
|
+
} as LogAttributes);
|
|
315
324
|
});
|
|
316
325
|
|
|
317
326
|
const onCallDutyPolicyId: ObjectID =
|
|
@@ -443,8 +452,15 @@ export class Service extends DatabaseService<OnCallDutyPolicySchedule> {
|
|
|
443
452
|
sendEmailToUserId.toString() +
|
|
444
453
|
" for schedule: " +
|
|
445
454
|
data.scheduleId.toString(),
|
|
455
|
+
{
|
|
456
|
+
projectId: projectId?.toString(),
|
|
457
|
+
userId: sendEmailToUserId?.toString(),
|
|
458
|
+
} as LogAttributes,
|
|
446
459
|
);
|
|
447
|
-
logger.error(err
|
|
460
|
+
logger.error(err, {
|
|
461
|
+
projectId: projectId?.toString(),
|
|
462
|
+
userId: sendEmailToUserId?.toString(),
|
|
463
|
+
} as LogAttributes);
|
|
448
464
|
});
|
|
449
465
|
|
|
450
466
|
const onCallDutyPolicyId: ObjectID =
|
|
@@ -631,12 +647,14 @@ export class Service extends DatabaseService<OnCallDutyPolicySchedule> {
|
|
|
631
647
|
logger.debug(
|
|
632
648
|
"refreshCurrentUserIdAndHandoffTimeInSchedule called with scheduleId: " +
|
|
633
649
|
scheduleId.toString(),
|
|
650
|
+
{ onCallDutyPolicyScheduleId: scheduleId.toString() } as LogAttributes,
|
|
634
651
|
);
|
|
635
652
|
|
|
636
653
|
// get previoius result.
|
|
637
654
|
logger.debug(
|
|
638
655
|
"Fetching previous schedule information for scheduleId: " +
|
|
639
656
|
scheduleId.toString(),
|
|
657
|
+
{ onCallDutyPolicyScheduleId: scheduleId.toString() } as LogAttributes,
|
|
640
658
|
);
|
|
641
659
|
const onCallSchedule: OnCallDutyPolicySchedule | null =
|
|
642
660
|
await this.findOneById({
|
|
@@ -657,6 +675,7 @@ export class Service extends DatabaseService<OnCallDutyPolicySchedule> {
|
|
|
657
675
|
if (!onCallSchedule) {
|
|
658
676
|
logger.debug(
|
|
659
677
|
"Schedule not found for scheduleId: " + scheduleId.toString(),
|
|
678
|
+
{ onCallDutyPolicyScheduleId: scheduleId.toString() } as LogAttributes,
|
|
660
679
|
);
|
|
661
680
|
throw new BadDataException("Schedule not found");
|
|
662
681
|
}
|
|
@@ -664,6 +683,7 @@ export class Service extends DatabaseService<OnCallDutyPolicySchedule> {
|
|
|
664
683
|
logger.debug(
|
|
665
684
|
"Previous schedule information fetched for scheduleId: " +
|
|
666
685
|
scheduleId.toString(),
|
|
686
|
+
{ onCallDutyPolicyScheduleId: scheduleId.toString() } as LogAttributes,
|
|
667
687
|
);
|
|
668
688
|
|
|
669
689
|
const previousInformation: {
|
|
@@ -682,11 +702,14 @@ export class Service extends DatabaseService<OnCallDutyPolicySchedule> {
|
|
|
682
702
|
nextRosterStartAt: onCallSchedule.rosterNextStartAt || null,
|
|
683
703
|
};
|
|
684
704
|
|
|
685
|
-
logger.debug(previousInformation
|
|
705
|
+
logger.debug(previousInformation, {
|
|
706
|
+
onCallDutyPolicyScheduleId: scheduleId.toString(),
|
|
707
|
+
} as LogAttributes);
|
|
686
708
|
|
|
687
709
|
logger.debug(
|
|
688
710
|
"Fetching new schedule information for scheduleId: " +
|
|
689
711
|
scheduleId.toString(),
|
|
712
|
+
{ onCallDutyPolicyScheduleId: scheduleId.toString() } as LogAttributes,
|
|
690
713
|
);
|
|
691
714
|
|
|
692
715
|
const newInformation: {
|
|
@@ -698,11 +721,14 @@ export class Service extends DatabaseService<OnCallDutyPolicySchedule> {
|
|
|
698
721
|
nextRosterStartAt: Date | null;
|
|
699
722
|
} = await this.getCurrrentUserIdAndHandoffTimeInSchedule(scheduleId);
|
|
700
723
|
|
|
701
|
-
logger.debug(newInformation
|
|
724
|
+
logger.debug(newInformation, {
|
|
725
|
+
onCallDutyPolicyScheduleId: scheduleId.toString(),
|
|
726
|
+
} as LogAttributes);
|
|
702
727
|
|
|
703
728
|
logger.debug(
|
|
704
729
|
"Updating schedule with new information for scheduleId: " +
|
|
705
730
|
scheduleId.toString(),
|
|
731
|
+
{ onCallDutyPolicyScheduleId: scheduleId.toString() } as LogAttributes,
|
|
706
732
|
);
|
|
707
733
|
|
|
708
734
|
await this.updateOneById({
|
|
@@ -724,6 +750,7 @@ export class Service extends DatabaseService<OnCallDutyPolicySchedule> {
|
|
|
724
750
|
logger.debug(
|
|
725
751
|
"Sending notifications for schedule handoff for scheduleId: " +
|
|
726
752
|
scheduleId.toString(),
|
|
753
|
+
{ onCallDutyPolicyScheduleId: scheduleId.toString() } as LogAttributes,
|
|
727
754
|
);
|
|
728
755
|
|
|
729
756
|
// send notification to the users.
|
|
@@ -743,6 +770,7 @@ export class Service extends DatabaseService<OnCallDutyPolicySchedule> {
|
|
|
743
770
|
logger.debug(
|
|
744
771
|
"Returning new schedule information for scheduleId: " +
|
|
745
772
|
scheduleId.toString(),
|
|
773
|
+
{ onCallDutyPolicyScheduleId: scheduleId.toString() } as LogAttributes,
|
|
746
774
|
);
|
|
747
775
|
|
|
748
776
|
return newInformation;
|
|
@@ -761,6 +789,7 @@ export class Service extends DatabaseService<OnCallDutyPolicySchedule> {
|
|
|
761
789
|
logger.debug(
|
|
762
790
|
"getCurrrentUserIdAndHandoffTimeInSchedule called with scheduleId: " +
|
|
763
791
|
scheduleId.toString(),
|
|
792
|
+
{ onCallDutyPolicyScheduleId: scheduleId.toString() } as LogAttributes,
|
|
764
793
|
);
|
|
765
794
|
|
|
766
795
|
const resultReturn: {
|
|
@@ -779,50 +808,68 @@ export class Service extends DatabaseService<OnCallDutyPolicySchedule> {
|
|
|
779
808
|
nextRosterStartAt: null,
|
|
780
809
|
};
|
|
781
810
|
|
|
782
|
-
logger.debug("Fetching events for scheduleId: " + scheduleId.toString()
|
|
811
|
+
logger.debug("Fetching events for scheduleId: " + scheduleId.toString(), {
|
|
812
|
+
onCallDutyPolicyScheduleId: scheduleId.toString(),
|
|
813
|
+
} as LogAttributes);
|
|
783
814
|
const events: Array<CalendarEvent> | null =
|
|
784
815
|
await this.getEventByIndexInSchedule({
|
|
785
816
|
scheduleId: scheduleId,
|
|
786
817
|
getNumberOfEvents: 2,
|
|
787
818
|
});
|
|
788
819
|
|
|
789
|
-
logger.debug("Events fetched: " + JSON.stringify(events)
|
|
820
|
+
logger.debug("Events fetched: " + JSON.stringify(events), {
|
|
821
|
+
onCallDutyPolicyScheduleId: scheduleId.toString(),
|
|
822
|
+
} as LogAttributes);
|
|
790
823
|
|
|
791
824
|
let currentEvent: CalendarEvent | null = events[0] || null;
|
|
792
825
|
let nextEvent: CalendarEvent | null = events[1] || null;
|
|
793
826
|
|
|
794
|
-
logger.debug("Current event: " + JSON.stringify(currentEvent)
|
|
795
|
-
|
|
827
|
+
logger.debug("Current event: " + JSON.stringify(currentEvent), {
|
|
828
|
+
onCallDutyPolicyScheduleId: scheduleId.toString(),
|
|
829
|
+
} as LogAttributes);
|
|
830
|
+
logger.debug("Next event: " + JSON.stringify(nextEvent), {
|
|
831
|
+
onCallDutyPolicyScheduleId: scheduleId.toString(),
|
|
832
|
+
} as LogAttributes);
|
|
796
833
|
|
|
797
834
|
// if the current event start time in the future then the current event is the next event.
|
|
798
835
|
if (currentEvent && OneUptimeDate.isInTheFuture(currentEvent.start)) {
|
|
799
836
|
logger.debug(
|
|
800
837
|
"Current event is in the future, treating it as next event.",
|
|
838
|
+
{ onCallDutyPolicyScheduleId: scheduleId.toString() } as LogAttributes,
|
|
801
839
|
);
|
|
802
840
|
nextEvent = currentEvent;
|
|
803
841
|
currentEvent = null;
|
|
804
842
|
}
|
|
805
843
|
|
|
806
844
|
if (currentEvent) {
|
|
807
|
-
logger.debug(
|
|
845
|
+
logger.debug(
|
|
846
|
+
"Processing current event: " + JSON.stringify(currentEvent),
|
|
847
|
+
{ onCallDutyPolicyScheduleId: scheduleId.toString() } as LogAttributes,
|
|
848
|
+
);
|
|
808
849
|
const userId: string | undefined = currentEvent?.title; // this is user id in string.
|
|
809
850
|
|
|
810
851
|
if (userId) {
|
|
811
|
-
logger.debug("Current userId: " + userId
|
|
852
|
+
logger.debug("Current userId: " + userId, {
|
|
853
|
+
onCallDutyPolicyScheduleId: scheduleId.toString(),
|
|
854
|
+
} as LogAttributes);
|
|
812
855
|
resultReturn.currentUserId = new ObjectID(userId);
|
|
813
856
|
}
|
|
814
857
|
|
|
815
858
|
// get handOffTime
|
|
816
859
|
const handOffTime: Date | undefined = currentEvent?.end; // this is user id in string.
|
|
817
860
|
if (handOffTime) {
|
|
818
|
-
logger.debug("Current handOffTime: " + handOffTime.toISOString()
|
|
861
|
+
logger.debug("Current handOffTime: " + handOffTime.toISOString(), {
|
|
862
|
+
onCallDutyPolicyScheduleId: scheduleId.toString(),
|
|
863
|
+
} as LogAttributes);
|
|
819
864
|
resultReturn.handOffTimeAt = handOffTime;
|
|
820
865
|
}
|
|
821
866
|
|
|
822
867
|
// get start time
|
|
823
868
|
const startTime: Date | undefined = currentEvent?.start; // this is user id in string.
|
|
824
869
|
if (startTime) {
|
|
825
|
-
logger.debug("Current rosterStartAt: " + startTime.toISOString()
|
|
870
|
+
logger.debug("Current rosterStartAt: " + startTime.toISOString(), {
|
|
871
|
+
onCallDutyPolicyScheduleId: scheduleId.toString(),
|
|
872
|
+
} as LogAttributes);
|
|
826
873
|
resultReturn.rosterStartAt = startTime;
|
|
827
874
|
}
|
|
828
875
|
}
|
|
@@ -830,30 +877,40 @@ export class Service extends DatabaseService<OnCallDutyPolicySchedule> {
|
|
|
830
877
|
// do the same for next event.
|
|
831
878
|
|
|
832
879
|
if (nextEvent) {
|
|
833
|
-
logger.debug("Processing next event: " + JSON.stringify(nextEvent)
|
|
880
|
+
logger.debug("Processing next event: " + JSON.stringify(nextEvent), {
|
|
881
|
+
onCallDutyPolicyScheduleId: scheduleId.toString(),
|
|
882
|
+
} as LogAttributes);
|
|
834
883
|
const userId: string | undefined = nextEvent?.title; // this is user id in string.
|
|
835
884
|
|
|
836
885
|
if (userId) {
|
|
837
|
-
logger.debug("Next userId: " + userId
|
|
886
|
+
logger.debug("Next userId: " + userId, {
|
|
887
|
+
onCallDutyPolicyScheduleId: scheduleId.toString(),
|
|
888
|
+
} as LogAttributes);
|
|
838
889
|
resultReturn.nextUserId = new ObjectID(userId);
|
|
839
890
|
}
|
|
840
891
|
|
|
841
892
|
// get handOffTime
|
|
842
893
|
const handOffTime: Date | undefined = nextEvent?.end; // this is user id in string.
|
|
843
894
|
if (handOffTime) {
|
|
844
|
-
logger.debug("Next handOffTime: " + handOffTime.toISOString()
|
|
895
|
+
logger.debug("Next handOffTime: " + handOffTime.toISOString(), {
|
|
896
|
+
onCallDutyPolicyScheduleId: scheduleId.toString(),
|
|
897
|
+
} as LogAttributes);
|
|
845
898
|
resultReturn.nextHandOffTimeAt = handOffTime;
|
|
846
899
|
}
|
|
847
900
|
|
|
848
901
|
// get start time
|
|
849
902
|
const startTime: Date | undefined = nextEvent?.start; // this is user id in string.
|
|
850
903
|
if (startTime) {
|
|
851
|
-
logger.debug("Next rosterStartAt: " + startTime.toISOString()
|
|
904
|
+
logger.debug("Next rosterStartAt: " + startTime.toISOString(), {
|
|
905
|
+
onCallDutyPolicyScheduleId: scheduleId.toString(),
|
|
906
|
+
} as LogAttributes);
|
|
852
907
|
resultReturn.nextRosterStartAt = startTime;
|
|
853
908
|
}
|
|
854
909
|
}
|
|
855
910
|
|
|
856
|
-
logger.debug("Returning result: " + JSON.stringify(resultReturn)
|
|
911
|
+
logger.debug("Returning result: " + JSON.stringify(resultReturn), {
|
|
912
|
+
onCallDutyPolicyScheduleId: scheduleId.toString(),
|
|
913
|
+
} as LogAttributes);
|
|
857
914
|
return resultReturn;
|
|
858
915
|
}
|
|
859
916
|
|
|
@@ -944,32 +1001,46 @@ export class Service extends DatabaseService<OnCallDutyPolicySchedule> {
|
|
|
944
1001
|
}): Promise<Array<CalendarEvent>> {
|
|
945
1002
|
logger.debug(
|
|
946
1003
|
"getEventByIndexInSchedule called with data: " + JSON.stringify(data),
|
|
1004
|
+
{
|
|
1005
|
+
onCallDutyPolicyScheduleId: data.scheduleId.toString(),
|
|
1006
|
+
} as LogAttributes,
|
|
947
1007
|
);
|
|
948
1008
|
|
|
949
1009
|
const layerProps: Array<LayerProps> = await this.getScheduleLayerProps({
|
|
950
1010
|
scheduleId: data.scheduleId,
|
|
951
1011
|
});
|
|
952
1012
|
|
|
953
|
-
logger.debug("Layer properties fetched: " + JSON.stringify(layerProps)
|
|
1013
|
+
logger.debug("Layer properties fetched: " + JSON.stringify(layerProps), {
|
|
1014
|
+
onCallDutyPolicyScheduleId: data.scheduleId.toString(),
|
|
1015
|
+
} as LogAttributes);
|
|
954
1016
|
|
|
955
1017
|
if (layerProps.length === 0) {
|
|
956
1018
|
logger.debug(
|
|
957
1019
|
"No layers found for scheduleId: " + data.scheduleId.toString(),
|
|
1020
|
+
{
|
|
1021
|
+
onCallDutyPolicyScheduleId: data.scheduleId.toString(),
|
|
1022
|
+
} as LogAttributes,
|
|
958
1023
|
);
|
|
959
1024
|
return [];
|
|
960
1025
|
}
|
|
961
1026
|
|
|
962
1027
|
const currentStartTime: Date = OneUptimeDate.getCurrentDate();
|
|
963
|
-
logger.debug("Current start time: " + currentStartTime.toISOString()
|
|
1028
|
+
logger.debug("Current start time: " + currentStartTime.toISOString(), {
|
|
1029
|
+
onCallDutyPolicyScheduleId: data.scheduleId.toString(),
|
|
1030
|
+
} as LogAttributes);
|
|
964
1031
|
|
|
965
1032
|
const currentEndTime: Date = OneUptimeDate.addRemoveYears(
|
|
966
1033
|
currentStartTime,
|
|
967
1034
|
1,
|
|
968
1035
|
);
|
|
969
|
-
logger.debug("Current end time: " + currentEndTime.toISOString()
|
|
1036
|
+
logger.debug("Current end time: " + currentEndTime.toISOString(), {
|
|
1037
|
+
onCallDutyPolicyScheduleId: data.scheduleId.toString(),
|
|
1038
|
+
} as LogAttributes);
|
|
970
1039
|
|
|
971
1040
|
const numberOfEventsToGet: number = data.getNumberOfEvents;
|
|
972
|
-
logger.debug("Number of events to get: " + numberOfEventsToGet
|
|
1041
|
+
logger.debug("Number of events to get: " + numberOfEventsToGet, {
|
|
1042
|
+
onCallDutyPolicyScheduleId: data.scheduleId.toString(),
|
|
1043
|
+
} as LogAttributes);
|
|
973
1044
|
|
|
974
1045
|
const events: Array<CalendarEvent> = this.layerUtil.getMultiLayerEvents(
|
|
975
1046
|
{
|
|
@@ -982,7 +1053,9 @@ export class Service extends DatabaseService<OnCallDutyPolicySchedule> {
|
|
|
982
1053
|
},
|
|
983
1054
|
);
|
|
984
1055
|
|
|
985
|
-
logger.debug("Events fetched: " + JSON.stringify(events)
|
|
1056
|
+
logger.debug("Events fetched: " + JSON.stringify(events), {
|
|
1057
|
+
onCallDutyPolicyScheduleId: data.scheduleId.toString(),
|
|
1058
|
+
} as LogAttributes);
|
|
986
1059
|
|
|
987
1060
|
return events;
|
|
988
1061
|
}
|
|
@@ -30,7 +30,7 @@ import QueryOperator from "../../Types/BaseDatabase/QueryOperator";
|
|
|
30
30
|
import WorkspaceNotificationRuleService, {
|
|
31
31
|
MessageBlocksByWorkspaceType,
|
|
32
32
|
} from "./WorkspaceNotificationRuleService";
|
|
33
|
-
import logger from "../Utils/Logger";
|
|
33
|
+
import logger, { LogAttributes } from "../Utils/Logger";
|
|
34
34
|
import OnCallDutyPolicyWorkspaceMessages from "../Utils/Workspace/WorkspaceMessages/OnCallDutyPolicy";
|
|
35
35
|
import OnCallDutyPolicyFeedService from "./OnCallDutyPolicyFeedService";
|
|
36
36
|
import { OnCallDutyPolicyFeedEventType } from "../../Models/DatabaseModels/OnCallDutyPolicyFeed";
|
|
@@ -187,6 +187,7 @@ ${onCallPolicy.description || "No description provided."}
|
|
|
187
187
|
} catch (error) {
|
|
188
188
|
logger.error(
|
|
189
189
|
`Error while archiving workspace channels for onCallDutyPolicy ${deleteBy.query._id}: ${error}`,
|
|
190
|
+
{ projectId: (projectId as ObjectID)?.toString() } as LogAttributes,
|
|
190
191
|
);
|
|
191
192
|
}
|
|
192
193
|
}
|
|
@@ -45,25 +45,56 @@ export default class OTelIngestService {
|
|
|
45
45
|
});
|
|
46
46
|
|
|
47
47
|
if (!service) {
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
}
|
|
48
|
+
try {
|
|
49
|
+
const newService: Service = new Service();
|
|
50
|
+
newService.projectId = data.projectId;
|
|
51
|
+
newService.name = data.serviceName;
|
|
52
|
+
newService.description = data.serviceName;
|
|
53
|
+
newService.retainTelemetryDataForDays = DEFAULT_RETENTION_IN_DAYS;
|
|
54
|
+
|
|
55
|
+
const createdService: Service = await ServiceService.create({
|
|
56
|
+
data: newService,
|
|
57
|
+
props: {
|
|
58
|
+
isRoot: true,
|
|
59
|
+
},
|
|
60
|
+
});
|
|
61
|
+
|
|
62
|
+
return {
|
|
63
|
+
serviceId: createdService.id!,
|
|
64
|
+
dataRententionInDays: DEFAULT_RETENTION_IN_DAYS,
|
|
65
|
+
};
|
|
66
|
+
} catch {
|
|
67
|
+
/*
|
|
68
|
+
* Race condition: another request created the service concurrently.
|
|
69
|
+
* Re-fetch the existing service.
|
|
70
|
+
*/
|
|
71
|
+
const existingService: Service | null = await ServiceService.findOneBy({
|
|
72
|
+
query: {
|
|
73
|
+
projectId: data.projectId,
|
|
74
|
+
name: data.serviceName,
|
|
75
|
+
},
|
|
76
|
+
select: {
|
|
77
|
+
_id: true,
|
|
78
|
+
retainTelemetryDataForDays: true,
|
|
79
|
+
},
|
|
80
|
+
props: {
|
|
81
|
+
isRoot: true,
|
|
82
|
+
},
|
|
83
|
+
});
|
|
84
|
+
|
|
85
|
+
if (existingService) {
|
|
86
|
+
return {
|
|
87
|
+
serviceId: existingService.id!,
|
|
88
|
+
dataRententionInDays:
|
|
89
|
+
existingService.retainTelemetryDataForDays ||
|
|
90
|
+
DEFAULT_RETENTION_IN_DAYS,
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
throw new Error(
|
|
95
|
+
"Failed to create or find service: " + data.serviceName,
|
|
96
|
+
);
|
|
97
|
+
}
|
|
67
98
|
}
|
|
68
99
|
|
|
69
100
|
return {
|
|
@@ -167,7 +198,7 @@ export default class OTelIngestService {
|
|
|
167
198
|
}),
|
|
168
199
|
...TelemetryUtil.getAttributes({
|
|
169
200
|
items: (datapoint["attributes"] as JSONArray) || [],
|
|
170
|
-
prefixKeysWithString: "
|
|
201
|
+
prefixKeysWithString: "",
|
|
171
202
|
}),
|
|
172
203
|
};
|
|
173
204
|
}
|
|
@@ -19,7 +19,7 @@ import Dictionary from "../../Types/Dictionary";
|
|
|
19
19
|
import OneUptimeDate from "../../Types/Date";
|
|
20
20
|
import UserNotificationSettingService from "./UserNotificationSettingService";
|
|
21
21
|
import NotificationSettingEventType from "../../Types/NotificationSetting/NotificationSettingEventType";
|
|
22
|
-
import logger from "../Utils/Logger";
|
|
22
|
+
import logger, { LogAttributes } from "../Utils/Logger";
|
|
23
23
|
import { CallRequestMessage } from "../../Types/Call/CallRequest";
|
|
24
24
|
import { SMSMessage } from "../../Types/SMS/SMS";
|
|
25
25
|
import { EmailEnvelope } from "../../Types/Email/EmailMessage";
|
|
@@ -56,8 +56,10 @@ export class Service extends DatabaseService<Model> {
|
|
|
56
56
|
OneUptimeDate.toString(lastAlive),
|
|
57
57
|
);
|
|
58
58
|
} catch (err) {
|
|
59
|
-
logger.error("Error in saving last alive in cache"
|
|
60
|
-
|
|
59
|
+
logger.error("Error in saving last alive in cache", {
|
|
60
|
+
projectId: probeId?.toString(),
|
|
61
|
+
} as LogAttributes);
|
|
62
|
+
logger.error(err, { projectId: probeId?.toString() } as LogAttributes);
|
|
61
63
|
}
|
|
62
64
|
}
|
|
63
65
|
|
|
@@ -95,8 +97,10 @@ export class Service extends DatabaseService<Model> {
|
|
|
95
97
|
await this.saveLastAliveInCache(probeId, now);
|
|
96
98
|
} catch (err) {
|
|
97
99
|
// failed to hit the cache, so we will hit the database
|
|
98
|
-
logger.error("Error in getting last alive from cache"
|
|
99
|
-
|
|
100
|
+
logger.error("Error in getting last alive from cache", {
|
|
101
|
+
probeId: probeId?.toString(),
|
|
102
|
+
} as LogAttributes);
|
|
103
|
+
logger.error(err, { probeId: probeId?.toString() } as LogAttributes);
|
|
100
104
|
}
|
|
101
105
|
|
|
102
106
|
return true;
|
|
@@ -413,8 +417,13 @@ export class Service extends DatabaseService<Model> {
|
|
|
413
417
|
eventType,
|
|
414
418
|
});
|
|
415
419
|
} catch (e) {
|
|
416
|
-
logger.error(
|
|
417
|
-
|
|
420
|
+
logger.error(
|
|
421
|
+
"Error in sending incident created resource notification",
|
|
422
|
+
{ projectId: probe.projectId?.toString() } as LogAttributes,
|
|
423
|
+
);
|
|
424
|
+
logger.error(e, {
|
|
425
|
+
projectId: probe.projectId?.toString(),
|
|
426
|
+
} as LogAttributes);
|
|
418
427
|
}
|
|
419
428
|
}
|
|
420
429
|
}
|
|
@@ -13,7 +13,7 @@ import FindBy from "../Types/Database/FindBy";
|
|
|
13
13
|
import { OnCreate, OnDelete, OnFind, OnUpdate } from "../Types/Database/Hooks";
|
|
14
14
|
import QueryHelper from "../Types/Database/QueryHelper";
|
|
15
15
|
import UpdateBy from "../Types/Database/UpdateBy";
|
|
16
|
-
import logger from "../Utils/Logger";
|
|
16
|
+
import logger, { LogAttributes } from "../Utils/Logger";
|
|
17
17
|
import Errors from "../Utils/Errors";
|
|
18
18
|
import AccessTokenService from "./AccessTokenService";
|
|
19
19
|
import BillingService from "./BillingService";
|
|
@@ -117,7 +117,9 @@ export class ProjectService extends DatabaseService<Model> {
|
|
|
117
117
|
);
|
|
118
118
|
}
|
|
119
119
|
|
|
120
|
-
logger.debug("Creating project for user " + data.props.userId
|
|
120
|
+
logger.debug("Creating project for user " + data.props.userId, {
|
|
121
|
+
userId: data.props.userId?.toString(),
|
|
122
|
+
} as LogAttributes);
|
|
121
123
|
|
|
122
124
|
const user: User | null = await UserService.findOneById({
|
|
123
125
|
id: data.props.userId,
|
|
@@ -372,6 +374,7 @@ export class ProjectService extends DatabaseService<Model> {
|
|
|
372
374
|
} catch (err) {
|
|
373
375
|
logger.error(
|
|
374
376
|
`[Invoice Email] Failed to update Stripe customer business details: ${err}`,
|
|
377
|
+
{ projectId: updateBy.query._id?.toString() } as LogAttributes,
|
|
375
378
|
);
|
|
376
379
|
}
|
|
377
380
|
} else {
|
|
@@ -481,6 +484,7 @@ export class ProjectService extends DatabaseService<Model> {
|
|
|
481
484
|
|
|
482
485
|
logger.debug(
|
|
483
486
|
`Changing plan for project ${project.id?.toString()} to ${plan.getName()} with seats ${seats}`,
|
|
487
|
+
{ projectId: project.id?.toString() } as LogAttributes,
|
|
484
488
|
);
|
|
485
489
|
|
|
486
490
|
const endTrialAt: Date | undefined =
|
|
@@ -582,7 +586,9 @@ export class ProjectService extends DatabaseService<Model> {
|
|
|
582
586
|
url: URL.fromString(NotificationSlackWebhookOnSubscriptionUpdate),
|
|
583
587
|
text: slackMessage,
|
|
584
588
|
}).catch((error: Exception) => {
|
|
585
|
-
logger.error("Error sending slack message: " + error
|
|
589
|
+
logger.error("Error sending slack message: " + error, {
|
|
590
|
+
projectId: project?.id?.toString(),
|
|
591
|
+
} as LogAttributes);
|
|
586
592
|
});
|
|
587
593
|
}
|
|
588
594
|
}
|
|
@@ -787,7 +793,9 @@ export class ProjectService extends DatabaseService<Model> {
|
|
|
787
793
|
url: URL.fromString(NotificationSlackWebhookOnCreateProject),
|
|
788
794
|
text: slackMessage,
|
|
789
795
|
}).catch((error: Exception) => {
|
|
790
|
-
logger.error("Error sending slack message: " + error
|
|
796
|
+
logger.error("Error sending slack message: " + error, {
|
|
797
|
+
projectId: createdItem.id?.toString(),
|
|
798
|
+
} as LogAttributes);
|
|
791
799
|
});
|
|
792
800
|
}
|
|
793
801
|
}
|
|
@@ -1380,7 +1388,9 @@ export class ProjectService extends DatabaseService<Model> {
|
|
|
1380
1388
|
text: slackMessage,
|
|
1381
1389
|
}).catch((err: Error) => {
|
|
1382
1390
|
// log this error but do not throw it. Not important enough to stop the process.
|
|
1383
|
-
logger.error(err
|
|
1391
|
+
logger.error(err, {
|
|
1392
|
+
projectId: project?.id?.toString(),
|
|
1393
|
+
} as LogAttributes);
|
|
1384
1394
|
});
|
|
1385
1395
|
}
|
|
1386
1396
|
}
|
|
@@ -1477,14 +1487,18 @@ export class ProjectService extends DatabaseService<Model> {
|
|
|
1477
1487
|
userId: owner.id!,
|
|
1478
1488
|
},
|
|
1479
1489
|
).catch((err: Error) => {
|
|
1480
|
-
logger.error(err
|
|
1490
|
+
logger.error(err, {
|
|
1491
|
+
projectId: projectId?.toString(),
|
|
1492
|
+
} as LogAttributes);
|
|
1481
1493
|
});
|
|
1482
1494
|
}
|
|
1483
1495
|
}
|
|
1484
1496
|
|
|
1485
1497
|
@CaptureSpan()
|
|
1486
1498
|
public async reactiveSubscription(projectId: ObjectID): Promise<void> {
|
|
1487
|
-
logger.debug("Reactivating subscription for project " + projectId
|
|
1499
|
+
logger.debug("Reactivating subscription for project " + projectId, {
|
|
1500
|
+
projectId: projectId?.toString(),
|
|
1501
|
+
} as LogAttributes);
|
|
1488
1502
|
|
|
1489
1503
|
const project: Model | null = await this.findOneById({
|
|
1490
1504
|
id: projectId!,
|
|
@@ -4,7 +4,7 @@ import OneUptimeDate from "../../Types/Date";
|
|
|
4
4
|
import BadDataException from "../../Types/Exception/BadDataException";
|
|
5
5
|
import ObjectID from "../../Types/ObjectID";
|
|
6
6
|
import { IsBillingEnabled } from "../EnvironmentConfig";
|
|
7
|
-
import logger from "../Utils/Logger";
|
|
7
|
+
import logger, { LogAttributes } from "../Utils/Logger";
|
|
8
8
|
import DatabaseService from "./DatabaseService";
|
|
9
9
|
import Model, {
|
|
10
10
|
ScheduledMaintenanceFeedEventType,
|
|
@@ -105,16 +105,29 @@ export class Service extends DatabaseService<Model> {
|
|
|
105
105
|
});
|
|
106
106
|
}
|
|
107
107
|
} catch (e) {
|
|
108
|
-
logger.error("Error in sending notification to slack and teams"
|
|
109
|
-
|
|
108
|
+
logger.error("Error in sending notification to slack and teams", {
|
|
109
|
+
projectId: data.projectId?.toString(),
|
|
110
|
+
scheduledMaintenanceId: data.scheduledMaintenanceId?.toString(),
|
|
111
|
+
} as LogAttributes);
|
|
112
|
+
logger.error(e, {
|
|
113
|
+
projectId: data.projectId?.toString(),
|
|
114
|
+
scheduledMaintenanceId: data.scheduledMaintenanceId?.toString(),
|
|
115
|
+
} as LogAttributes);
|
|
110
116
|
|
|
111
117
|
// we dont throw this error as it is not a critical error
|
|
112
118
|
}
|
|
113
119
|
} catch (error) {
|
|
114
120
|
logger.error(
|
|
115
121
|
"ScheduledMaintenanceFeedService.createScheduledMaintenanceFeedItem",
|
|
122
|
+
{
|
|
123
|
+
projectId: data.projectId?.toString(),
|
|
124
|
+
scheduledMaintenanceId: data.scheduledMaintenanceId?.toString(),
|
|
125
|
+
} as LogAttributes,
|
|
116
126
|
);
|
|
117
|
-
logger.error(error
|
|
127
|
+
logger.error(error, {
|
|
128
|
+
projectId: data.projectId?.toString(),
|
|
129
|
+
scheduledMaintenanceId: data.scheduledMaintenanceId?.toString(),
|
|
130
|
+
} as LogAttributes);
|
|
118
131
|
// we dont want to throw the error here, as this is not critical but we still log it.
|
|
119
132
|
}
|
|
120
133
|
}
|