@oneuptime/common 10.0.53 → 10.0.54
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 +4 -2
- 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 +4 -2
- 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
|
@@ -524,6 +524,66 @@ export default class Metric extends AnalyticsBaseModel {
|
|
|
524
524
|
},
|
|
525
525
|
);
|
|
526
526
|
|
|
527
|
+
const traceIdColumn: AnalyticsTableColumn = new AnalyticsTableColumn({
|
|
528
|
+
key: "traceId",
|
|
529
|
+
title: "Trace ID",
|
|
530
|
+
description:
|
|
531
|
+
"Trace ID from an exemplar associated with this metric data point",
|
|
532
|
+
required: false,
|
|
533
|
+
type: TableColumnType.Text,
|
|
534
|
+
skipIndex: {
|
|
535
|
+
name: "idx_trace_id",
|
|
536
|
+
type: SkipIndexType.BloomFilter,
|
|
537
|
+
params: [0.01],
|
|
538
|
+
granularity: 1,
|
|
539
|
+
},
|
|
540
|
+
accessControl: {
|
|
541
|
+
read: [
|
|
542
|
+
Permission.ProjectOwner,
|
|
543
|
+
Permission.ProjectAdmin,
|
|
544
|
+
Permission.ProjectMember,
|
|
545
|
+
Permission.ReadTelemetryServiceLog,
|
|
546
|
+
],
|
|
547
|
+
create: [
|
|
548
|
+
Permission.ProjectOwner,
|
|
549
|
+
Permission.ProjectAdmin,
|
|
550
|
+
Permission.ProjectMember,
|
|
551
|
+
Permission.CreateTelemetryServiceLog,
|
|
552
|
+
],
|
|
553
|
+
update: [],
|
|
554
|
+
},
|
|
555
|
+
});
|
|
556
|
+
|
|
557
|
+
const spanIdColumn: AnalyticsTableColumn = new AnalyticsTableColumn({
|
|
558
|
+
key: "spanId",
|
|
559
|
+
title: "Span ID",
|
|
560
|
+
description:
|
|
561
|
+
"Span ID from an exemplar associated with this metric data point",
|
|
562
|
+
required: false,
|
|
563
|
+
type: TableColumnType.Text,
|
|
564
|
+
skipIndex: {
|
|
565
|
+
name: "idx_span_id",
|
|
566
|
+
type: SkipIndexType.BloomFilter,
|
|
567
|
+
params: [0.01],
|
|
568
|
+
granularity: 1,
|
|
569
|
+
},
|
|
570
|
+
accessControl: {
|
|
571
|
+
read: [
|
|
572
|
+
Permission.ProjectOwner,
|
|
573
|
+
Permission.ProjectAdmin,
|
|
574
|
+
Permission.ProjectMember,
|
|
575
|
+
Permission.ReadTelemetryServiceLog,
|
|
576
|
+
],
|
|
577
|
+
create: [
|
|
578
|
+
Permission.ProjectOwner,
|
|
579
|
+
Permission.ProjectAdmin,
|
|
580
|
+
Permission.ProjectMember,
|
|
581
|
+
Permission.CreateTelemetryServiceLog,
|
|
582
|
+
],
|
|
583
|
+
update: [],
|
|
584
|
+
},
|
|
585
|
+
});
|
|
586
|
+
|
|
527
587
|
const retentionDateColumn: AnalyticsTableColumn = new AnalyticsTableColumn({
|
|
528
588
|
key: "retentionDate",
|
|
529
589
|
title: "Retention Date",
|
|
@@ -587,6 +647,8 @@ export default class Metric extends AnalyticsBaseModel {
|
|
|
587
647
|
maxColumn,
|
|
588
648
|
bucketCountsColumn,
|
|
589
649
|
explicitBoundsColumn,
|
|
650
|
+
traceIdColumn,
|
|
651
|
+
spanIdColumn,
|
|
590
652
|
retentionDateColumn,
|
|
591
653
|
],
|
|
592
654
|
projections: [],
|
|
@@ -761,6 +823,22 @@ export default class Metric extends AnalyticsBaseModel {
|
|
|
761
823
|
this.setColumnValue("explicitBounds", v);
|
|
762
824
|
}
|
|
763
825
|
|
|
826
|
+
public get traceId(): string | undefined {
|
|
827
|
+
return this.getColumnValue("traceId") as string | undefined;
|
|
828
|
+
}
|
|
829
|
+
|
|
830
|
+
public set traceId(v: string | undefined) {
|
|
831
|
+
this.setColumnValue("traceId", v);
|
|
832
|
+
}
|
|
833
|
+
|
|
834
|
+
public get spanId(): string | undefined {
|
|
835
|
+
return this.getColumnValue("spanId") as string | undefined;
|
|
836
|
+
}
|
|
837
|
+
|
|
838
|
+
public set spanId(v: string | undefined) {
|
|
839
|
+
this.setColumnValue("spanId", v);
|
|
840
|
+
}
|
|
841
|
+
|
|
764
842
|
public get retentionDate(): Date | undefined {
|
|
765
843
|
return this.getColumnValue("retentionDate") as Date | undefined;
|
|
766
844
|
}
|
|
@@ -29,7 +29,7 @@ import CodeRepositoryType from "../../Types/CodeRepository/CodeRepositoryType";
|
|
|
29
29
|
import LIMIT_MAX from "../../Types/Database/LimitMax";
|
|
30
30
|
import URL from "../../Types/API/URL";
|
|
31
31
|
import PullRequestState from "../../Types/CodeRepository/PullRequestState";
|
|
32
|
-
import logger from "../Utils/Logger";
|
|
32
|
+
import logger, { getLogAttributesFromRequest } from "../Utils/Logger";
|
|
33
33
|
|
|
34
34
|
export default class AIAgentDataAPI {
|
|
35
35
|
public router!: ExpressRouter;
|
|
@@ -113,6 +113,7 @@ export default class AIAgentDataAPI {
|
|
|
113
113
|
|
|
114
114
|
logger.debug(
|
|
115
115
|
`LLM config fetched for project ${projectId.toString()}: ${llmProvider.llmType}`,
|
|
116
|
+
getLogAttributesFromRequest(req as any),
|
|
116
117
|
);
|
|
117
118
|
|
|
118
119
|
return Response.sendJsonObjectResponse(req, res, {
|
|
@@ -194,6 +195,7 @@ export default class AIAgentDataAPI {
|
|
|
194
195
|
|
|
195
196
|
logger.debug(
|
|
196
197
|
`Exception details fetched: ${exception._id} - ${exception.message?.substring(0, 100)}`,
|
|
198
|
+
getLogAttributesFromRequest(req as any),
|
|
197
199
|
);
|
|
198
200
|
|
|
199
201
|
return Response.sendJsonObjectResponse(req, res, {
|
|
@@ -328,6 +330,7 @@ export default class AIAgentDataAPI {
|
|
|
328
330
|
|
|
329
331
|
logger.debug(
|
|
330
332
|
`Found ${repositories.length} code repositories for service ${serviceId.toString()}`,
|
|
333
|
+
getLogAttributesFromRequest(req as any),
|
|
331
334
|
);
|
|
332
335
|
|
|
333
336
|
return Response.sendJsonObjectResponse(req, res, {
|
|
@@ -440,6 +443,7 @@ export default class AIAgentDataAPI {
|
|
|
440
443
|
|
|
441
444
|
logger.debug(
|
|
442
445
|
`Generated access token for repository ${codeRepository.organizationName}/${codeRepository.repositoryName}`,
|
|
446
|
+
getLogAttributesFromRequest(req as any),
|
|
443
447
|
);
|
|
444
448
|
|
|
445
449
|
return Response.sendJsonObjectResponse(req, res, {
|
|
@@ -623,6 +627,7 @@ export default class AIAgentDataAPI {
|
|
|
623
627
|
|
|
624
628
|
logger.debug(
|
|
625
629
|
`Recorded pull request ${pullRequestUrl} for task ${taskId.toString()}`,
|
|
630
|
+
getLogAttributesFromRequest(req as any),
|
|
626
631
|
);
|
|
627
632
|
|
|
628
633
|
return Response.sendJsonObjectResponse(req, res, {
|
package/Server/API/BillingAPI.ts
CHANGED
|
@@ -17,7 +17,7 @@ import Project from "../../Models/DatabaseModels/Project";
|
|
|
17
17
|
import CommonAPI from "./CommonAPI";
|
|
18
18
|
import ObjectID from "../../Types/ObjectID";
|
|
19
19
|
import DatabaseCommonInteractionProps from "../../Types/BaseDatabase/DatabaseCommonInteractionProps";
|
|
20
|
-
import logger from "../Utils/Logger";
|
|
20
|
+
import logger, { getLogAttributesFromRequest } from "../Utils/Logger";
|
|
21
21
|
|
|
22
22
|
export default class BillingAPI {
|
|
23
23
|
public router: ExpressRouter;
|
|
@@ -32,11 +32,13 @@ export default class BillingAPI {
|
|
|
32
32
|
try {
|
|
33
33
|
logger.debug(
|
|
34
34
|
`[Invoice Email] Webhook endpoint hit - /billing/webhook`,
|
|
35
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
35
36
|
);
|
|
36
37
|
|
|
37
38
|
if (!IsBillingEnabled) {
|
|
38
39
|
logger.debug(
|
|
39
40
|
`[Invoice Email] Billing not enabled, returning early`,
|
|
41
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
40
42
|
);
|
|
41
43
|
return Response.sendJsonObjectResponse(req, res, {
|
|
42
44
|
message: "Billing is not enabled",
|
|
@@ -46,6 +48,7 @@ export default class BillingAPI {
|
|
|
46
48
|
if (!BillingWebhookSecret) {
|
|
47
49
|
logger.error(
|
|
48
50
|
`[Invoice Email] Billing webhook secret is not configured`,
|
|
51
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
49
52
|
);
|
|
50
53
|
throw new BadDataException(
|
|
51
54
|
"Billing webhook secret is not configured",
|
|
@@ -55,46 +58,65 @@ export default class BillingAPI {
|
|
|
55
58
|
const signature: string = req.headers["stripe-signature"] as string;
|
|
56
59
|
logger.debug(
|
|
57
60
|
`[Invoice Email] Stripe signature header present: ${Boolean(signature)}`,
|
|
61
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
58
62
|
);
|
|
59
63
|
|
|
60
64
|
if (!signature) {
|
|
61
|
-
logger.error(
|
|
65
|
+
logger.error(
|
|
66
|
+
`[Invoice Email] Missing Stripe signature header`,
|
|
67
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
68
|
+
);
|
|
62
69
|
throw new BadDataException("Missing Stripe signature header");
|
|
63
70
|
}
|
|
64
71
|
|
|
65
72
|
const rawBody: string | undefined = (req as OneUptimeRequest).rawBody;
|
|
66
73
|
logger.debug(
|
|
67
74
|
`[Invoice Email] Raw body present: ${Boolean(rawBody)}, length: ${rawBody?.length || 0}`,
|
|
75
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
68
76
|
);
|
|
69
77
|
|
|
70
78
|
if (!rawBody) {
|
|
71
79
|
logger.error(
|
|
72
80
|
`[Invoice Email] Missing raw body for webhook verification`,
|
|
81
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
73
82
|
);
|
|
74
83
|
throw new BadDataException(
|
|
75
84
|
"Missing raw body for webhook verification",
|
|
76
85
|
);
|
|
77
86
|
}
|
|
78
87
|
|
|
79
|
-
logger.debug(
|
|
88
|
+
logger.debug(
|
|
89
|
+
`[Invoice Email] Verifying webhook signature...`,
|
|
90
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
91
|
+
);
|
|
80
92
|
const event: Stripe.Event = BillingService.verifyWebhookSignature(
|
|
81
93
|
rawBody,
|
|
82
94
|
signature,
|
|
83
95
|
);
|
|
84
96
|
logger.debug(
|
|
85
97
|
`[Invoice Email] Webhook signature verified successfully, event type: ${event.type}`,
|
|
98
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
86
99
|
);
|
|
87
100
|
|
|
88
101
|
// Handle the event asynchronously
|
|
89
|
-
logger.debug(
|
|
102
|
+
logger.debug(
|
|
103
|
+
`[Invoice Email] Handling webhook event...`,
|
|
104
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
105
|
+
);
|
|
90
106
|
await BillingService.handleWebhookEvent(event);
|
|
91
|
-
logger.debug(
|
|
107
|
+
logger.debug(
|
|
108
|
+
`[Invoice Email] Webhook event handled successfully`,
|
|
109
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
110
|
+
);
|
|
92
111
|
|
|
93
112
|
return Response.sendJsonObjectResponse(req, res, {
|
|
94
113
|
received: true,
|
|
95
114
|
});
|
|
96
115
|
} catch (err) {
|
|
97
|
-
logger.error(
|
|
116
|
+
logger.error(
|
|
117
|
+
`[Invoice Email] Stripe webhook error: ${err}`,
|
|
118
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
119
|
+
);
|
|
98
120
|
next(err);
|
|
99
121
|
}
|
|
100
122
|
},
|
package/Server/API/CommonAPI.ts
CHANGED
|
@@ -5,6 +5,7 @@ import DatabaseCommonInteractionProps from "../../Types/BaseDatabase/DatabaseCom
|
|
|
5
5
|
import { PlanType } from "../../Types/Billing/SubscriptionPlan";
|
|
6
6
|
import UserType from "../../Types/UserType";
|
|
7
7
|
import CaptureSpan from "../Utils/Telemetry/CaptureSpan";
|
|
8
|
+
import SpanUtil from "../Utils/Telemetry/SpanUtil";
|
|
8
9
|
|
|
9
10
|
export default class CommonAPI {
|
|
10
11
|
@CaptureSpan()
|
|
@@ -62,6 +63,16 @@ export default class CommonAPI {
|
|
|
62
63
|
props.isMasterAdmin = true;
|
|
63
64
|
}
|
|
64
65
|
|
|
66
|
+
// Add context attributes to the current span for observability
|
|
67
|
+
SpanUtil.addAttributesToCurrentSpan({
|
|
68
|
+
...(props.tenantId ? { projectId: props.tenantId.toString() } : {}),
|
|
69
|
+
...(props.userId ? { userId: props.userId.toString() } : {}),
|
|
70
|
+
...(props.userType ? { userType: props.userType } : {}),
|
|
71
|
+
...((req as OneUptimeRequest).requestId
|
|
72
|
+
? { requestId: (req as OneUptimeRequest).requestId }
|
|
73
|
+
: {}),
|
|
74
|
+
});
|
|
75
|
+
|
|
65
76
|
return props;
|
|
66
77
|
}
|
|
67
78
|
}
|
|
@@ -4,11 +4,12 @@ import DashboardService, {
|
|
|
4
4
|
} from "../Services/DashboardService";
|
|
5
5
|
import DashboardDomainService from "../Services/DashboardDomainService";
|
|
6
6
|
import CookieUtil from "../Utils/Cookie";
|
|
7
|
-
import logger from "../Utils/Logger";
|
|
7
|
+
import logger, { getLogAttributesFromRequest } from "../Utils/Logger";
|
|
8
8
|
import {
|
|
9
9
|
ExpressRequest,
|
|
10
10
|
ExpressResponse,
|
|
11
11
|
NextFunction,
|
|
12
|
+
OneUptimeRequest,
|
|
12
13
|
} from "../Utils/Express";
|
|
13
14
|
import Response from "../Utils/Response";
|
|
14
15
|
import BaseAPI from "./BaseAPI";
|
|
@@ -76,7 +77,10 @@ export default class DashboardAPI extends BaseAPI<
|
|
|
76
77
|
try {
|
|
77
78
|
dashboardId = new ObjectID(dashboardIdOrDomain);
|
|
78
79
|
} catch (err) {
|
|
79
|
-
logger.error(
|
|
80
|
+
logger.error(
|
|
81
|
+
err,
|
|
82
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
83
|
+
);
|
|
80
84
|
return Response.sendErrorResponse(
|
|
81
85
|
req,
|
|
82
86
|
res,
|
|
@@ -7,8 +7,9 @@ import {
|
|
|
7
7
|
ExpressRequest,
|
|
8
8
|
ExpressResponse,
|
|
9
9
|
NextFunction,
|
|
10
|
+
OneUptimeRequest,
|
|
10
11
|
} from "../Utils/Express";
|
|
11
|
-
import logger from "../Utils/Logger";
|
|
12
|
+
import logger, { getLogAttributesFromRequest } from "../Utils/Logger";
|
|
12
13
|
import Response from "../Utils/Response";
|
|
13
14
|
import BaseAPI from "./BaseAPI";
|
|
14
15
|
import CommonAPI from "./CommonAPI";
|
|
@@ -219,11 +220,17 @@ export default class DashboardDomainAPI extends BaseAPI<
|
|
|
219
220
|
);
|
|
220
221
|
}
|
|
221
222
|
|
|
222
|
-
logger.debug(
|
|
223
|
+
logger.debug(
|
|
224
|
+
"Ordering SSL",
|
|
225
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
226
|
+
);
|
|
223
227
|
|
|
224
228
|
await DashboardDomainService.orderCert(domain);
|
|
225
229
|
|
|
226
|
-
logger.debug(
|
|
230
|
+
logger.debug(
|
|
231
|
+
"SSL Provisioned for domain - " + domain.fullDomain,
|
|
232
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
233
|
+
);
|
|
227
234
|
|
|
228
235
|
return Response.sendEmptySuccessResponse(req, res);
|
|
229
236
|
} catch (e) {
|
package/Server/API/GitHubAPI.ts
CHANGED
|
@@ -8,7 +8,7 @@ import Response from "../Utils/Response";
|
|
|
8
8
|
import BadDataException from "../../Types/Exception/BadDataException";
|
|
9
9
|
import NotAuthenticatedException from "../../Types/Exception/NotAuthenticatedException";
|
|
10
10
|
import NotAuthorizedException from "../../Types/Exception/NotAuthorizedException";
|
|
11
|
-
import logger from "../Utils/Logger";
|
|
11
|
+
import logger, { getLogAttributesFromRequest } from "../Utils/Logger";
|
|
12
12
|
import { JSONObject } from "../../Types/JSON";
|
|
13
13
|
import {
|
|
14
14
|
DashboardClientUrl,
|
|
@@ -140,8 +140,14 @@ export default class GitHubAPI {
|
|
|
140
140
|
|
|
141
141
|
return Response.redirect(req, res, URL.fromString(redirectUrl));
|
|
142
142
|
} catch (error) {
|
|
143
|
-
logger.error(
|
|
144
|
-
|
|
143
|
+
logger.error(
|
|
144
|
+
"GitHub Auth Callback Error:",
|
|
145
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
146
|
+
);
|
|
147
|
+
logger.error(
|
|
148
|
+
error,
|
|
149
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
150
|
+
);
|
|
145
151
|
return Response.sendErrorResponse(
|
|
146
152
|
req,
|
|
147
153
|
res,
|
|
@@ -195,8 +201,14 @@ export default class GitHubAPI {
|
|
|
195
201
|
|
|
196
202
|
return Response.redirect(req, res, URL.fromString(installUrl));
|
|
197
203
|
} catch (error) {
|
|
198
|
-
logger.error(
|
|
199
|
-
|
|
204
|
+
logger.error(
|
|
205
|
+
"GitHub Install Redirect Error:",
|
|
206
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
207
|
+
);
|
|
208
|
+
logger.error(
|
|
209
|
+
error,
|
|
210
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
211
|
+
);
|
|
200
212
|
return Response.sendErrorResponse(
|
|
201
213
|
req,
|
|
202
214
|
res,
|
|
@@ -272,8 +284,14 @@ export default class GitHubAPI {
|
|
|
272
284
|
repositories: repositories as unknown,
|
|
273
285
|
} as JSONObject);
|
|
274
286
|
} catch (error) {
|
|
275
|
-
logger.error(
|
|
276
|
-
|
|
287
|
+
logger.error(
|
|
288
|
+
"GitHub List Repositories Error:",
|
|
289
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
290
|
+
);
|
|
291
|
+
logger.error(
|
|
292
|
+
error,
|
|
293
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
294
|
+
);
|
|
277
295
|
|
|
278
296
|
// Handle stale installation ID - clear it from the project and return specific error
|
|
279
297
|
if (error instanceof GitHubInstallationNotFoundError) {
|
|
@@ -295,12 +313,17 @@ export default class GitHubAPI {
|
|
|
295
313
|
|
|
296
314
|
logger.info(
|
|
297
315
|
`Cleared stale GitHub App installation ID from project ${projectId}`,
|
|
316
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
298
317
|
);
|
|
299
318
|
} catch (clearError) {
|
|
300
319
|
logger.error(
|
|
301
320
|
"Failed to clear stale installation ID from project:",
|
|
321
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
322
|
+
);
|
|
323
|
+
logger.error(
|
|
324
|
+
clearError,
|
|
325
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
302
326
|
);
|
|
303
|
-
logger.error(clearError);
|
|
304
327
|
}
|
|
305
328
|
}
|
|
306
329
|
|
|
@@ -434,8 +457,14 @@ export default class GitHubAPI {
|
|
|
434
457
|
repository: BaseModel.toJSON(createdRepository, CodeRepository),
|
|
435
458
|
} as JSONObject);
|
|
436
459
|
} catch (error) {
|
|
437
|
-
logger.error(
|
|
438
|
-
|
|
460
|
+
logger.error(
|
|
461
|
+
"GitHub Connect Repository Error:",
|
|
462
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
463
|
+
);
|
|
464
|
+
logger.error(
|
|
465
|
+
error,
|
|
466
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
467
|
+
);
|
|
439
468
|
return Response.sendErrorResponse(
|
|
440
469
|
req,
|
|
441
470
|
res,
|
|
@@ -484,7 +513,10 @@ export default class GitHubAPI {
|
|
|
484
513
|
);
|
|
485
514
|
}
|
|
486
515
|
|
|
487
|
-
logger.debug(
|
|
516
|
+
logger.debug(
|
|
517
|
+
`Received GitHub webhook event: ${event}`,
|
|
518
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
519
|
+
);
|
|
488
520
|
|
|
489
521
|
// Handle installation events - specifically when the app is uninstalled
|
|
490
522
|
if (event === "installation") {
|
|
@@ -498,6 +530,7 @@ export default class GitHubAPI {
|
|
|
498
530
|
if (action === "deleted" && installationId) {
|
|
499
531
|
logger.info(
|
|
500
532
|
`GitHub App installation ${installationId} was deleted. Clearing from database...`,
|
|
533
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
501
534
|
);
|
|
502
535
|
|
|
503
536
|
try {
|
|
@@ -533,12 +566,17 @@ export default class GitHubAPI {
|
|
|
533
566
|
|
|
534
567
|
logger.info(
|
|
535
568
|
`Successfully cleared GitHub App installation ${installationId} from database`,
|
|
569
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
536
570
|
);
|
|
537
571
|
} catch (clearError) {
|
|
538
572
|
logger.error(
|
|
539
573
|
`Failed to clear GitHub App installation ${installationId} from database:`,
|
|
574
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
575
|
+
);
|
|
576
|
+
logger.error(
|
|
577
|
+
clearError,
|
|
578
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
540
579
|
);
|
|
541
|
-
logger.error(clearError);
|
|
542
580
|
}
|
|
543
581
|
}
|
|
544
582
|
}
|
|
@@ -554,8 +592,14 @@ export default class GitHubAPI {
|
|
|
554
592
|
message: "Webhook received",
|
|
555
593
|
} as JSONObject);
|
|
556
594
|
} catch (error) {
|
|
557
|
-
logger.error(
|
|
558
|
-
|
|
595
|
+
logger.error(
|
|
596
|
+
"GitHub Webhook Error:",
|
|
597
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
598
|
+
);
|
|
599
|
+
logger.error(
|
|
600
|
+
error,
|
|
601
|
+
getLogAttributesFromRequest(req as OneUptimeRequest),
|
|
602
|
+
);
|
|
559
603
|
return Response.sendErrorResponse(
|
|
560
604
|
req,
|
|
561
605
|
res,
|