@oneuptime/common 7.0.3148 → 7.0.3153

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 (222) hide show
  1. package/Models/DatabaseModels/Alert.ts +1010 -0
  2. package/Models/DatabaseModels/AlertCustomField.ts +340 -0
  3. package/Models/DatabaseModels/AlertInternalNote.ts +371 -0
  4. package/Models/DatabaseModels/AlertNoteTemplate.ts +352 -0
  5. package/Models/DatabaseModels/AlertOwnerTeam.ts +416 -0
  6. package/Models/DatabaseModels/AlertOwnerUser.ts +415 -0
  7. package/Models/DatabaseModels/AlertSeverity.ts +426 -0
  8. package/Models/DatabaseModels/AlertState.ts +502 -0
  9. package/Models/DatabaseModels/AlertStateTimeline.ts +525 -0
  10. package/Models/DatabaseModels/Incident.ts +2 -11
  11. package/Models/DatabaseModels/Index.ts +34 -12
  12. package/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.ts +55 -0
  13. package/Models/DatabaseModels/TableView.ts +452 -0
  14. package/Server/Infrastructure/Postgres/SchemaMigrations/1727894983857-MigrationName.ts +51 -0
  15. package/Server/Infrastructure/Postgres/SchemaMigrations/1727906598804-MigrationName.ts +553 -0
  16. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +4 -0
  17. package/Server/Services/AlertCustomFieldService.ts +9 -0
  18. package/Server/Services/AlertInternalNoteService.ts +10 -0
  19. package/Server/Services/AlertNoteTemplateService.ts +9 -0
  20. package/Server/Services/AlertOwnerTeamService.ts +10 -0
  21. package/Server/Services/AlertOwnerUserService.ts +10 -0
  22. package/Server/Services/AlertService.ts +568 -0
  23. package/Server/Services/AlertSeverityService.ts +154 -0
  24. package/Server/Services/AlertStateService.ts +227 -0
  25. package/Server/Services/AlertStateTimelineService.ts +334 -0
  26. package/Server/Services/CallLogService.ts +4 -1
  27. package/Server/Services/DatabaseService.ts +17 -20
  28. package/Server/Services/EmailLogService.ts +4 -1
  29. package/Server/Services/IncidentService.ts +4 -1
  30. package/Server/Services/IncidentStateTimelineService.ts +4 -1
  31. package/Server/Services/Index.ts +23 -0
  32. package/Server/Services/MonitorStatusTimelineService.ts +4 -1
  33. package/Server/Services/OnCallDutyPolicyExecutionLogService.ts +4 -1
  34. package/Server/Services/OnCallDutyPolicyService.ts +15 -0
  35. package/Server/Services/ProjectService.ts +99 -1
  36. package/Server/Services/ScheduledMaintenanceService.ts +4 -1
  37. package/Server/Services/ScheduledMaintenanceStateTimelineService.ts +4 -1
  38. package/Server/Services/ShortLinkService.ts +4 -1
  39. package/Server/Services/SmsLogService.ts +4 -1
  40. package/Server/Services/TableViewService.ts +10 -0
  41. package/Server/Services/TelemetryUsageBillingService.ts +4 -1
  42. package/Server/Services/UserNotificationSettingService.ts +58 -0
  43. package/Server/Services/UserOnCallLogService.ts +4 -1
  44. package/Server/Services/WorkflowLogService.ts +4 -1
  45. package/Server/Types/Workflow/Components/API/Post.ts +25 -0
  46. package/Server/Utils/Monitor/MonitorAlert.ts +273 -0
  47. package/Server/Utils/Monitor/MonitorIncident.ts +298 -0
  48. package/Server/Utils/Monitor/MonitorResource.ts +67 -387
  49. package/Server/Utils/Monitor/MonitorStatusTimeline.ts +120 -0
  50. package/Server/Utils/Realtime.ts +1 -35
  51. package/Types/Email/EmailTemplateType.ts +7 -0
  52. package/Types/Icon/IconProp.ts +1 -0
  53. package/Types/Monitor/CriteriaAlert.ts +11 -0
  54. package/Types/Monitor/MonitorCriteria.ts +2 -0
  55. package/Types/Monitor/MonitorCriteriaInstance.ts +134 -1
  56. package/Types/Monitor/MonitorStep.ts +1 -0
  57. package/Types/Monitor/MonitorSteps.ts +1 -0
  58. package/Types/NotificationSetting/NotificationSettingEventType.ts +7 -0
  59. package/Types/Permission.ts +369 -1
  60. package/Types/Telemetry/TelemetryQuery.ts +10 -0
  61. package/Types/UserNotification/UserNotificationEventType.ts +1 -0
  62. package/UI/Components/Card/Card.tsx +40 -31
  63. package/UI/Components/Card/CardButtons/MoreButton.ts +15 -0
  64. package/UI/Components/HeaderAlert/HeaderAlert.tsx +75 -16
  65. package/UI/Components/HeaderAlert/HeaderAlertGroup.tsx +50 -0
  66. package/UI/Components/HeaderAlert/HeaderModelAlert.tsx +5 -1
  67. package/UI/Components/Icon/Icon.tsx +8 -0
  68. package/UI/Components/ModelDetail/CardModelDetail.tsx +4 -2
  69. package/UI/Components/ModelTable/BaseModelTable.tsx +70 -2
  70. package/UI/Components/ModelTable/TableView.tsx +317 -0
  71. package/UI/Components/MoreMenu/Divider.tsx +7 -0
  72. package/UI/Components/MoreMenu/MoreMenu.tsx +54 -0
  73. package/UI/Components/MoreMenu/MoreMenuItem.tsx +37 -0
  74. package/UI/Components/MoreMenu/MoreMenuSection.tsx +22 -0
  75. package/UI/Components/Toggle/Toggle.tsx +14 -0
  76. package/build/dist/Models/DatabaseModels/Alert.js +1028 -0
  77. package/build/dist/Models/DatabaseModels/Alert.js.map +1 -0
  78. package/build/dist/Models/DatabaseModels/AlertCustomField.js +360 -0
  79. package/build/dist/Models/DatabaseModels/AlertCustomField.js.map +1 -0
  80. package/build/dist/Models/DatabaseModels/AlertInternalNote.js +391 -0
  81. package/build/dist/Models/DatabaseModels/AlertInternalNote.js.map +1 -0
  82. package/build/dist/Models/DatabaseModels/AlertNoteTemplate.js +372 -0
  83. package/build/dist/Models/DatabaseModels/AlertNoteTemplate.js.map +1 -0
  84. package/build/dist/Models/DatabaseModels/AlertOwnerTeam.js +434 -0
  85. package/build/dist/Models/DatabaseModels/AlertOwnerTeam.js.map +1 -0
  86. package/build/dist/Models/DatabaseModels/AlertOwnerUser.js +433 -0
  87. package/build/dist/Models/DatabaseModels/AlertOwnerUser.js.map +1 -0
  88. package/build/dist/Models/DatabaseModels/AlertSeverity.js +450 -0
  89. package/build/dist/Models/DatabaseModels/AlertSeverity.js.map +1 -0
  90. package/build/dist/Models/DatabaseModels/AlertState.js +530 -0
  91. package/build/dist/Models/DatabaseModels/AlertState.js.map +1 -0
  92. package/build/dist/Models/DatabaseModels/AlertStateTimeline.js +548 -0
  93. package/build/dist/Models/DatabaseModels/AlertStateTimeline.js.map +1 -0
  94. package/build/dist/Models/DatabaseModels/Incident.js.map +1 -1
  95. package/build/dist/Models/DatabaseModels/Index.js +29 -9
  96. package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
  97. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.js +55 -0
  98. package/build/dist/Models/DatabaseModels/OnCallDutyPolicyExecutionLog.js.map +1 -1
  99. package/build/dist/Models/DatabaseModels/TableView.js +475 -0
  100. package/build/dist/Models/DatabaseModels/TableView.js.map +1 -0
  101. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1727894983857-MigrationName.js +24 -0
  102. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1727894983857-MigrationName.js.map +1 -0
  103. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1727906598804-MigrationName.js +198 -0
  104. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1727906598804-MigrationName.js.map +1 -0
  105. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +4 -0
  106. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  107. package/build/dist/Server/Services/AlertCustomFieldService.js +9 -0
  108. package/build/dist/Server/Services/AlertCustomFieldService.js.map +1 -0
  109. package/build/dist/Server/Services/AlertInternalNoteService.js +9 -0
  110. package/build/dist/Server/Services/AlertInternalNoteService.js.map +1 -0
  111. package/build/dist/Server/Services/AlertNoteTemplateService.js +9 -0
  112. package/build/dist/Server/Services/AlertNoteTemplateService.js.map +1 -0
  113. package/build/dist/Server/Services/AlertOwnerTeamService.js +9 -0
  114. package/build/dist/Server/Services/AlertOwnerTeamService.js.map +1 -0
  115. package/build/dist/Server/Services/AlertOwnerUserService.js +9 -0
  116. package/build/dist/Server/Services/AlertOwnerUserService.js.map +1 -0
  117. package/build/dist/Server/Services/AlertService.js +418 -0
  118. package/build/dist/Server/Services/AlertService.js.map +1 -0
  119. package/build/dist/Server/Services/AlertSeverityService.js +108 -0
  120. package/build/dist/Server/Services/AlertSeverityService.js.map +1 -0
  121. package/build/dist/Server/Services/AlertStateService.js +158 -0
  122. package/build/dist/Server/Services/AlertStateService.js.map +1 -0
  123. package/build/dist/Server/Services/AlertStateTimelineService.js +267 -0
  124. package/build/dist/Server/Services/AlertStateTimelineService.js.map +1 -0
  125. package/build/dist/Server/Services/CallLogService.js +4 -1
  126. package/build/dist/Server/Services/CallLogService.js.map +1 -1
  127. package/build/dist/Server/Services/DatabaseService.js +9 -9
  128. package/build/dist/Server/Services/DatabaseService.js.map +1 -1
  129. package/build/dist/Server/Services/EmailLogService.js +4 -1
  130. package/build/dist/Server/Services/EmailLogService.js.map +1 -1
  131. package/build/dist/Server/Services/IncidentService.js +4 -1
  132. package/build/dist/Server/Services/IncidentService.js.map +1 -1
  133. package/build/dist/Server/Services/IncidentStateTimelineService.js +4 -1
  134. package/build/dist/Server/Services/IncidentStateTimelineService.js.map +1 -1
  135. package/build/dist/Server/Services/Index.js +21 -0
  136. package/build/dist/Server/Services/Index.js.map +1 -1
  137. package/build/dist/Server/Services/MonitorStatusTimelineService.js +4 -1
  138. package/build/dist/Server/Services/MonitorStatusTimelineService.js.map +1 -1
  139. package/build/dist/Server/Services/OnCallDutyPolicyExecutionLogService.js +4 -1
  140. package/build/dist/Server/Services/OnCallDutyPolicyExecutionLogService.js.map +1 -1
  141. package/build/dist/Server/Services/OnCallDutyPolicyService.js +8 -0
  142. package/build/dist/Server/Services/OnCallDutyPolicyService.js.map +1 -1
  143. package/build/dist/Server/Services/ProjectService.js +80 -1
  144. package/build/dist/Server/Services/ProjectService.js.map +1 -1
  145. package/build/dist/Server/Services/ScheduledMaintenanceService.js +4 -1
  146. package/build/dist/Server/Services/ScheduledMaintenanceService.js.map +1 -1
  147. package/build/dist/Server/Services/ScheduledMaintenanceStateTimelineService.js +4 -1
  148. package/build/dist/Server/Services/ScheduledMaintenanceStateTimelineService.js.map +1 -1
  149. package/build/dist/Server/Services/ShortLinkService.js +4 -1
  150. package/build/dist/Server/Services/ShortLinkService.js.map +1 -1
  151. package/build/dist/Server/Services/SmsLogService.js +4 -1
  152. package/build/dist/Server/Services/SmsLogService.js.map +1 -1
  153. package/build/dist/Server/Services/TableViewService.js +9 -0
  154. package/build/dist/Server/Services/TableViewService.js.map +1 -0
  155. package/build/dist/Server/Services/TelemetryUsageBillingService.js +4 -1
  156. package/build/dist/Server/Services/TelemetryUsageBillingService.js.map +1 -1
  157. package/build/dist/Server/Services/UserNotificationSettingService.js +49 -0
  158. package/build/dist/Server/Services/UserNotificationSettingService.js.map +1 -1
  159. package/build/dist/Server/Services/UserOnCallLogService.js +4 -1
  160. package/build/dist/Server/Services/UserOnCallLogService.js.map +1 -1
  161. package/build/dist/Server/Services/WorkflowLogService.js +4 -1
  162. package/build/dist/Server/Services/WorkflowLogService.js.map +1 -1
  163. package/build/dist/Server/Types/Workflow/Components/API/Post.js +14 -0
  164. package/build/dist/Server/Types/Workflow/Components/API/Post.js.map +1 -1
  165. package/build/dist/Server/Utils/Monitor/MonitorAlert.js +177 -0
  166. package/build/dist/Server/Utils/Monitor/MonitorAlert.js.map +1 -0
  167. package/build/dist/Server/Utils/Monitor/MonitorIncident.js +187 -0
  168. package/build/dist/Server/Utils/Monitor/MonitorIncident.js.map +1 -0
  169. package/build/dist/Server/Utils/Monitor/MonitorResource.js +46 -254
  170. package/build/dist/Server/Utils/Monitor/MonitorResource.js.map +1 -1
  171. package/build/dist/Server/Utils/Monitor/MonitorStatusTimeline.js +79 -0
  172. package/build/dist/Server/Utils/Monitor/MonitorStatusTimeline.js.map +1 -0
  173. package/build/dist/Server/Utils/Realtime.js +3 -28
  174. package/build/dist/Server/Utils/Realtime.js.map +1 -1
  175. package/build/dist/Types/Email/EmailTemplateType.js +4 -0
  176. package/build/dist/Types/Email/EmailTemplateType.js.map +1 -1
  177. package/build/dist/Types/Icon/IconProp.js +1 -0
  178. package/build/dist/Types/Icon/IconProp.js.map +1 -1
  179. package/build/dist/Types/Monitor/CriteriaAlert.js +2 -0
  180. package/build/dist/Types/Monitor/CriteriaAlert.js.map +1 -0
  181. package/build/dist/Types/Monitor/MonitorCriteria.js +1 -0
  182. package/build/dist/Types/Monitor/MonitorCriteria.js.map +1 -1
  183. package/build/dist/Types/Monitor/MonitorCriteriaInstance.js +120 -1
  184. package/build/dist/Types/Monitor/MonitorCriteriaInstance.js.map +1 -1
  185. package/build/dist/Types/Monitor/MonitorStep.js.map +1 -1
  186. package/build/dist/Types/Monitor/MonitorSteps.js.map +1 -1
  187. package/build/dist/Types/NotificationSetting/NotificationSettingEventType.js +5 -0
  188. package/build/dist/Types/NotificationSetting/NotificationSettingEventType.js.map +1 -1
  189. package/build/dist/Types/Permission.js +323 -1
  190. package/build/dist/Types/Permission.js.map +1 -1
  191. package/build/dist/Types/Telemetry/TelemetryQuery.js +2 -0
  192. package/build/dist/Types/Telemetry/TelemetryQuery.js.map +1 -0
  193. package/build/dist/Types/UserNotification/UserNotificationEventType.js +1 -0
  194. package/build/dist/Types/UserNotification/UserNotificationEventType.js.map +1 -1
  195. package/build/dist/UI/Components/Card/Card.js +3 -2
  196. package/build/dist/UI/Components/Card/Card.js.map +1 -1
  197. package/build/dist/UI/Components/Card/CardButtons/MoreButton.js +12 -0
  198. package/build/dist/UI/Components/Card/CardButtons/MoreButton.js.map +1 -0
  199. package/build/dist/UI/Components/HeaderAlert/HeaderAlert.js +53 -9
  200. package/build/dist/UI/Components/HeaderAlert/HeaderAlert.js.map +1 -1
  201. package/build/dist/UI/Components/HeaderAlert/HeaderAlertGroup.js +25 -0
  202. package/build/dist/UI/Components/HeaderAlert/HeaderAlertGroup.js.map +1 -0
  203. package/build/dist/UI/Components/HeaderAlert/HeaderModelAlert.js +1 -1
  204. package/build/dist/UI/Components/HeaderAlert/HeaderModelAlert.js.map +1 -1
  205. package/build/dist/UI/Components/Icon/Icon.js +3 -0
  206. package/build/dist/UI/Components/Icon/Icon.js.map +1 -1
  207. package/build/dist/UI/Components/ModelDetail/CardModelDetail.js.map +1 -1
  208. package/build/dist/UI/Components/ModelTable/BaseModelTable.js +46 -0
  209. package/build/dist/UI/Components/ModelTable/BaseModelTable.js.map +1 -1
  210. package/build/dist/UI/Components/ModelTable/TableView.js +183 -0
  211. package/build/dist/UI/Components/ModelTable/TableView.js.map +1 -0
  212. package/build/dist/UI/Components/MoreMenu/Divider.js +6 -0
  213. package/build/dist/UI/Components/MoreMenu/Divider.js.map +1 -0
  214. package/build/dist/UI/Components/MoreMenu/MoreMenu.js +19 -0
  215. package/build/dist/UI/Components/MoreMenu/MoreMenu.js.map +1 -0
  216. package/build/dist/UI/Components/MoreMenu/MoreMenuItem.js +13 -0
  217. package/build/dist/UI/Components/MoreMenu/MoreMenuItem.js.map +1 -0
  218. package/build/dist/UI/Components/MoreMenu/MoreMenuSection.js +10 -0
  219. package/build/dist/UI/Components/MoreMenu/MoreMenuSection.js.map +1 -0
  220. package/build/dist/UI/Components/Toggle/Toggle.js +7 -1
  221. package/build/dist/UI/Components/Toggle/Toggle.js.map +1 -1
  222. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"UserOnCallLogService.js","sourceRoot":"","sources":["../../../../Server/Services/UserOnCallLogService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"UserOnCallLogService.js","sourceRoot":"","sources":["../../../../Server/Services/UserOnCallLogService.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,12 @@
1
+ import { IsBillingEnabled } from "../EnvironmentConfig";
1
2
  import DatabaseService from "./DatabaseService";
2
3
  import Model from "Common/Models/DatabaseModels/WorkflowLog";
3
4
  export class Service extends DatabaseService {
4
5
  constructor() {
5
6
  super(Model);
6
- this.hardDeleteItemsOlderThanInDays("createdAt", 3);
7
+ if (IsBillingEnabled) {
8
+ this.hardDeleteItemsOlderThanInDays("createdAt", 3);
9
+ }
7
10
  }
8
11
  }
9
12
  export default new Service();
@@ -1 +1 @@
1
- {"version":3,"file":"WorkflowLogService.js","sourceRoot":"","sources":["../../../../Server/Services/WorkflowLogService.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,MAAM,0CAA0C,CAAC;AAE7D,MAAM,OAAO,OAAQ,SAAQ,eAAsB;IACjD;QACE,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,8BAA8B,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IACtD,CAAC;CACF;AACD,eAAe,IAAI,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"WorkflowLogService.js","sourceRoot":"","sources":["../../../../Server/Services/WorkflowLogService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,MAAM,0CAA0C,CAAC;AAE7D,MAAM,OAAO,OAAQ,SAAQ,eAAsB;IACjD;QACE,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,gBAAgB,EAAE,CAAC;YACrB,IAAI,CAAC,8BAA8B,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;CACF;AACD,eAAe,IAAI,OAAO,EAAE,CAAC"}
@@ -6,6 +6,7 @@ import BadDataException from "Common/Types/Exception/BadDataException";
6
6
  import ComponentID from "Common/Types/Workflow/ComponentID";
7
7
  import APIComponents from "Common/Types/Workflow/Components/API";
8
8
  import API from "Common/Utils/API";
9
+ import logger from "../../../../Utils/Logger";
9
10
  export default class ApiPost extends ComponentCode {
10
11
  constructor() {
11
12
  super();
@@ -20,8 +21,19 @@ export default class ApiPost extends ComponentCode {
20
21
  async run(args, options) {
21
22
  const result = ApiComponentUtils.sanitizeArgs(this.getMetadata(), args, options);
22
23
  let apiResult = null;
24
+ logger.debug("API Post Component is running.");
25
+ const url = args["url"];
26
+ if (!url) {
27
+ throw options.onError(new BadDataException("URL is required"));
28
+ }
29
+ logger.debug(`URL: ${url}`);
30
+ const requestBody = args["request-body"];
31
+ logger.debug(`Request Body: ${JSON.stringify(requestBody)}`);
32
+ const requestHeaders = args["request-headers"];
33
+ logger.debug(`Request Headers: ${JSON.stringify(requestHeaders)}`);
23
34
  try {
24
35
  apiResult = await API.post(args["url"], args["request-body"], args["request-headers"]);
36
+ logger.debug("API Post Component is done.");
25
37
  return Promise.resolve({
26
38
  returnValues: ApiComponentUtils.getReturnValues(apiResult),
27
39
  executePort: result.successPort,
@@ -40,6 +52,8 @@ export default class ApiPost extends ComponentCode {
40
52
  executePort: result.successPort,
41
53
  });
42
54
  }
55
+ logger.debug("API Post Component is done with error.");
56
+ logger.debug(err);
43
57
  throw options.onError(new APIException("Something wrong happened."));
44
58
  }
45
59
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Post.js","sourceRoot":"","sources":["../../../../../../../Server/Types/Workflow/Components/API/Post.ts"],"names":[],"mappings":"AAAA,OAAO,aAA4C,MAAM,qBAAqB,CAAC;AAC/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,iBAAiB,MAAM,oCAAoC,CAAC;AAInE,OAAO,YAAY,MAAM,qCAAqC,CAAC;AAC/D,OAAO,gBAAgB,MAAM,yCAAyC,CAAC;AAGvE,OAAO,WAAW,MAAM,mCAAmC,CAAC;AAC5D,OAAO,aAAa,MAAM,sCAAsC,CAAC;AACjE,OAAO,GAAG,MAAM,kBAAkB,CAAC;AAEnC,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,aAAa;IAChD;QACE,KAAK,EAAE,CAAC;QAER,MAAM,SAAS,GAAkC,aAAa,CAAC,IAAI,CACjE,CAAC,CAAoB,EAAE,EAAE;YACvB,OAAO,CAAC,CAAC,EAAE,KAAK,WAAW,CAAC,OAAO,CAAC;QACtC,CAAC,CACF,CAAC;QAEF,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,gBAAgB,CAAC,sBAAsB,CAAC,CAAC;QACrD,CAAC;QAED,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAC9B,CAAC;IAEe,KAAK,CAAC,GAAG,CACvB,IAAgB,EAChB,OAAmB;QAEnB,MAAM,MAAM,GACV,iBAAiB,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QAEpE,IAAI,SAAS,GAAwD,IAAI,CAAC;QAE1E,IAAI,CAAC;YACH,SAAS,GAAG,MAAM,GAAG,CAAC,IAAI,CACxB,IAAI,CAAC,KAAK,CAAQ,EAClB,IAAI,CAAC,cAAc,CAAe,EAClC,IAAI,CAAC,iBAAiB,CAAuB,CAC9C,CAAC;YAEF,OAAO,OAAO,CAAC,OAAO,CAAC;gBACrB,YAAY,EAAE,iBAAiB,CAAC,eAAe,CAAC,SAAS,CAAC;gBAC1D,WAAW,EAAE,MAAM,CAAC,WAAW;aAChC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,GAAG,YAAY,iBAAiB,EAAE,CAAC;gBACrC,OAAO,OAAO,CAAC,OAAO,CAAC;oBACrB,YAAY,EAAE,iBAAiB,CAAC,eAAe,CAAC,GAAG,CAAC;oBACpD,WAAW,EAAE,MAAM,CAAC,WAAW;iBAChC,CAAC,CAAC;YACL,CAAC;YAED,IAAI,SAAS,EAAE,CAAC;gBACd,OAAO,OAAO,CAAC,OAAO,CAAC;oBACrB,YAAY,EAAE,iBAAiB,CAAC,eAAe,CAAC,SAAS,CAAC;oBAC1D,WAAW,EAAE,MAAM,CAAC,WAAW;iBAChC,CAAC,CAAC;YACL,CAAC;YAED,MAAM,OAAO,CAAC,OAAO,CAAC,IAAI,YAAY,CAAC,2BAA2B,CAAC,CAAC,CAAC;QACvE,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"Post.js","sourceRoot":"","sources":["../../../../../../../Server/Types/Workflow/Components/API/Post.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,177 @@
1
+ import Alert from "../../../Models/DatabaseModels/Alert";
2
+ import AlertStateTimeline from "../../../Models/DatabaseModels/AlertStateTimeline";
3
+ import OnCallDutyPolicy from "../../../Models/DatabaseModels/OnCallDutyPolicy";
4
+ import SortOrder from "../../../Types/BaseDatabase/SortOrder";
5
+ import { LIMIT_PER_PROJECT } from "../../../Types/Database/LimitMax";
6
+ import BadDataException from "../../../Types/Exception/BadDataException";
7
+ import AlertService from "../../Services/AlertService";
8
+ import AlertSeverityService from "../../Services/AlertSeverityService";
9
+ import AlertStateTimelineService from "../../Services/AlertStateTimelineService";
10
+ import logger from "../Logger";
11
+ export default class MonitorAlert {
12
+ static async checkOpenAlertsAndCloseIfResolved(input) {
13
+ // check active alerts and if there are open alerts, do not cretae anothr alert.
14
+ const openAlerts = await AlertService.findBy({
15
+ query: {
16
+ monitor: input.monitorId,
17
+ currentAlertState: {
18
+ isResolvedState: false,
19
+ },
20
+ },
21
+ skip: 0,
22
+ limit: LIMIT_PER_PROJECT,
23
+ select: {
24
+ _id: true,
25
+ createdCriteriaId: true,
26
+ projectId: true,
27
+ },
28
+ props: {
29
+ isRoot: true,
30
+ },
31
+ });
32
+ // check if should close the alert.
33
+ for (const openAlert of openAlerts) {
34
+ const shouldClose = this.shouldCloseAlert({
35
+ openAlert,
36
+ autoResolveCriteriaInstanceIdAlertIdsDictionary: input.autoResolveCriteriaInstanceIdAlertIdsDictionary,
37
+ criteriaInstance: input.criteriaInstance,
38
+ });
39
+ if (shouldClose) {
40
+ // then resolve alert.
41
+ await this.resolveOpenAlert({
42
+ openAlert: openAlert,
43
+ rootCause: input.rootCause,
44
+ dataToProcess: input.dataToProcess,
45
+ });
46
+ }
47
+ }
48
+ return openAlerts;
49
+ }
50
+ static async criteriaMetCreateAlertsAndUpdateMonitorStatus(input) {
51
+ var _a, _b, _c, _d, _e, _f, _g, _h;
52
+ // check open alerts
53
+ logger.debug(`${(_a = input.monitor.id) === null || _a === void 0 ? void 0 : _a.toString()} - Check open alerts.`);
54
+ // check active alerts and if there are open alerts, do not cretae anothr alert.
55
+ const openAlerts = await this.checkOpenAlertsAndCloseIfResolved({
56
+ monitorId: input.monitor.id,
57
+ autoResolveCriteriaInstanceIdAlertIdsDictionary: input.autoResolveCriteriaInstanceIdAlertIdsDictionary,
58
+ rootCause: input.rootCause,
59
+ criteriaInstance: input.criteriaInstance,
60
+ dataToProcess: input.dataToProcess,
61
+ });
62
+ if ((_b = input.criteriaInstance.data) === null || _b === void 0 ? void 0 : _b.createAlerts) {
63
+ // create alerts
64
+ for (const criteriaAlert of ((_c = input.criteriaInstance.data) === null || _c === void 0 ? void 0 : _c.alerts) || []) {
65
+ // should create alert.
66
+ const alreadyOpenAlert = openAlerts.find((alert) => {
67
+ var _a;
68
+ return (alert.createdCriteriaId ===
69
+ ((_a = input.criteriaInstance.data) === null || _a === void 0 ? void 0 : _a.id.toString()));
70
+ });
71
+ const hasAlreadyOpenAlert = Boolean(alreadyOpenAlert);
72
+ logger.debug(`${(_d = input.monitor.id) === null || _d === void 0 ? void 0 : _d.toString()} - Open Alert ${(_e = alreadyOpenAlert === null || alreadyOpenAlert === void 0 ? void 0 : alreadyOpenAlert.id) === null || _e === void 0 ? void 0 : _e.toString()}`);
73
+ logger.debug(`${(_f = input.monitor.id) === null || _f === void 0 ? void 0 : _f.toString()} - Has open alert ${hasAlreadyOpenAlert}`);
74
+ if (hasAlreadyOpenAlert) {
75
+ continue;
76
+ }
77
+ // create alert here.
78
+ logger.debug(`${(_g = input.monitor.id) === null || _g === void 0 ? void 0 : _g.toString()} - Create alert.`);
79
+ const alert = new Alert();
80
+ alert.title = criteriaAlert.title;
81
+ alert.description = criteriaAlert.description;
82
+ if (!criteriaAlert.alertSeverityId) {
83
+ // pick the critical criteria.
84
+ const severity = await AlertSeverityService.findOneBy({
85
+ query: {
86
+ projectId: input.monitor.projectId,
87
+ },
88
+ sort: {
89
+ order: SortOrder.Ascending,
90
+ },
91
+ props: {
92
+ isRoot: true,
93
+ },
94
+ select: {
95
+ _id: true,
96
+ },
97
+ });
98
+ if (!severity) {
99
+ throw new BadDataException("Project does not have alert severity");
100
+ }
101
+ else {
102
+ alert.alertSeverityId = severity.id;
103
+ }
104
+ }
105
+ else {
106
+ alert.alertSeverityId = criteriaAlert.alertSeverityId;
107
+ }
108
+ alert.monitor = input.monitor;
109
+ alert.projectId = input.monitor.projectId;
110
+ alert.rootCause = input.rootCause;
111
+ alert.createdStateLog = JSON.parse(JSON.stringify(input.dataToProcess, null, 2));
112
+ alert.createdCriteriaId = input.criteriaInstance.data.id.toString();
113
+ alert.onCallDutyPolicies =
114
+ ((_h = criteriaAlert.onCallPolicyIds) === null || _h === void 0 ? void 0 : _h.map((id) => {
115
+ const onCallPolicy = new OnCallDutyPolicy();
116
+ onCallPolicy._id = id.toString();
117
+ return onCallPolicy;
118
+ })) || [];
119
+ alert.isCreatedAutomatically = true;
120
+ if (input.props.telemetryQuery) {
121
+ alert.telemetryQuery = input.props.telemetryQuery;
122
+ }
123
+ if (input.dataToProcess &&
124
+ input.dataToProcess.probeId) {
125
+ alert.createdByProbeId = input.dataToProcess.probeId;
126
+ }
127
+ if (criteriaAlert.remediationNotes) {
128
+ alert.remediationNotes = criteriaAlert.remediationNotes;
129
+ }
130
+ await AlertService.create({
131
+ data: alert,
132
+ props: {
133
+ isRoot: true,
134
+ },
135
+ });
136
+ }
137
+ }
138
+ }
139
+ static async resolveOpenAlert(input) {
140
+ const resolvedStateId = await AlertStateTimelineService.getResolvedStateIdForProject(input.openAlert.projectId);
141
+ const alertStateTimeline = new AlertStateTimeline();
142
+ alertStateTimeline.alertId = input.openAlert.id;
143
+ alertStateTimeline.alertStateId = resolvedStateId;
144
+ alertStateTimeline.projectId = input.openAlert.projectId;
145
+ if (input.rootCause) {
146
+ alertStateTimeline.rootCause =
147
+ "Alert autoresolved because autoresolve is set to true in monitor criteria. " +
148
+ input.rootCause;
149
+ }
150
+ if (input.dataToProcess) {
151
+ alertStateTimeline.stateChangeLog = JSON.parse(JSON.stringify(input.dataToProcess));
152
+ }
153
+ await AlertStateTimelineService.create({
154
+ data: alertStateTimeline,
155
+ props: {
156
+ isRoot: true,
157
+ },
158
+ });
159
+ }
160
+ static shouldCloseAlert(input) {
161
+ var _a, _b, _c, _d, _e;
162
+ if (((_a = input.openAlert.createdCriteriaId) === null || _a === void 0 ? void 0 : _a.toString()) ===
163
+ ((_c = (_b = input.criteriaInstance) === null || _b === void 0 ? void 0 : _b.data) === null || _c === void 0 ? void 0 : _c.id.toString())) {
164
+ // same alert active. So, do not close.
165
+ return false;
166
+ }
167
+ // If antoher criteria is active then, check if the alert id is present in the map.
168
+ if (!((_d = input.openAlert.createdCriteriaId) === null || _d === void 0 ? void 0 : _d.toString())) {
169
+ return false;
170
+ }
171
+ if (input.autoResolveCriteriaInstanceIdAlertIdsDictionary[(_e = input.openAlert.createdCriteriaId) === null || _e === void 0 ? void 0 : _e.toString()]) {
172
+ return true;
173
+ }
174
+ return false;
175
+ }
176
+ }
177
+ //# sourceMappingURL=MonitorAlert.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MonitorAlert.js","sourceRoot":"","sources":["../../../../../Server/Utils/Monitor/MonitorAlert.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,187 @@
1
+ import Incident from "../../../Models/DatabaseModels/Incident";
2
+ import IncidentStateTimeline from "../../../Models/DatabaseModels/IncidentStateTimeline";
3
+ import OnCallDutyPolicy from "../../../Models/DatabaseModels/OnCallDutyPolicy";
4
+ import SortOrder from "../../../Types/BaseDatabase/SortOrder";
5
+ import { LIMIT_PER_PROJECT } from "../../../Types/Database/LimitMax";
6
+ import BadDataException from "../../../Types/Exception/BadDataException";
7
+ import IncidentService from "../../Services/IncidentService";
8
+ import IncidentSeverityService from "../../Services/IncidentSeverityService";
9
+ import IncidentStateTimelineService from "../../Services/IncidentStateTimelineService";
10
+ import logger from "../Logger";
11
+ export default class MonitorIncident {
12
+ static async checkOpenIncidentsAndCloseIfResolved(input) {
13
+ // check active incidents and if there are open incidents, do not cretae anothr incident.
14
+ const openIncidents = await IncidentService.findBy({
15
+ query: {
16
+ monitors: [input.monitorId],
17
+ currentIncidentState: {
18
+ isResolvedState: false,
19
+ },
20
+ },
21
+ skip: 0,
22
+ limit: LIMIT_PER_PROJECT,
23
+ select: {
24
+ _id: true,
25
+ createdCriteriaId: true,
26
+ createdIncidentTemplateId: true,
27
+ projectId: true,
28
+ },
29
+ props: {
30
+ isRoot: true,
31
+ },
32
+ });
33
+ // check if should close the incident.
34
+ for (const openIncident of openIncidents) {
35
+ const shouldClose = this.shouldCloseIncident({
36
+ openIncident,
37
+ autoResolveCriteriaInstanceIdIncidentIdsDictionary: input.autoResolveCriteriaInstanceIdIncidentIdsDictionary,
38
+ criteriaInstance: input.criteriaInstance,
39
+ });
40
+ if (shouldClose) {
41
+ // then resolve incident.
42
+ await this.resolveOpenIncident({
43
+ openIncident: openIncident,
44
+ rootCause: input.rootCause,
45
+ dataToProcess: input.dataToProcess,
46
+ });
47
+ }
48
+ }
49
+ return openIncidents;
50
+ }
51
+ static async criteriaMetCreateIncidentsAndUpdateMonitorStatus(input) {
52
+ var _a, _b, _c, _d, _e, _f, _g, _h;
53
+ // check open incidents
54
+ logger.debug(`${(_a = input.monitor.id) === null || _a === void 0 ? void 0 : _a.toString()} - Check open incidents.`);
55
+ // check active incidents and if there are open incidents, do not cretae anothr incident.
56
+ const openIncidents = await this.checkOpenIncidentsAndCloseIfResolved({
57
+ monitorId: input.monitor.id,
58
+ autoResolveCriteriaInstanceIdIncidentIdsDictionary: input.autoResolveCriteriaInstanceIdIncidentIdsDictionary,
59
+ rootCause: input.rootCause,
60
+ criteriaInstance: input.criteriaInstance,
61
+ dataToProcess: input.dataToProcess,
62
+ });
63
+ if ((_b = input.criteriaInstance.data) === null || _b === void 0 ? void 0 : _b.createIncidents) {
64
+ // create incidents
65
+ for (const criteriaIncident of ((_c = input.criteriaInstance.data) === null || _c === void 0 ? void 0 : _c.incidents) ||
66
+ []) {
67
+ // should create incident.
68
+ const alreadyOpenIncident = openIncidents.find((incident) => {
69
+ var _a;
70
+ return (incident.createdCriteriaId ===
71
+ ((_a = input.criteriaInstance.data) === null || _a === void 0 ? void 0 : _a.id.toString()) &&
72
+ incident.createdIncidentTemplateId ===
73
+ criteriaIncident.id.toString());
74
+ });
75
+ const hasAlreadyOpenIncident = Boolean(alreadyOpenIncident);
76
+ logger.debug(`${(_d = input.monitor.id) === null || _d === void 0 ? void 0 : _d.toString()} - Open Incident ${(_e = alreadyOpenIncident === null || alreadyOpenIncident === void 0 ? void 0 : alreadyOpenIncident.id) === null || _e === void 0 ? void 0 : _e.toString()}`);
77
+ logger.debug(`${(_f = input.monitor.id) === null || _f === void 0 ? void 0 : _f.toString()} - Has open incident ${hasAlreadyOpenIncident}`);
78
+ if (hasAlreadyOpenIncident) {
79
+ continue;
80
+ }
81
+ // create incident here.
82
+ logger.debug(`${(_g = input.monitor.id) === null || _g === void 0 ? void 0 : _g.toString()} - Create incident.`);
83
+ const incident = new Incident();
84
+ incident.title = criteriaIncident.title;
85
+ incident.description = criteriaIncident.description;
86
+ if (!criteriaIncident.incidentSeverityId) {
87
+ // pick the critical criteria.
88
+ const severity = await IncidentSeverityService.findOneBy({
89
+ query: {
90
+ projectId: input.monitor.projectId,
91
+ },
92
+ sort: {
93
+ order: SortOrder.Ascending,
94
+ },
95
+ props: {
96
+ isRoot: true,
97
+ },
98
+ select: {
99
+ _id: true,
100
+ },
101
+ });
102
+ if (!severity) {
103
+ throw new BadDataException("Project does not have incident severity");
104
+ }
105
+ else {
106
+ incident.incidentSeverityId = severity.id;
107
+ }
108
+ }
109
+ else {
110
+ incident.incidentSeverityId = criteriaIncident.incidentSeverityId;
111
+ }
112
+ incident.monitors = [input.monitor];
113
+ incident.projectId = input.monitor.projectId;
114
+ incident.rootCause = input.rootCause;
115
+ incident.createdStateLog = JSON.parse(JSON.stringify(input.dataToProcess, null, 2));
116
+ incident.createdCriteriaId = input.criteriaInstance.data.id.toString();
117
+ incident.createdIncidentTemplateId = criteriaIncident.id.toString();
118
+ incident.onCallDutyPolicies =
119
+ ((_h = criteriaIncident.onCallPolicyIds) === null || _h === void 0 ? void 0 : _h.map((id) => {
120
+ const onCallPolicy = new OnCallDutyPolicy();
121
+ onCallPolicy._id = id.toString();
122
+ return onCallPolicy;
123
+ })) || [];
124
+ incident.isCreatedAutomatically = true;
125
+ if (input.props.telemetryQuery) {
126
+ incident.telemetryQuery = input.props.telemetryQuery;
127
+ }
128
+ if (input.dataToProcess &&
129
+ input.dataToProcess.probeId) {
130
+ incident.createdByProbeId = input.dataToProcess.probeId;
131
+ }
132
+ if (criteriaIncident.remediationNotes) {
133
+ incident.remediationNotes = criteriaIncident.remediationNotes;
134
+ }
135
+ await IncidentService.create({
136
+ data: incident,
137
+ props: {
138
+ isRoot: true,
139
+ },
140
+ });
141
+ }
142
+ }
143
+ }
144
+ static async resolveOpenIncident(input) {
145
+ const resolvedStateId = await IncidentStateTimelineService.getResolvedStateIdForProject(input.openIncident.projectId);
146
+ const incidentStateTimeline = new IncidentStateTimeline();
147
+ incidentStateTimeline.incidentId = input.openIncident.id;
148
+ incidentStateTimeline.incidentStateId = resolvedStateId;
149
+ incidentStateTimeline.projectId = input.openIncident.projectId;
150
+ if (input.rootCause) {
151
+ incidentStateTimeline.rootCause =
152
+ "Incident autoresolved because autoresolve is set to true in monitor criteria. " +
153
+ input.rootCause;
154
+ }
155
+ if (input.dataToProcess) {
156
+ incidentStateTimeline.stateChangeLog = JSON.parse(JSON.stringify(input.dataToProcess));
157
+ }
158
+ await IncidentStateTimelineService.create({
159
+ data: incidentStateTimeline,
160
+ props: {
161
+ isRoot: true,
162
+ },
163
+ });
164
+ }
165
+ static shouldCloseIncident(input) {
166
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j;
167
+ if (((_a = input.openIncident.createdCriteriaId) === null || _a === void 0 ? void 0 : _a.toString()) ===
168
+ ((_c = (_b = input.criteriaInstance) === null || _b === void 0 ? void 0 : _b.data) === null || _c === void 0 ? void 0 : _c.id.toString())) {
169
+ // same incident active. So, do not close.
170
+ return false;
171
+ }
172
+ // If antoher criteria is active then, check if the incident id is present in the map.
173
+ if (!((_d = input.openIncident.createdCriteriaId) === null || _d === void 0 ? void 0 : _d.toString())) {
174
+ return false;
175
+ }
176
+ if (!((_e = input.openIncident.createdIncidentTemplateId) === null || _e === void 0 ? void 0 : _e.toString())) {
177
+ return false;
178
+ }
179
+ if (input.autoResolveCriteriaInstanceIdIncidentIdsDictionary[(_f = input.openIncident.createdCriteriaId) === null || _f === void 0 ? void 0 : _f.toString()]) {
180
+ if ((_h = input.autoResolveCriteriaInstanceIdIncidentIdsDictionary[(_g = input.openIncident.createdCriteriaId) === null || _g === void 0 ? void 0 : _g.toString()]) === null || _h === void 0 ? void 0 : _h.includes((_j = input.openIncident.createdIncidentTemplateId) === null || _j === void 0 ? void 0 : _j.toString())) {
181
+ return true;
182
+ }
183
+ }
184
+ return false;
185
+ }
186
+ }
187
+ //# sourceMappingURL=MonitorIncident.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MonitorIncident.js","sourceRoot":"","sources":["../../../../../Server/Utils/Monitor/MonitorIncident.ts"],"names":[],"mappings":"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"}