@oneuptime/common 10.0.52 → 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.
Files changed (405) hide show
  1. package/Models/AnalyticsModels/Metric.ts +78 -0
  2. package/Server/API/AIAgentDataAPI.ts +6 -1
  3. package/Server/API/BillingAPI.ts +28 -6
  4. package/Server/API/CommonAPI.ts +11 -0
  5. package/Server/API/DashboardAPI.ts +6 -2
  6. package/Server/API/DashboardDomainAPI.ts +10 -3
  7. package/Server/API/GitHubAPI.ts +58 -14
  8. package/Server/API/MicrosoftTeamsAPI.ts +97 -33
  9. package/Server/API/OpenSourceDeploymentAPI.ts +2 -2
  10. package/Server/API/SlackAPI.ts +107 -36
  11. package/Server/API/StatusAPI.ts +37 -16
  12. package/Server/API/StatusPageAPI.ts +97 -23
  13. package/Server/API/StatusPageDomainAPI.ts +6 -3
  14. package/Server/API/TelemetryAPI.ts +81 -0
  15. package/Server/API/UserAPI.ts +3 -3
  16. package/Server/API/UserCallAPI.ts +5 -2
  17. package/Server/API/UserEmailAPI.ts +5 -2
  18. package/Server/API/UserPushAPI.ts +9 -3
  19. package/Server/API/UserSmsAPI.ts +5 -2
  20. package/Server/API/UserWhatsAppAPI.ts +5 -2
  21. package/Server/Infrastructure/Postgres/SchemaMigrations/1774559064921-MigrationName.ts +47 -0
  22. package/Server/Infrastructure/Postgres/SchemaMigrations/1775735059360-MigrationName.ts +35 -0
  23. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +4 -0
  24. package/Server/Middleware/NotificationMiddleware.ts +2 -2
  25. package/Server/Middleware/ProjectAuthorization.ts +6 -0
  26. package/Server/Middleware/SCIMAuthorization.ts +2 -1
  27. package/Server/Middleware/SlackAuthorization.ts +28 -10
  28. package/Server/Middleware/TelemetryIngest.ts +16 -3
  29. package/Server/Middleware/UserAuthorization.ts +22 -5
  30. package/Server/Middleware/WhatsAppAuthorization.ts +15 -4
  31. package/Server/Services/AIAgentService.ts +13 -6
  32. package/Server/Services/AIService.ts +9 -3
  33. package/Server/Services/AlertEpisodeFeedService.ts +17 -5
  34. package/Server/Services/AlertEpisodeService.ts +34 -3
  35. package/Server/Services/AlertEpisodeStateTimelineService.ts +80 -22
  36. package/Server/Services/AlertFeedService.ts +17 -5
  37. package/Server/Services/AlertGroupingEngineService.ts +36 -7
  38. package/Server/Services/AlertService.ts +60 -8
  39. package/Server/Services/AlertStateTimelineService.ts +29 -7
  40. package/Server/Services/AnalyticsDatabaseService.ts +59 -25
  41. package/Server/Services/BillingInvoiceService.ts +7 -3
  42. package/Server/Services/BillingService.ts +9 -2
  43. package/Server/Services/DashboardDomainService.ts +56 -22
  44. package/Server/Services/DashboardService.ts +11 -4
  45. package/Server/Services/DatabaseService.ts +31 -11
  46. package/Server/Services/IncidentEpisodeFeedService.ts +17 -5
  47. package/Server/Services/IncidentEpisodeService.ts +34 -3
  48. package/Server/Services/IncidentEpisodeStateTimelineService.ts +80 -22
  49. package/Server/Services/IncidentFeedService.ts +33 -9
  50. package/Server/Services/IncidentGroupingEngineService.ts +35 -6
  51. package/Server/Services/IncidentService.ts +103 -9
  52. package/Server/Services/IncidentSlaRuleService.ts +16 -4
  53. package/Server/Services/IncidentSlaService.ts +20 -4
  54. package/Server/Services/IncidentStateTimelineService.ts +120 -31
  55. package/Server/Services/KubernetesClusterService.ts +62 -14
  56. package/Server/Services/LabelService.ts +14 -1
  57. package/Server/Services/MonitorFeedService.ts +33 -9
  58. package/Server/Services/MonitorProbeService.ts +31 -2
  59. package/Server/Services/MonitorService.ts +35 -4
  60. package/Server/Services/MonitorStatusTimelineService.ts +68 -20
  61. package/Server/Services/NotificationService.ts +4 -2
  62. package/Server/Services/OnCallDutyPolicyEscalationRuleService.ts +53 -9
  63. package/Server/Services/OnCallDutyPolicyEscalationRuleUserService.ts +9 -2
  64. package/Server/Services/OnCallDutyPolicyExecutionLogTimelineService.ts +29 -8
  65. package/Server/Services/OnCallDutyPolicyFeedService.ts +33 -8
  66. package/Server/Services/OnCallDutyPolicyScheduleService.ts +97 -24
  67. package/Server/Services/OnCallDutyPolicyService.ts +2 -1
  68. package/Server/Services/OpenTelemetryIngestService.ts +51 -20
  69. package/Server/Services/ProbeService.ts +16 -7
  70. package/Server/Services/ProjectService.ts +29 -11
  71. package/Server/Services/ScheduledMaintenanceFeedService.ts +17 -4
  72. package/Server/Services/ScheduledMaintenanceService.ts +52 -6
  73. package/Server/Services/ScheduledMaintenanceStateTimelineService.ts +72 -20
  74. package/Server/Services/StatusPageDomainService.ts +59 -23
  75. package/Server/Services/StatusPageService.ts +26 -8
  76. package/Server/Services/StatusPageSubscriberService.ts +382 -111
  77. package/Server/Services/TeamMemberService.ts +9 -3
  78. package/Server/Services/TelemetryAttributeService.ts +117 -4
  79. package/Server/Services/UserNotificationRuleService.ts +9 -3
  80. package/Server/Services/UserService.ts +6 -4
  81. package/Server/Services/UserWhatsAppService.ts +9 -3
  82. package/Server/Services/WorkflowService.ts +7 -3
  83. package/Server/Services/WorkspaceNotificationRuleService.ts +398 -156
  84. package/Server/Types/Domain.ts +15 -5
  85. package/Server/Types/Workflow/Components/API/Post.ts +22 -8
  86. package/Server/Types/Workflow/Components/BaseModel/OnTriggerBaseModel.ts +12 -4
  87. package/Server/Utils/AnalyticsDatabase/StatementGenerator.ts +10 -0
  88. package/Server/Utils/CodeRepository/CodeRepository.ts +62 -13
  89. package/Server/Utils/Express.ts +1 -0
  90. package/Server/Utils/Greenlock/Greenlock.ts +75 -20
  91. package/Server/Utils/LLM/LLMService.ts +22 -7
  92. package/Server/Utils/Logger.ts +93 -13
  93. package/Server/Utils/Monitor/MonitorAlert.ts +15 -3
  94. package/Server/Utils/Monitor/MonitorCriteriaEvaluator.ts +15 -5
  95. package/Server/Utils/Monitor/MonitorIncident.ts +17 -3
  96. package/Server/Utils/Monitor/MonitorStatusTimeline.ts +6 -1
  97. package/Server/Utils/Profiling.ts +11 -5
  98. package/Server/Utils/Realtime.ts +90 -31
  99. package/Server/Utils/Response.ts +2 -2
  100. package/Server/Utils/StartServer.ts +43 -9
  101. package/Server/Utils/Telemetry/SpanUtil.ts +90 -0
  102. package/Server/Utils/Workspace/MicrosoftTeams/Actions/Alert.ts +58 -15
  103. package/Server/Utils/Workspace/MicrosoftTeams/Actions/AlertEpisode.ts +58 -15
  104. package/Server/Utils/Workspace/MicrosoftTeams/Actions/Auth.ts +19 -3
  105. package/Server/Utils/Workspace/MicrosoftTeams/Actions/Incident.ts +87 -22
  106. package/Server/Utils/Workspace/MicrosoftTeams/Actions/Monitor.ts +12 -3
  107. package/Server/Utils/Workspace/MicrosoftTeams/Actions/OnCallDutyPolicy.ts +25 -7
  108. package/Server/Utils/Workspace/MicrosoftTeams/Actions/ScheduledMaintenance.ts +55 -8
  109. package/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.ts +100 -22
  110. package/Server/Utils/Workspace/Slack/Actions/Alert.ts +35 -9
  111. package/Server/Utils/Workspace/Slack/Actions/AlertEpisode.ts +32 -8
  112. package/Server/Utils/Workspace/Slack/Actions/Auth.ts +3 -1
  113. package/Server/Utils/Workspace/Slack/Actions/Incident.ts +52 -11
  114. package/Server/Utils/Workspace/Slack/Actions/IncidentEpisode.ts +4 -1
  115. package/Server/Utils/Workspace/Slack/Actions/ScheduledMaintenance.ts +89 -20
  116. package/Server/Utils/Workspace/Slack/Slack.ts +498 -247
  117. package/Server/Utils/Workspace/Workspace.ts +33 -11
  118. package/Server/Utils/Workspace/WorkspaceBase.ts +3 -1
  119. package/Server/Utils/Workspace/WorkspaceMessages/Alert.ts +8 -2
  120. package/Tests/Server/Middleware/UserAuthorization.test.ts +1 -1
  121. package/Tests/Server/Services/AnalyticsDatabaseService.test.ts +12 -3
  122. package/UI/Components/BulkUpdate/BulkUpdateForm.tsx +60 -38
  123. package/UI/Components/Charts/Area/AreaChart.tsx +35 -1
  124. package/UI/Components/Charts/ChartGroup/ChartGroup.tsx +7 -0
  125. package/UI/Components/Charts/ChartLibrary/AreaChart/AreaChart.tsx +33 -0
  126. package/UI/Components/Charts/ChartLibrary/LineChart/LineChart.tsx +33 -0
  127. package/UI/Components/Charts/ChartLibrary/Types/FormattedExemplarPoint.ts +14 -0
  128. package/UI/Components/Charts/Line/LineChart.tsx +35 -1
  129. package/UI/Components/Charts/Types/ExemplarPoint.ts +6 -0
  130. package/UI/Components/Dictionary/Dictionary.tsx +13 -1
  131. package/UI/Components/Filters/FiltersForm.tsx +2 -0
  132. package/UI/Components/Filters/JSONFilter.tsx +5 -1
  133. package/UI/Components/Filters/Types/Filter.ts +2 -0
  134. package/UI/Components/Markdown.tsx/MarkdownViewer.tsx +3 -3
  135. package/UI/Components/ModelTable/BaseModelTable.tsx +10 -6
  136. package/UI/Components/Navbar/NavBar.tsx +10 -0
  137. package/build/dist/Models/AnalyticsModels/Metric.js +70 -0
  138. package/build/dist/Models/AnalyticsModels/Metric.js.map +1 -1
  139. package/build/dist/Server/API/AIAgentDataAPI.js +6 -6
  140. package/build/dist/Server/API/AIAgentDataAPI.js.map +1 -1
  141. package/build/dist/Server/API/BillingAPI.js +13 -13
  142. package/build/dist/Server/API/BillingAPI.js.map +1 -1
  143. package/build/dist/Server/API/CommonAPI.js +5 -0
  144. package/build/dist/Server/API/CommonAPI.js.map +1 -1
  145. package/build/dist/Server/API/DashboardAPI.js +2 -2
  146. package/build/dist/Server/API/DashboardAPI.js.map +1 -1
  147. package/build/dist/Server/API/DashboardDomainAPI.js +3 -3
  148. package/build/dist/Server/API/DashboardDomainAPI.js.map +1 -1
  149. package/build/dist/Server/API/GitHubAPI.js +19 -19
  150. package/build/dist/Server/API/GitHubAPI.js.map +1 -1
  151. package/build/dist/Server/API/MicrosoftTeamsAPI.js +34 -34
  152. package/build/dist/Server/API/MicrosoftTeamsAPI.js.map +1 -1
  153. package/build/dist/Server/API/OpenSourceDeploymentAPI.js +2 -2
  154. package/build/dist/Server/API/OpenSourceDeploymentAPI.js.map +1 -1
  155. package/build/dist/Server/API/SlackAPI.js +38 -38
  156. package/build/dist/Server/API/SlackAPI.js.map +1 -1
  157. package/build/dist/Server/API/StatusAPI.js +16 -16
  158. package/build/dist/Server/API/StatusAPI.js.map +1 -1
  159. package/build/dist/Server/API/StatusPageAPI.js +52 -52
  160. package/build/dist/Server/API/StatusPageAPI.js.map +1 -1
  161. package/build/dist/Server/API/StatusPageDomainAPI.js +3 -3
  162. package/build/dist/Server/API/StatusPageDomainAPI.js.map +1 -1
  163. package/build/dist/Server/API/TelemetryAPI.js +39 -0
  164. package/build/dist/Server/API/TelemetryAPI.js.map +1 -1
  165. package/build/dist/Server/API/UserAPI.js +3 -3
  166. package/build/dist/Server/API/UserAPI.js.map +1 -1
  167. package/build/dist/Server/API/UserCallAPI.js +2 -2
  168. package/build/dist/Server/API/UserCallAPI.js.map +1 -1
  169. package/build/dist/Server/API/UserEmailAPI.js +2 -2
  170. package/build/dist/Server/API/UserEmailAPI.js.map +1 -1
  171. package/build/dist/Server/API/UserPushAPI.js +3 -3
  172. package/build/dist/Server/API/UserPushAPI.js.map +1 -1
  173. package/build/dist/Server/API/UserSmsAPI.js +2 -2
  174. package/build/dist/Server/API/UserSmsAPI.js.map +1 -1
  175. package/build/dist/Server/API/UserWhatsAppAPI.js +2 -2
  176. package/build/dist/Server/API/UserWhatsAppAPI.js.map +1 -1
  177. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1774559064921-MigrationName.js +40 -0
  178. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1774559064921-MigrationName.js.map +1 -0
  179. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1775735059360-MigrationName.js +18 -0
  180. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1775735059360-MigrationName.js.map +1 -0
  181. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +4 -0
  182. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  183. package/build/dist/Server/Middleware/NotificationMiddleware.js +2 -2
  184. package/build/dist/Server/Middleware/NotificationMiddleware.js.map +1 -1
  185. package/build/dist/Server/Middleware/ProjectAuthorization.js +5 -0
  186. package/build/dist/Server/Middleware/ProjectAuthorization.js.map +1 -1
  187. package/build/dist/Server/Middleware/SCIMAuthorization.js +2 -2
  188. package/build/dist/Server/Middleware/SCIMAuthorization.js.map +1 -1
  189. package/build/dist/Server/Middleware/SlackAuthorization.js +10 -10
  190. package/build/dist/Server/Middleware/SlackAuthorization.js.map +1 -1
  191. package/build/dist/Server/Middleware/TelemetryIngest.js +9 -4
  192. package/build/dist/Server/Middleware/TelemetryIngest.js.map +1 -1
  193. package/build/dist/Server/Middleware/UserAuthorization.js +10 -5
  194. package/build/dist/Server/Middleware/UserAuthorization.js.map +1 -1
  195. package/build/dist/Server/Middleware/WhatsAppAuthorization.js +6 -6
  196. package/build/dist/Server/Middleware/WhatsAppAuthorization.js.map +1 -1
  197. package/build/dist/Server/Services/AIAgentService.js +13 -7
  198. package/build/dist/Server/Services/AIAgentService.js.map +1 -1
  199. package/build/dist/Server/Services/AIService.js +9 -2
  200. package/build/dist/Server/Services/AIService.js.map +1 -1
  201. package/build/dist/Server/Services/AlertEpisodeFeedService.js +17 -5
  202. package/build/dist/Server/Services/AlertEpisodeFeedService.js.map +1 -1
  203. package/build/dist/Server/Services/AlertEpisodeService.js +40 -10
  204. package/build/dist/Server/Services/AlertEpisodeService.js.map +1 -1
  205. package/build/dist/Server/Services/AlertEpisodeStateTimelineService.js +81 -24
  206. package/build/dist/Server/Services/AlertEpisodeStateTimelineService.js.map +1 -1
  207. package/build/dist/Server/Services/AlertFeedService.js +17 -5
  208. package/build/dist/Server/Services/AlertFeedService.js.map +1 -1
  209. package/build/dist/Server/Services/AlertGroupingEngineService.js +44 -28
  210. package/build/dist/Server/Services/AlertGroupingEngineService.js.map +1 -1
  211. package/build/dist/Server/Services/AlertService.js +72 -20
  212. package/build/dist/Server/Services/AlertService.js.map +1 -1
  213. package/build/dist/Server/Services/AlertStateTimelineService.js +36 -13
  214. package/build/dist/Server/Services/AlertStateTimelineService.js.map +1 -1
  215. package/build/dist/Server/Services/AnalyticsDatabaseService.js +52 -28
  216. package/build/dist/Server/Services/AnalyticsDatabaseService.js.map +1 -1
  217. package/build/dist/Server/Services/BillingInvoiceService.js +7 -2
  218. package/build/dist/Server/Services/BillingInvoiceService.js.map +1 -1
  219. package/build/dist/Server/Services/BillingService.js +8 -8
  220. package/build/dist/Server/Services/BillingService.js.map +1 -1
  221. package/build/dist/Server/Services/DashboardDomainService.js +49 -27
  222. package/build/dist/Server/Services/DashboardDomainService.js.map +1 -1
  223. package/build/dist/Server/Services/DashboardService.js +11 -4
  224. package/build/dist/Server/Services/DashboardService.js.map +1 -1
  225. package/build/dist/Server/Services/DatabaseService.js +32 -12
  226. package/build/dist/Server/Services/DatabaseService.js.map +1 -1
  227. package/build/dist/Server/Services/IncidentEpisodeFeedService.js +17 -5
  228. package/build/dist/Server/Services/IncidentEpisodeFeedService.js.map +1 -1
  229. package/build/dist/Server/Services/IncidentEpisodeService.js +40 -10
  230. package/build/dist/Server/Services/IncidentEpisodeService.js.map +1 -1
  231. package/build/dist/Server/Services/IncidentEpisodeStateTimelineService.js +81 -24
  232. package/build/dist/Server/Services/IncidentEpisodeStateTimelineService.js.map +1 -1
  233. package/build/dist/Server/Services/IncidentFeedService.js +34 -10
  234. package/build/dist/Server/Services/IncidentFeedService.js.map +1 -1
  235. package/build/dist/Server/Services/IncidentGroupingEngineService.js +43 -29
  236. package/build/dist/Server/Services/IncidentGroupingEngineService.js.map +1 -1
  237. package/build/dist/Server/Services/IncidentService.js +116 -28
  238. package/build/dist/Server/Services/IncidentService.js.map +1 -1
  239. package/build/dist/Server/Services/IncidentSlaRuleService.js +19 -11
  240. package/build/dist/Server/Services/IncidentSlaRuleService.js.map +1 -1
  241. package/build/dist/Server/Services/IncidentSlaService.js +21 -14
  242. package/build/dist/Server/Services/IncidentSlaService.js.map +1 -1
  243. package/build/dist/Server/Services/IncidentStateTimelineService.js +130 -37
  244. package/build/dist/Server/Services/IncidentStateTimelineService.js.map +1 -1
  245. package/build/dist/Server/Services/KubernetesClusterService.js +51 -14
  246. package/build/dist/Server/Services/KubernetesClusterService.js.map +1 -1
  247. package/build/dist/Server/Services/LabelService.js +10 -1
  248. package/build/dist/Server/Services/LabelService.js.map +1 -1
  249. package/build/dist/Server/Services/MonitorFeedService.js +34 -10
  250. package/build/dist/Server/Services/MonitorFeedService.js.map +1 -1
  251. package/build/dist/Server/Services/MonitorProbeService.js +23 -3
  252. package/build/dist/Server/Services/MonitorProbeService.js.map +1 -1
  253. package/build/dist/Server/Services/MonitorService.js +42 -11
  254. package/build/dist/Server/Services/MonitorService.js.map +1 -1
  255. package/build/dist/Server/Services/MonitorStatusTimelineService.js +69 -21
  256. package/build/dist/Server/Services/MonitorStatusTimelineService.js.map +1 -1
  257. package/build/dist/Server/Services/NotificationService.js +4 -3
  258. package/build/dist/Server/Services/NotificationService.js.map +1 -1
  259. package/build/dist/Server/Services/OnCallDutyPolicyEscalationRuleService.js +49 -12
  260. package/build/dist/Server/Services/OnCallDutyPolicyEscalationRuleService.js.map +1 -1
  261. package/build/dist/Server/Services/OnCallDutyPolicyEscalationRuleUserService.js +9 -3
  262. package/build/dist/Server/Services/OnCallDutyPolicyEscalationRuleUserService.js.map +1 -1
  263. package/build/dist/Server/Services/OnCallDutyPolicyExecutionLogTimelineService.js +26 -11
  264. package/build/dist/Server/Services/OnCallDutyPolicyExecutionLogTimelineService.js.map +1 -1
  265. package/build/dist/Server/Services/OnCallDutyPolicyFeedService.js +34 -10
  266. package/build/dist/Server/Services/OnCallDutyPolicyFeedService.js.map +1 -1
  267. package/build/dist/Server/Services/OnCallDutyPolicyScheduleService.js +94 -37
  268. package/build/dist/Server/Services/OnCallDutyPolicyScheduleService.js.map +1 -1
  269. package/build/dist/Server/Services/OnCallDutyPolicyService.js +1 -1
  270. package/build/dist/Server/Services/OnCallDutyPolicyService.js.map +1 -1
  271. package/build/dist/Server/Services/OpenTelemetryIngestService.js +45 -17
  272. package/build/dist/Server/Services/OpenTelemetryIngestService.js.map +1 -1
  273. package/build/dist/Server/Services/ProbeService.js +13 -7
  274. package/build/dist/Server/Services/ProbeService.js.map +1 -1
  275. package/build/dist/Server/Services/ProjectService.js +41 -21
  276. package/build/dist/Server/Services/ProjectService.js.map +1 -1
  277. package/build/dist/Server/Services/ScheduledMaintenanceFeedService.js +17 -5
  278. package/build/dist/Server/Services/ScheduledMaintenanceFeedService.js.map +1 -1
  279. package/build/dist/Server/Services/ScheduledMaintenanceService.js +71 -24
  280. package/build/dist/Server/Services/ScheduledMaintenanceService.js.map +1 -1
  281. package/build/dist/Server/Services/ScheduledMaintenanceStateTimelineService.js +72 -24
  282. package/build/dist/Server/Services/ScheduledMaintenanceStateTimelineService.js.map +1 -1
  283. package/build/dist/Server/Services/StatusPageDomainService.js +55 -29
  284. package/build/dist/Server/Services/StatusPageDomainService.js.map +1 -1
  285. package/build/dist/Server/Services/StatusPageService.js +29 -9
  286. package/build/dist/Server/Services/StatusPageService.js.map +1 -1
  287. package/build/dist/Server/Services/StatusPageSubscriberService.js +393 -130
  288. package/build/dist/Server/Services/StatusPageSubscriberService.js.map +1 -1
  289. package/build/dist/Server/Services/TeamMemberService.js +10 -2
  290. package/build/dist/Server/Services/TeamMemberService.js.map +1 -1
  291. package/build/dist/Server/Services/TelemetryAttributeService.js +83 -6
  292. package/build/dist/Server/Services/TelemetryAttributeService.js.map +1 -1
  293. package/build/dist/Server/Services/UserNotificationRuleService.js +10 -2
  294. package/build/dist/Server/Services/UserNotificationRuleService.js.map +1 -1
  295. package/build/dist/Server/Services/UserService.js +8 -3
  296. package/build/dist/Server/Services/UserService.js.map +1 -1
  297. package/build/dist/Server/Services/UserWhatsAppService.js +10 -2
  298. package/build/dist/Server/Services/UserWhatsAppService.js.map +1 -1
  299. package/build/dist/Server/Services/WorkflowService.js +7 -2
  300. package/build/dist/Server/Services/WorkflowService.js.map +1 -1
  301. package/build/dist/Server/Services/WorkspaceNotificationRuleService.js +367 -180
  302. package/build/dist/Server/Services/WorkspaceNotificationRuleService.js.map +1 -1
  303. package/build/dist/Server/Types/Domain.js +12 -6
  304. package/build/dist/Server/Types/Domain.js.map +1 -1
  305. package/build/dist/Server/Types/Workflow/Components/API/Post.js +11 -7
  306. package/build/dist/Server/Types/Workflow/Components/API/Post.js.map +1 -1
  307. package/build/dist/Server/Types/Workflow/Components/BaseModel/OnTriggerBaseModel.js +11 -4
  308. package/build/dist/Server/Types/Workflow/Components/BaseModel/OnTriggerBaseModel.js.map +1 -1
  309. package/build/dist/Server/Utils/AnalyticsDatabase/StatementGenerator.js +7 -0
  310. package/build/dist/Server/Utils/AnalyticsDatabase/StatementGenerator.js.map +1 -1
  311. package/build/dist/Server/Utils/CodeRepository/CodeRepository.js +45 -17
  312. package/build/dist/Server/Utils/CodeRepository/CodeRepository.js.map +1 -1
  313. package/build/dist/Server/Utils/Express.js.map +1 -1
  314. package/build/dist/Server/Utils/Greenlock/Greenlock.js +36 -29
  315. package/build/dist/Server/Utils/Greenlock/Greenlock.js.map +1 -1
  316. package/build/dist/Server/Utils/LLM/LLMService.js +18 -6
  317. package/build/dist/Server/Utils/LLM/LLMService.js.map +1 -1
  318. package/build/dist/Server/Utils/Logger.js +61 -13
  319. package/build/dist/Server/Utils/Logger.js.map +1 -1
  320. package/build/dist/Server/Utils/Monitor/MonitorAlert.js +23 -20
  321. package/build/dist/Server/Utils/Monitor/MonitorAlert.js.map +1 -1
  322. package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js +13 -4
  323. package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js.map +1 -1
  324. package/build/dist/Server/Utils/Monitor/MonitorIncident.js +25 -22
  325. package/build/dist/Server/Utils/Monitor/MonitorIncident.js.map +1 -1
  326. package/build/dist/Server/Utils/Monitor/MonitorStatusTimeline.js +6 -3
  327. package/build/dist/Server/Utils/Monitor/MonitorStatusTimeline.js.map +1 -1
  328. package/build/dist/Server/Utils/Profiling.js +9 -6
  329. package/build/dist/Server/Utils/Profiling.js.map +1 -1
  330. package/build/dist/Server/Utils/Realtime.js +50 -34
  331. package/build/dist/Server/Utils/Realtime.js.map +1 -1
  332. package/build/dist/Server/Utils/Response.js +2 -2
  333. package/build/dist/Server/Utils/Response.js.map +1 -1
  334. package/build/dist/Server/Utils/StartServer.js +23 -11
  335. package/build/dist/Server/Utils/StartServer.js.map +1 -1
  336. package/build/dist/Server/Utils/Telemetry/SpanUtil.js +52 -0
  337. package/build/dist/Server/Utils/Telemetry/SpanUtil.js.map +1 -0
  338. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/Alert.js +58 -15
  339. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/Alert.js.map +1 -1
  340. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/AlertEpisode.js +58 -15
  341. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/AlertEpisode.js.map +1 -1
  342. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/Auth.js +19 -5
  343. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/Auth.js.map +1 -1
  344. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/Incident.js +90 -26
  345. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/Incident.js.map +1 -1
  346. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/Monitor.js +12 -3
  347. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/Monitor.js.map +1 -1
  348. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/OnCallDutyPolicy.js +25 -7
  349. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/OnCallDutyPolicy.js.map +1 -1
  350. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/ScheduledMaintenance.js +58 -19
  351. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/Actions/ScheduledMaintenance.js.map +1 -1
  352. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.js +102 -29
  353. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.js.map +1 -1
  354. package/build/dist/Server/Utils/Workspace/Slack/Actions/Alert.js +38 -9
  355. package/build/dist/Server/Utils/Workspace/Slack/Actions/Alert.js.map +1 -1
  356. package/build/dist/Server/Utils/Workspace/Slack/Actions/AlertEpisode.js +34 -8
  357. package/build/dist/Server/Utils/Workspace/Slack/Actions/AlertEpisode.js.map +1 -1
  358. package/build/dist/Server/Utils/Workspace/Slack/Actions/Auth.js +3 -1
  359. package/build/dist/Server/Utils/Workspace/Slack/Actions/Auth.js.map +1 -1
  360. package/build/dist/Server/Utils/Workspace/Slack/Actions/Incident.js +55 -13
  361. package/build/dist/Server/Utils/Workspace/Slack/Actions/Incident.js.map +1 -1
  362. package/build/dist/Server/Utils/Workspace/Slack/Actions/IncidentEpisode.js +5 -1
  363. package/build/dist/Server/Utils/Workspace/Slack/Actions/IncidentEpisode.js.map +1 -1
  364. package/build/dist/Server/Utils/Workspace/Slack/Actions/ScheduledMaintenance.js +91 -26
  365. package/build/dist/Server/Utils/Workspace/Slack/Actions/ScheduledMaintenance.js.map +1 -1
  366. package/build/dist/Server/Utils/Workspace/Slack/Slack.js +355 -270
  367. package/build/dist/Server/Utils/Workspace/Slack/Slack.js.map +1 -1
  368. package/build/dist/Server/Utils/Workspace/Workspace.js +21 -12
  369. package/build/dist/Server/Utils/Workspace/Workspace.js.map +1 -1
  370. package/build/dist/Server/Utils/Workspace/WorkspaceBase.js +3 -1
  371. package/build/dist/Server/Utils/Workspace/WorkspaceBase.js.map +1 -1
  372. package/build/dist/Server/Utils/Workspace/WorkspaceMessages/Alert.js +9 -2
  373. package/build/dist/Server/Utils/Workspace/WorkspaceMessages/Alert.js.map +1 -1
  374. package/build/dist/Tests/Server/Middleware/UserAuthorization.test.js +1 -1
  375. package/build/dist/Tests/Server/Middleware/UserAuthorization.test.js.map +1 -1
  376. package/build/dist/Tests/Server/Services/AnalyticsDatabaseService.test.js +12 -6
  377. package/build/dist/Tests/Server/Services/AnalyticsDatabaseService.test.js.map +1 -1
  378. package/build/dist/UI/Components/BulkUpdate/BulkUpdateForm.js +31 -30
  379. package/build/dist/UI/Components/BulkUpdate/BulkUpdateForm.js.map +1 -1
  380. package/build/dist/UI/Components/Charts/Area/AreaChart.js +20 -2
  381. package/build/dist/UI/Components/Charts/Area/AreaChart.js.map +1 -1
  382. package/build/dist/UI/Components/Charts/ChartGroup/ChartGroup.js +2 -2
  383. package/build/dist/UI/Components/Charts/ChartGroup/ChartGroup.js.map +1 -1
  384. package/build/dist/UI/Components/Charts/ChartLibrary/AreaChart/AreaChart.js +9 -2
  385. package/build/dist/UI/Components/Charts/ChartLibrary/AreaChart/AreaChart.js.map +1 -1
  386. package/build/dist/UI/Components/Charts/ChartLibrary/LineChart/LineChart.js +9 -2
  387. package/build/dist/UI/Components/Charts/ChartLibrary/LineChart/LineChart.js.map +1 -1
  388. package/build/dist/UI/Components/Charts/ChartLibrary/Types/FormattedExemplarPoint.js +2 -0
  389. package/build/dist/UI/Components/Charts/ChartLibrary/Types/FormattedExemplarPoint.js.map +1 -0
  390. package/build/dist/UI/Components/Charts/Line/LineChart.js +20 -2
  391. package/build/dist/UI/Components/Charts/Line/LineChart.js.map +1 -1
  392. package/build/dist/UI/Components/Charts/Types/ExemplarPoint.js +2 -0
  393. package/build/dist/UI/Components/Charts/Types/ExemplarPoint.js.map +1 -0
  394. package/build/dist/UI/Components/Dictionary/Dictionary.js +9 -1
  395. package/build/dist/UI/Components/Dictionary/Dictionary.js.map +1 -1
  396. package/build/dist/UI/Components/Filters/FiltersForm.js +1 -1
  397. package/build/dist/UI/Components/Filters/FiltersForm.js.map +1 -1
  398. package/build/dist/UI/Components/Filters/JSONFilter.js +1 -1
  399. package/build/dist/UI/Components/Filters/JSONFilter.js.map +1 -1
  400. package/build/dist/UI/Components/Markdown.tsx/MarkdownViewer.js +3 -3
  401. package/build/dist/UI/Components/ModelTable/BaseModelTable.js +9 -5
  402. package/build/dist/UI/Components/ModelTable/BaseModelTable.js.map +1 -1
  403. package/build/dist/UI/Components/Navbar/NavBar.js +9 -1
  404. package/build/dist/UI/Components/Navbar/NavBar.js.map +1 -1
  405. 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, {
@@ -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(`[Invoice Email] Missing Stripe signature header`);
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(`[Invoice Email] Verifying webhook signature...`);
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(`[Invoice Email] Handling webhook event...`);
102
+ logger.debug(
103
+ `[Invoice Email] Handling webhook event...`,
104
+ getLogAttributesFromRequest(req as OneUptimeRequest),
105
+ );
90
106
  await BillingService.handleWebhookEvent(event);
91
- logger.debug(`[Invoice Email] Webhook event handled successfully`);
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(`[Invoice Email] Stripe webhook error: ${err}`);
116
+ logger.error(
117
+ `[Invoice Email] Stripe webhook error: ${err}`,
118
+ getLogAttributesFromRequest(req as OneUptimeRequest),
119
+ );
98
120
  next(err);
99
121
  }
100
122
  },
@@ -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(err);
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("Ordering SSL");
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("SSL Provisioned for domain - " + domain.fullDomain);
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) {
@@ -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("GitHub Auth Callback Error:");
144
- logger.error(error);
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("GitHub Install Redirect Error:");
199
- logger.error(error);
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("GitHub List Repositories Error:");
276
- logger.error(error);
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("GitHub Connect Repository Error:");
438
- logger.error(error);
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(`Received GitHub webhook event: ${event}`);
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("GitHub Webhook Error:");
558
- logger.error(error);
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,