@meyicloud/meyi-insight-server 1.1.6 → 1.1.8

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 (54) hide show
  1. package/dist/constants/incidentCategories.d.ts.map +1 -1
  2. package/dist/constants/incidentCategories.js +2 -1
  3. package/dist/constants/incidentCategories.js.map +1 -1
  4. package/dist/controllers/incident.controller.js +1 -1
  5. package/dist/controllers/incident.controller.js.map +1 -1
  6. package/dist/database/schema.d.ts +17 -0
  7. package/dist/database/schema.d.ts.map +1 -1
  8. package/dist/database/schema.js +2 -0
  9. package/dist/database/schema.js.map +1 -1
  10. package/dist/features/sla/domain/sla.evaluator.d.ts +1 -1
  11. package/dist/features/sla/domain/sla.evaluator.d.ts.map +1 -1
  12. package/dist/features/sla/domain/sla.evaluator.js +3 -2
  13. package/dist/features/sla/domain/sla.evaluator.js.map +1 -1
  14. package/dist/features/sources/cloudtrail/controller.d.ts.map +1 -1
  15. package/dist/features/sources/cloudtrail/controller.js +11 -1
  16. package/dist/features/sources/cloudtrail/controller.js.map +1 -1
  17. package/dist/migrations/run.d.ts.map +1 -1
  18. package/dist/migrations/run.js +1297 -1254
  19. package/dist/migrations/run.js.map +1 -1
  20. package/dist/models/alert.model.d.ts +7 -0
  21. package/dist/models/alert.model.d.ts.map +1 -1
  22. package/dist/models/alert.model.js +28 -1
  23. package/dist/models/alert.model.js.map +1 -1
  24. package/dist/models/incident.model.d.ts.map +1 -1
  25. package/dist/models/incident.model.js +1 -0
  26. package/dist/models/incident.model.js.map +1 -1
  27. package/dist/models/source.model.d.ts.map +1 -1
  28. package/dist/models/source.model.js +21 -7
  29. package/dist/models/source.model.js.map +1 -1
  30. package/dist/pipeline/AlarmPipelineWorker.d.ts.map +1 -1
  31. package/dist/pipeline/AlarmPipelineWorker.js +12 -9
  32. package/dist/pipeline/AlarmPipelineWorker.js.map +1 -1
  33. package/dist/pipeline/NormalizationService.d.ts.map +1 -1
  34. package/dist/pipeline/NormalizationService.js +5 -0
  35. package/dist/pipeline/NormalizationService.js.map +1 -1
  36. package/dist/pipeline/alarmQueue.d.ts +19 -1
  37. package/dist/pipeline/alarmQueue.d.ts.map +1 -1
  38. package/dist/pipeline/alarmQueue.js +93 -16
  39. package/dist/pipeline/alarmQueue.js.map +1 -1
  40. package/dist/routes/index.d.ts.map +1 -1
  41. package/dist/routes/index.js +2 -1
  42. package/dist/routes/index.js.map +1 -1
  43. package/dist/services/alert.service.d.ts +8 -0
  44. package/dist/services/alert.service.d.ts.map +1 -1
  45. package/dist/services/alert.service.js +20 -2
  46. package/dist/services/alert.service.js.map +1 -1
  47. package/dist/services/incident.service.d.ts +17 -1
  48. package/dist/services/incident.service.d.ts.map +1 -1
  49. package/dist/services/incident.service.js +48 -15
  50. package/dist/services/incident.service.js.map +1 -1
  51. package/dist/services/notification-provider.service.d.ts.map +1 -1
  52. package/dist/services/notification-provider.service.js +3 -1
  53. package/dist/services/notification-provider.service.js.map +1 -1
  54. package/package.json +75 -75
@@ -82,13 +82,15 @@ export function createAlarmPipelineWorker(deps) {
82
82
  await pipelineEventModel.append({ alarmId, stage: "dlq", status: "error", meta: { reason: "normalization_failed" } }).catch(() => { });
83
83
  return;
84
84
  }
85
+ const accountName = canonical.accountName
86
+ ?? await alertModel.accountNameFor(tenantId, canonical.accountId);
85
87
  // Update placeholder alarm with normalized fields
86
88
  await alertModel.update(alarmId, {
87
89
  resourceId: canonical.resourceId,
88
90
  resourceName: canonical.resourceName,
89
91
  resourceType: canonical.resourceType,
90
92
  accountId: canonical.accountId ?? null,
91
- accountName: canonical.accountName ?? null,
93
+ accountName: accountName ?? null,
92
94
  alertName: canonical.alertName,
93
95
  severity: canonical.severity,
94
96
  description: canonical.description ?? null,
@@ -196,20 +198,21 @@ export function createAlarmPipelineWorker(deps) {
196
198
  let lockKey = null;
197
199
  const redis = getRedisClient();
198
200
  if (groupId && redis) {
199
- lockKey = `lock:group_workflow:${groupId}`;
200
- const acquired = await redis.set(lockKey, "1", "PX", 30000, "NX");
201
- if (!acquired) {
202
- // Wait a bit to see if another worker processes it, but ideally we wait via a retry.
203
- // For now, if we can't get the lock, we just wait a bit and proceed, or we could delay the job.
204
- // Actually, if we just wait for the lock:
201
+ const key = `lock:group_workflow:${groupId}`;
202
+ try {
203
+ // Wait up to ~30s for another worker to finish this group, then proceed.
205
204
  for (let i = 0; i < 30; i++) {
206
- const gotLock = await redis.set(lockKey, "1", "PX", 30000, "NX");
207
- if (gotLock) {
205
+ if (await redis.set(key, "1", "PX", 30000, "NX")) {
206
+ lockKey = key;
208
207
  break;
209
208
  }
210
209
  await new Promise(r => setTimeout(r, 1000));
211
210
  }
212
211
  }
212
+ catch (err) {
213
+ // Redis down or timed out: route without the lock rather than skip the incident.
214
+ console.warn("[AlarmPipelineWorker] Group lock unavailable, routing without it:", err?.message);
215
+ }
213
216
  }
214
217
  try {
215
218
  // Now we safely execute the workflow for this alert.
@@ -1 +1 @@
1
- {"version":3,"file":"AlarmPipelineWorker.js","sourceRoot":"","sources":["../../src/pipeline/AlarmPipelineWorker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AlarmPipelineWorker.js","sourceRoot":"","sources":["../../src/pipeline/AlarmPipelineWorker.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"NormalizationService.d.ts","sourceRoot":"","sources":["../../src/pipeline/NormalizationService.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC;AACxF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAE5E,OAAO,EAA0C,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAelG,qBAAa,oBAAoB;IAE7B,OAAO,CAAC,wBAAwB;IAChC,OAAO,CAAC,kBAAkB;gBADlB,wBAAwB,EAAE,wBAAwB,EAClD,kBAAkB,EAAE,kBAAkB;IAGhD;;;;;;;OAOG;IACG,SAAS,CAAC,MAAM,EAAE;QACtB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,OAAO,CAAC;QACpB,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAkGlC,OAAO,CAAC,YAAY;YAgDN,iBAAiB;IAyG/B,OAAO,CAAC,UAAU;CA6BnB"}
1
+ {"version":3,"file":"NormalizationService.d.ts","sourceRoot":"","sources":["../../src/pipeline/NormalizationService.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC;AACxF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAE5E,OAAO,EAA0C,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAelG,qBAAa,oBAAoB;IAE7B,OAAO,CAAC,wBAAwB;IAChC,OAAO,CAAC,kBAAkB;gBADlB,wBAAwB,EAAE,wBAAwB,EAClD,kBAAkB,EAAE,kBAAkB;IAGhD;;;;;;;OAOG;IACG,SAAS,CAAC,MAAM,EAAE;QACtB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE,OAAO,CAAC;QACpB,UAAU,EAAE,MAAM,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAsGlC,OAAO,CAAC,YAAY;YAiDN,iBAAiB;IAyG/B,OAAO,CAAC,UAAU;CA6BnB"}
@@ -99,6 +99,10 @@ export class NormalizationService {
99
99
  if (!canonical.accountId && configAccount) {
100
100
  canonical.accountId = configAccount;
101
101
  }
102
+ const configAccountName = canonical.additionalConfiguration?.accountName;
103
+ if (!canonical.accountName && typeof configAccountName === "string" && configAccountName.trim()) {
104
+ canonical.accountName = configAccountName.trim();
105
+ }
102
106
  if (canonical.accountId && canonical.additionalConfiguration && typeof canonical.additionalConfiguration === 'object') {
103
107
  canonical.additionalConfiguration.accountId = canonical.accountId;
104
108
  }
@@ -150,6 +154,7 @@ export class NormalizationService {
150
154
  sourceId,
151
155
  sourceName,
152
156
  accountId: normalized.accountId,
157
+ accountName: normalized.accountName || undefined,
153
158
  additionalConfiguration: normalized.additionalConfiguration,
154
159
  });
155
160
  }
@@ -1 +1 @@
1
- {"version":3,"file":"NormalizationService.js","sourceRoot":"","sources":["../../src/pipeline/NormalizationService.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,SAAS,CAAC;AAC3B,OAAO,UAAU,MAAM,YAAY,CAAC;AAGpC,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAuB,MAAM,qBAAqB,CAAC;AAClG,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAEtF,MAAM,uBAAuB,GAAG,IAAI,CAAC;AAErC;;;;GAIG;AACH,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC;AACnC,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,CAAC,KAAc,EAAE,QAAiB,EAAE,EAAE,CAAC,KAAK,IAAI,QAAQ,CAAC,CAAC;AAC3F,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAU,EAAE,CAAU,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;AAEjE,MAAM,OAAO,oBAAoB;IAErB;IACA;IAFV,YACU,wBAAkD,EAClD,kBAAsC;QADtC,6BAAwB,GAAxB,wBAAwB,CAA0B;QAClD,uBAAkB,GAAlB,kBAAkB,CAAoB;IAC7C,CAAC;IAEJ;;;;;;;OAOG;IACH,KAAK,CAAC,SAAS,CAAC,MAQf;QACC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;QACnF,IAAI,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;QAE5B,uFAAuF;QACvF,IAAI,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;YACjD,MAAM,EAAE,GAAG,UAAiB,CAAC;YAC7B,IAAI,EAAE,CAAC,IAAI,KAAK,cAAc,IAAI,OAAO,EAAE,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;gBACjE,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC;oBACtC,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;wBACzC,UAAU,GAAG,MAAM,CAAC;oBACtB,CAAC;gBACH,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACX,4BAA4B;gBAC9B,CAAC;YACH,CAAC;QACH,CAAC;QAED,6EAA6E;QAC7E,IAAI,MAAM,GAAG,IAAI,CAAC;QAClB,IAAI,WAAW,GAAG,mBAAmB,CAAC;QACtC,IAAI,eAAmC,CAAC;QAExC,IAAI,CAAC;YACH,MAAM,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,cAAc,CAAC,QAAQ,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;YAC5F,IAAI,MAAM,EAAE,CAAC;gBACX,WAAW,GAAG,MAAM,CAAC,QAAQ;oBAC3B,CAAC,CAAC,qBAAqB,MAAM,CAAC,IAAI,GAAG;oBACrC,CAAC,CAAC,MAAM,CAAC,UAAU;wBACjB,CAAC,CAAC,uBAAuB,MAAM,CAAC,IAAI,GAAG;wBACvC,CAAC,CAAC,kBAAkB,MAAM,CAAC,IAAI,GAAG,CAAC;gBACvC,eAAe,GAAG,MAAM,CAAC,EAAE,CAAC;YAC9B,CAAC;QACH,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,OAAO,CAAC,IAAI,CAAC,8DAA8D,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;QAC5F,CAAC;QAED,6EAA6E;QAC7E,IAAI,CAAC;YACH,IAAI,SAAyB,CAAC;YAE9B,IAAI,MAAM,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;gBAClC,SAAS,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;YACxH,CAAC;iBAAM,CAAC;gBACN,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC;YACxF,CAAC;YAED,IAAI,MAAM,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;gBACpC,MAAM,MAAM,GAAG,sBAAsB,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;gBAC7D,IAAI,MAAM,CAAC,EAAE,EAAE,CAAC;oBACd,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;wBAC/B,MAAM,QAAQ,GAAG,kBAAkB,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;wBAC3E,SAAS,CAAC,uBAAuB,GAAG;4BAClC,GAAG,CAAC,SAAS,CAAC,uBAAiC,IAAI,EAAE,CAAC;4BACtD,QAAQ;yBACT,CAAC;oBACJ,CAAC;oBACD,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;wBAC/B,SAAS,CAAC,QAAQ,GAAG,kBAAkB,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;oBACjF,CAAC;gBACH,CAAC;YACH,CAAC;YAED,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC;gBACnC,OAAO;gBACP,KAAK,EAAE,eAAe;gBACtB,MAAM,EAAE,IAAI;gBACZ,eAAe;gBACf,IAAI,EAAE,EAAE,WAAW,EAAE;aACtB,CAAC,CAAC;YAEH,MAAM,aAAa,GAAI,SAAS,CAAC,uBAA+B,EAAE,SAAS,CAAC;YAC5E,IAAI,CAAC,SAAS,CAAC,SAAS,IAAI,aAAa,EAAE,CAAC;gBAC1C,SAAS,CAAC,SAAS,GAAG,aAAa,CAAC;YACtC,CAAC;YACD,IAAI,SAAS,CAAC,SAAS,IAAI,SAAS,CAAC,uBAAuB,IAAI,OAAO,SAAS,CAAC,uBAAuB,KAAK,QAAQ,EAAE,CAAC;gBACrH,SAAS,CAAC,uBAA+B,CAAC,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC;YAC7E,CAAC;YAED,OAAO,SAAS,CAAC;QACnB,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,OAAO,CAAC,KAAK,CAAC,8CAA8C,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;YAE3E,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC;gBACnC,OAAO;gBACP,KAAK,EAAE,eAAe;gBACtB,MAAM,EAAE,OAAO;gBACf,eAAe;gBACf,IAAI,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE;aAC1C,CAAC,CAAC;YAEH,OAAO,IAAI,CAAC,CAAC,4BAA4B;QAC3C,CAAC;IACH,CAAC;IAED,+EAA+E;IAEvE,YAAY,CAClB,UAAmB,EACnB,UAAkB,EAClB,QAAgB,EAChB,UAAmB,EACnB,QAAiB;QAEjB,wEAAwE;QACxE,MAAM,UAAU,GAAG,gBAAgB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QAE5D,2CAA2C;QAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC;QAE3E,MAAM,EAAE,GAAG,gBAAgB,CAAC;YAC1B,MAAM,EAAM,UAAU;YACtB,UAAU,EAAE,UAAU,CAAC,UAAU;YACjC,UAAU,EAAG,UAAkB,CAAC,UAAU;YAC1C,SAAS,EAAG,UAAU,CAAC,SAAS;YAChC,KAAK;SACN,CAAC,CAAC;QAEH,OAAO,oBAAoB,CAAC,KAAK,CAAC;YAChC,MAAM,EAAU,UAAU;YAC1B,QAAQ,EAAQ,QAAQ,IAAI,SAAS;YACrC,UAAU,EAAM,UAAU,CAAC,UAAU;YACrC,YAAY,EAAI,UAAU,CAAC,YAAY;YACvC,YAAY,EAAI,UAAU,CAAC,YAAY;YACvC,SAAS,EAAO,UAAU,CAAC,SAAS;YACpC,QAAQ,EAAQ,UAAU,CAAC,QAAQ;YACnC,WAAW,EAAK,UAAU,CAAC,WAAW;YACtC,KAAK;YACL,UAAU,EAAO,UAAkB,CAAC,UAAU;YAC9C,WAAW,EAAM,UAAkB,CAAC,WAAW;YAC/C,UAAU,EAAO,UAAkB,CAAC,UAAU;YAC9C,MAAM,EAAW,UAAkB,CAAC,MAAM;YAC1C,IAAI,EAAY,UAAU,CAAC,IAAI;YAC/B,WAAW,EAAK,EAAE;YAClB,QAAQ,EAAQ,UAAU,CAAC,QAAQ,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YAC/D,UAAU;YACV,QAAQ;YACR,UAAU;YACV,SAAS,EAAO,UAAU,CAAC,SAAS;YACpC,uBAAuB,EAAE,UAAU,CAAC,uBAAuB;SAC5D,CAAC,CAAC;IACL,CAAC;IAED,6EAA6E;IAErE,KAAK,CAAC,iBAAiB,CAC7B,gBAAwB,EACxB,UAAmB,EACnB,UAAkB,EAClB,QAAgB,EAChB,UAAmB,EACnB,QAAiB;QAEjB,2BAA2B;QAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAA2B,CAAC;QACtE,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;QAC5D,CAAC;QAED,MAAM,OAAO,GAAG,UAAqC,CAAC;QACtD,MAAM,MAAM,GAA4B,EAAE,CAAC;QAE3C,KAAK,MAAM,CAAC,cAAc,EAAE,QAAQ,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACjE,IAAI,CAAC;gBACH,4EAA4E;gBAC5E,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;oBAChD,QAAQ,EAAE,IAAI;oBACd,aAAa,EAAE,IAAI;oBACnB,MAAM,EAAE,KAAK;iBACd,CAAC,CAAC;gBAEH,sDAAsD;gBACtD,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;oBAC/B,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,6BAA6B,EAAE,KAAK,EAAE,0BAA0B,EAAE,KAAK,EAAE,CAAC,CAAC;oBAC5H,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CAC/B,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,aAAa,cAAc,cAAc,uBAAuB,IAAI,CAAC,CAAC,EAAE,uBAAuB,CAAC,CACnI;iBACF,CAAC,CAAC;gBAEH,MAAM,CAAC,cAAc,CAAC,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,SAAS,CAAC;YACnE,CAAC;YAAC,OAAO,GAAQ,EAAE,CAAC;gBAClB,iEAAiE;gBACjE,OAAO,CAAC,IAAI,CAAC,oDAAoD,cAAc,IAAI,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;YACpG,CAAC;QACH,CAAC;QAED,MAAM,KAAK,GAAI,MAAM,CAAC,KAAgB,IAAI,SAAS,CAAC;QACpD,MAAM,EAAE,GAAG,gBAAgB,CAAC;YAC1B,MAAM,EAAM,UAAU;YACtB,UAAU,EAAG,MAAM,CAAC,UAAqB,IAAI,SAAS;YACtD,UAAU,EAAE,MAAM,CAAC,UAAgC;YACnD,SAAS,EAAG,MAAM,CAAC,SAA+B;YAClD,KAAK;SACN,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC;YACzB,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,cAAc,EAAE,cAAc;YAClE,WAAW,EAAE,UAAU,EAAE,aAAa,EAAE,OAAO,EAAE,YAAY;YAC7D,aAAa,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa;YAC5D,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,yBAAyB;SAC9E,CAAC,CAAC;QAEH,MAAM,MAAM,GAA4B,EAAE,CAAC;QAC3C,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5C,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,SAAS,EAAE,CAAC;gBAC1C,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YAChB,CAAC;QACH,CAAC;QAED,MAAM,YAAY,GAAG;YACnB,GAAG,MAAM;YACT,GAAG,CAAE,MAAM,CAAC,uBAAkC,IAAI,EAAE,CAAC;SACtD,CAAC;QAEF,IAAI,IAAI,GAA2B,EAAE,CAAC;QACtC,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;YAC5D,IAAI,GAAG,MAAM,CAAC,IAA8B,CAAC;QAC/C,CAAC;aAAM,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC3C,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACvC,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI;oBAAE,IAAI,GAAG,MAAM,CAAC;YACnE,CAAC;YAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;QAC1B,CAAC;QAED,OAAO,oBAAoB,CAAC,KAAK,CAAC;YAChC,MAAM,EAAQ,UAAU;YACxB,QAAQ,EAAM,QAAQ,IAAI,SAAS;YACnC,UAAU,EAAI,MAAM,CAAC,UAAU,IAAI,SAAS;YAC5C,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,SAAS;YAC9C,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,UAAU;YAC/C,SAAS,EAAK,MAAM,CAAC,SAAS,IAAI,OAAO;YACzC,QAAQ,EAAM,MAAM,CAAC,QAAQ,IAAI,MAAM;YACvC,WAAW,EAAG,MAAM,CAAC,WAAW;YAChC,KAAK;YACL,UAAU,EAAI,MAAM,CAAC,UAAU;YAC/B,WAAW,EAAG,MAAM,CAAC,WAAW;YAChC,UAAU,EAAI,MAAM,CAAC,UAAU;YAC/B,MAAM,EAAQ,MAAM,CAAC,MAA4C;YACjE,IAAI;YACJ,WAAW,EAAG,EAAE;YAChB,QAAQ,EAAO,MAAM,CAAC,QAAmB,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACrE,UAAU;YACV,QAAQ;YACR,UAAU;YACV,uBAAuB,EAAE,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS;SACzF,CAAC,CAAC;IACL,CAAC;IAED,6EAA6E;IAErE,UAAU,CAAC,UAAkB,EAAE,UAAmB,EAAE,QAAgB;QAC1E,MAAM,IAAI,GAAG,UAAqC,CAAC;QAEnD,IAAI,UAAU,KAAK,YAAY,EAAE,CAAC;YAChC,MAAM,KAAK,GAAG,IAAI,EAAE,aAAuB,CAAC;YAC5C,IAAI,KAAK,KAAK,IAAI;gBAAE,OAAO,UAAU,CAAC;YACtC,IAAI,KAAK,KAAK,OAAO;gBAAE,OAAO,QAAQ,CAAC;YACvC,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,IAAI,UAAU,KAAK,YAAY,EAAE,CAAC;YAChC,4FAA4F;YAC5F,OAAO,QAAQ,CAAC;QAClB,CAAC;QACD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAClE,MAAM,MAAM,GAAI,MAAM,CAAC,CAAC,CAAS,EAAE,MAAM,CAAC;YAC1C,OAAO,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;QACzF,CAAC;QACD,IAAI,UAAU,KAAK,YAAY,EAAE,CAAC;YAChC,MAAM,MAAM,GAAG,IAAI,EAAE,MAAgB,CAAC;YACtC,OAAO,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;QACzF,CAAC;QACD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,MAAM,SAAS,GAAG,IAAI,EAAE,UAAoB,CAAC;YAC7C,OAAO,SAAS,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC;QAC1D,CAAC;QACD,kEAAkE;QAClE,OAAO,QAAQ,KAAK,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC;IACpD,CAAC;CACF"}
1
+ {"version":3,"file":"NormalizationService.js","sourceRoot":"","sources":["../../src/pipeline/NormalizationService.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { Queue } from "bullmq";
2
- import { Redis } from "ioredis";
2
+ import { Redis, type RedisOptions } from "ioredis";
3
3
  import type { PipelineJobData } from "./CanonicalAlarm.js";
4
4
  export declare function parseRedisUrl(redisUrl: string): {
5
5
  host: string;
@@ -7,6 +7,16 @@ export declare function parseRedisUrl(redisUrl: string): {
7
7
  password?: string;
8
8
  db: number;
9
9
  };
10
+ /**
11
+ * Options for the shared client.
12
+ *
13
+ * enableReadyCheck must stay on: with it off, ioredis 5 can mark a dead
14
+ * connection "ready" once maxRetriesPerRequest flushes its queue during a
15
+ * reconnect loop (seen when the Redis task is replaced behind Service Connect).
16
+ * The client then stops reconnecting and every command hangs forever.
17
+ * commandTimeout makes any other silent hang fail fast so callers fall back.
18
+ */
19
+ export declare function buildRedisClientOptions(): RedisOptions;
10
20
  /**
11
21
  * Create and return a shared IORedis client for direct Redis operations
12
22
  * (dedup SETNX, flap detection sorted sets, distributed locks).
@@ -15,6 +25,14 @@ export declare function parseRedisUrl(redisUrl: string): {
15
25
  * pattern (Q1, Q4). Falls back to REDIS_URL env var.
16
26
  */
17
27
  export declare function createRedisClient(redisUrl?: string): Redis;
28
+ /**
29
+ * Ping the shared client while it reports "ready". A ping that does not answer
30
+ * means the connection is stuck, and ioredis will not notice on its own
31
+ * (disconnect(true) does not recover it either), so the client is replaced.
32
+ * Callers always go through getRedisClient(), so they pick up the new one.
33
+ */
34
+ export declare function startRedisWatchdog(intervalMs?: number, pingTimeoutMs?: number): void;
35
+ export declare function stopRedisWatchdog(): void;
18
36
  /**
19
37
  * Returns the shared ioredis client (for DedupService direct ops).
20
38
  * Returns null if Redis has not been initialized yet.
@@ -1 +1 @@
1
- {"version":3,"file":"alarmQueue.d.ts","sourceRoot":"","sources":["../../src/pipeline/alarmQueue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAI3D,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,CAY7G;AAkBD;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,KAAK,CA2C1D;AAED;;;GAGG;AACH,wBAAgB,cAAc,IAAI,KAAK,GAAG,IAAI,CAE7C;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,OAAO,CAE1C;AAED;;;GAGG;AACH,wBAAsB,YAAY,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAuBtE;AAED;;GAEG;AACH,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAMhD;AAWD;;;GAGG;AACH,wBAAgB,aAAa,IAAI,KAAK,GAAG,IAAI,CAsB5C;AAED,wBAAgB,kBAAkB,IAAI,KAAK,GAAG,IAAI,CAsBjD;AAUD;;;GAGG;AACH,wBAAsB,oBAAoB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAG9E;AAED;;;;;GAKG;AACH,wBAAsB,YAAY,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC,CAY7E;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,iBAAiB,GAAG,aAAa,CAAC;IACzC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAW9F;AAED,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAYlH;AAED;;GAEG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CASrD"}
1
+ {"version":3,"file":"alarmQueue.d.ts","sourceRoot":"","sources":["../../src/pipeline/alarmQueue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAC/B,OAAO,EAAE,KAAK,EAAE,KAAK,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAI3D,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,CAY7G;AAwBD;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,IAAI,YAAY,CAOtD;AA4CD;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,KAAK,CAM1D;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,UAAU,SAAuB,EACjC,aAAa,SAA2B,GACvC,IAAI,CA2BN;AAED,wBAAgB,iBAAiB,IAAI,IAAI,CAKxC;AAED;;;GAGG;AACH,wBAAgB,cAAc,IAAI,KAAK,GAAG,IAAI,CAE7C;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,OAAO,CAE1C;AAED;;;GAGG;AACH,wBAAsB,YAAY,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAwBtE;AAED;;GAEG;AACH,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAOhD;AAWD;;;GAGG;AACH,wBAAgB,aAAa,IAAI,KAAK,GAAG,IAAI,CAsB5C;AAED,wBAAgB,kBAAkB,IAAI,KAAK,GAAG,IAAI,CAsBjD;AAUD;;;GAGG;AACH,wBAAsB,oBAAoB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAG9E;AAED;;;;;GAKG;AACH,wBAAsB,YAAY,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,OAAO,CAAC,CAY7E;AAED,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,iBAAiB,GAAG,aAAa,CAAC;IACzC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAW9F;AAED,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAYlH;AAED;;GAEG;AACH,wBAAsB,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CASrD"}
@@ -24,53 +24,128 @@ export function parseRedisUrl(redisUrl) {
24
24
  // separate to avoid the dual-package type conflict.
25
25
  let _redisClient = null;
26
26
  let _redisAvailable = false;
27
+ let _redisClientUrl = "redis://localhost:6379";
28
+ let _watchdogTimer = null;
29
+ const COMMAND_TIMEOUT_MS = 5_000;
30
+ const WATCHDOG_INTERVAL_MS = 30_000;
31
+ const WATCHDOG_PING_TIMEOUT_MS = 5_000;
27
32
  function isRedisVersionSupported(version) {
28
33
  const major = Number(String(version || "0").split(".")[0]);
29
34
  return Number.isFinite(major) && major >= 5;
30
35
  }
31
36
  /**
32
- * Create and return a shared IORedis client for direct Redis operations
33
- * (dedup SETNX, flap detection sorted sets, distributed locks).
37
+ * Options for the shared client.
34
38
  *
35
- * The host app passes redisUrl so that the lifecycle matches the DB injection
36
- * pattern (Q1, Q4). Falls back to REDIS_URL env var.
39
+ * enableReadyCheck must stay on: with it off, ioredis 5 can mark a dead
40
+ * connection "ready" once maxRetriesPerRequest flushes its queue during a
41
+ * reconnect loop (seen when the Redis task is replaced behind Service Connect).
42
+ * The client then stops reconnecting and every command hangs forever.
43
+ * commandTimeout makes any other silent hang fail fast so callers fall back.
37
44
  */
38
- export function createRedisClient(redisUrl) {
39
- if (_redisClient)
40
- return _redisClient;
41
- const url = redisUrl ?? process.env.REDIS_URL ?? "redis://localhost:6379";
42
- const client = new Redis(url, {
43
- enableReadyCheck: false,
45
+ export function buildRedisClientOptions() {
46
+ return {
47
+ enableReadyCheck: true,
44
48
  lazyConnect: true,
49
+ commandTimeout: COMMAND_TIMEOUT_MS,
45
50
  retryStrategy: (times) => Math.min(times * 200, 5000),
46
- });
51
+ };
52
+ }
53
+ function newRedisClient(url) {
54
+ const client = new Redis(url, buildRedisClientOptions());
55
+ // Events from a client the watchdog has already replaced are ignored.
56
+ const isCurrent = () => client === _redisClient;
47
57
  client.on("connect", () => {
48
- _redisAvailable = true;
49
- console.info("[AlarmQueue] Redis connected");
58
+ if (isCurrent())
59
+ console.info("[AlarmQueue] Redis connected");
50
60
  });
51
61
  client.on("ready", () => {
62
+ if (!isCurrent())
63
+ return;
52
64
  _redisAvailable = true;
65
+ console.info("[AlarmQueue] Redis ready");
53
66
  });
54
67
  client.on("error", (err) => {
55
68
  // Log the error but do NOT immediately mark Redis as unavailable.
56
69
  // Transient errors (ECONNRESET, etc.) are automatically retried by ioredis.
57
70
  // Only 'close' / 'end' mean we've truly lost the connection.
58
- console.warn("[AlarmQueue] Redis error (will retry):", err.message);
71
+ if (isCurrent())
72
+ console.warn("[AlarmQueue] Redis error (will retry):", err.message);
59
73
  });
60
74
  client.on("close", () => {
75
+ if (!isCurrent())
76
+ return;
61
77
  _redisAvailable = false;
62
78
  console.warn("[AlarmQueue] Redis connection closed");
63
79
  });
64
80
  client.on("end", () => {
81
+ if (!isCurrent())
82
+ return;
65
83
  _redisAvailable = false;
66
84
  console.warn("[AlarmQueue] Redis connection ended");
67
85
  });
68
86
  client.on("reconnecting", () => {
69
- console.info("[AlarmQueue] Redis reconnecting...");
87
+ if (isCurrent())
88
+ console.info("[AlarmQueue] Redis reconnecting...");
70
89
  });
71
- _redisClient = client;
72
90
  return client;
73
91
  }
92
+ /**
93
+ * Create and return a shared IORedis client for direct Redis operations
94
+ * (dedup SETNX, flap detection sorted sets, distributed locks).
95
+ *
96
+ * The host app passes redisUrl so that the lifecycle matches the DB injection
97
+ * pattern (Q1, Q4). Falls back to REDIS_URL env var.
98
+ */
99
+ export function createRedisClient(redisUrl) {
100
+ if (_redisClient)
101
+ return _redisClient;
102
+ _redisClientUrl = redisUrl ?? process.env.REDIS_URL ?? "redis://localhost:6379";
103
+ _redisClient = newRedisClient(_redisClientUrl);
104
+ return _redisClient;
105
+ }
106
+ /**
107
+ * Ping the shared client while it reports "ready". A ping that does not answer
108
+ * means the connection is stuck, and ioredis will not notice on its own
109
+ * (disconnect(true) does not recover it either), so the client is replaced.
110
+ * Callers always go through getRedisClient(), so they pick up the new one.
111
+ */
112
+ export function startRedisWatchdog(intervalMs = WATCHDOG_INTERVAL_MS, pingTimeoutMs = WATCHDOG_PING_TIMEOUT_MS) {
113
+ stopRedisWatchdog();
114
+ let checking = false;
115
+ _watchdogTimer = setInterval(async () => {
116
+ const client = _redisClient;
117
+ if (checking || !client || client.status !== "ready")
118
+ return;
119
+ checking = true;
120
+ try {
121
+ let timer;
122
+ const timedOut = new Promise((_, reject) => {
123
+ timer = setTimeout(() => reject(new Error(`no reply in ${pingTimeoutMs}ms`)), pingTimeoutMs);
124
+ });
125
+ await Promise.race([client.ping(), timedOut]).finally(() => clearTimeout(timer));
126
+ }
127
+ catch (err) {
128
+ if (client === _redisClient) {
129
+ console.warn("[AlarmQueue] Redis ping failed — replacing client:", err?.message);
130
+ _redisAvailable = false;
131
+ const fresh = newRedisClient(_redisClientUrl);
132
+ _redisClient = fresh;
133
+ client.disconnect();
134
+ fresh.connect().catch(() => { });
135
+ }
136
+ }
137
+ finally {
138
+ checking = false;
139
+ }
140
+ }, intervalMs);
141
+ _watchdogTimer.unref?.();
142
+ }
143
+ export function stopRedisWatchdog() {
144
+ if (_watchdogTimer) {
145
+ clearInterval(_watchdogTimer);
146
+ _watchdogTimer = null;
147
+ }
148
+ }
74
149
  /**
75
150
  * Returns the shared ioredis client (for DedupService direct ops).
76
151
  * Returns null if Redis has not been initialized yet.
@@ -103,6 +178,7 @@ export async function connectRedis(redisUrl) {
103
178
  return false;
104
179
  }
105
180
  _redisAvailable = true;
181
+ startRedisWatchdog();
106
182
  return true;
107
183
  }
108
184
  catch (err) {
@@ -115,6 +191,7 @@ export async function connectRedis(redisUrl) {
115
191
  * Gracefully close the shared ioredis connection (call during server shutdown).
116
192
  */
117
193
  export async function closeRedis() {
194
+ stopRedisWatchdog();
118
195
  if (_redisClient) {
119
196
  await _redisClient.quit().catch(() => { });
120
197
  _redisClient = null;
@@ -1 +1 @@
1
- {"version":3,"file":"alarmQueue.js","sourceRoot":"","sources":["../../src/pipeline/alarmQueue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"alarmQueue.js","sourceRoot":"","sources":["../../src/pipeline/alarmQueue.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/routes/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAEvE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,8CAA8C,CAAC;AAM/F,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAE7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAEvE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,8CAA8C,CAAC;AAChG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAEzE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AAE9E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAE/E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8CAA8C,CAAC;AAErF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAMnE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC;AACxF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAC9E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAItE,MAAM,WAAW,mBAAmB;IAClC,cAAc,EAAE;QACd,eAAe,EAAE,eAAe,CAAC;QACjC,YAAY,EAAE,YAAY,CAAC;QAC3B,aAAa,EAAE,aAAa,CAAC;QAC7B,eAAe,EAAE,eAAe,CAAC;QACjC,UAAU,EAAE,UAAU,CAAC;QACvB,eAAe,EAAE,eAAe,CAAC;QACjC,2BAA2B,EAAE,2BAA2B,CAAC;QACzD,aAAa,EAAE,aAAa,CAAC;QAE7B,0BAA0B,CAAC,EAAE,0BAA0B,CAAC;KACzD,CAAC;CACH;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE;IAC1C,eAAe,EAAE,eAAe,CAAC;IACjC,YAAY,EAAE,YAAY,CAAC;IAC3B,aAAa,EAAE,aAAa,CAAC;IAC7B,eAAe,EAAE,eAAe,CAAC;IACjC,UAAU,EAAE,UAAU,CAAC;IACvB,eAAe,EAAE,eAAe,CAAC;IACjC,2BAA2B,EAAE,2BAA2B,CAAC;IACzD,aAAa,EAAE,aAAa,CAAC;IAE7B,0BAA0B,CAAC,EAAE,0BAA0B,CAAC;IACxD,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IAEpC,wBAAwB,CAAC,EAAE,wBAAwB,CAAC;IACpD,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC,GAAG,MAAM,CA2FT"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/routes/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAEvE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,8CAA8C,CAAC;AAM/F,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAE7D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAEvE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,8CAA8C,CAAC;AAChG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAEzE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AAE9E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0CAA0C,CAAC;AAE/E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8CAA8C,CAAC;AAErF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAMnE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC;AACxF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAC9E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAItE,MAAM,WAAW,mBAAmB;IAClC,cAAc,EAAE;QACd,eAAe,EAAE,eAAe,CAAC;QACjC,YAAY,EAAE,YAAY,CAAC;QAC3B,aAAa,EAAE,aAAa,CAAC;QAC7B,eAAe,EAAE,eAAe,CAAC;QACjC,UAAU,EAAE,UAAU,CAAC;QACvB,eAAe,EAAE,eAAe,CAAC;QACjC,2BAA2B,EAAE,2BAA2B,CAAC;QACzD,aAAa,EAAE,aAAa,CAAC;QAE7B,0BAA0B,CAAC,EAAE,0BAA0B,CAAC;KACzD,CAAC;CACH;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE;IAC1C,eAAe,EAAE,eAAe,CAAC;IACjC,YAAY,EAAE,YAAY,CAAC;IAC3B,aAAa,EAAE,aAAa,CAAC;IAC7B,eAAe,EAAE,eAAe,CAAC;IACjC,UAAU,EAAE,UAAU,CAAC;IACvB,eAAe,EAAE,eAAe,CAAC;IACjC,2BAA2B,EAAE,2BAA2B,CAAC;IACzD,aAAa,EAAE,aAAa,CAAC;IAE7B,0BAA0B,CAAC,EAAE,0BAA0B,CAAC;IACxD,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IAEpC,wBAAwB,CAAC,EAAE,wBAAwB,CAAC;IACpD,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC,GAAG,MAAM,CA4FT"}
@@ -29,8 +29,9 @@ export function createInsightRouter(config) {
29
29
  const path = req.path;
30
30
  if (role === "user") {
31
31
  // AI usage carries per-tenant spend, and AI pricing drives it — admin-only, like settings.
32
+ // /notification-providers/all returns full provider config (webhook URLs, SMTP credentials).
32
33
  if (path.startsWith("/sources") || path.startsWith("/settings") || path.startsWith("/ai-usage")
33
- || path.startsWith("/ai-pricing")) {
34
+ || path.startsWith("/ai-pricing") || path.startsWith("/notification-providers/all")) {
34
35
  res.status(403).json({ ok: false, error: "Access denied" });
35
36
  return;
36
37
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/routes/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/routes/index.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,8 @@ import type { InsightRealtimePublisher } from "../realtime/events.js";
5
5
  import type { SourceObservabilityService, WebhookRequestMeta } from "../features/sources/observability/service.js";
6
6
  import type { WorkflowService } from "./workflow.service.js";
7
7
  import type { ConnectorEnvironment } from "../features/connector-environment/environment.types.js";
8
+ /** Fields PATCH /alerts/:id may change (the Alerts page edit dialog). */
9
+ export declare const EDITABLE_ALERT_FIELDS: readonly ["alertName", "description", "severity", "tags"];
8
10
  export interface NormalizedPayload {
9
11
  resourceId: string;
10
12
  resourceName: string;
@@ -44,6 +46,12 @@ export declare class AlertService {
44
46
  low: number;
45
47
  };
46
48
  }>;
49
+ /**
50
+ * Source health for a webhook that was accepted onto the queue: the Sources page reads "Last alert" from it.
51
+ * Only the sync fallback recorded it before, so with Redis up every source showed "Never". Best-effort and not
52
+ * awaited, so the webhook still answers at once.
53
+ */
54
+ private recordReceived;
47
55
  private emitTotals;
48
56
  private emitSourceUpdated;
49
57
  list(params: {
@@ -1 +1 @@
1
- {"version":3,"file":"alert.service.d.ts","sourceRoot":"","sources":["../../src/services/alert.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"alert.service.d.ts","sourceRoot":"","sources":["../../src/services/alert.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAEjE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,KAAK,EACV,0BAA0B,EAC1B,kBAAkB,EACnB,MAAM,8CAA8C,CAAC;AACtD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAE7D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,wDAAwD,CAAC;AAInG,yEAAyE;AACzE,eAAO,MAAM,qBAAqB,2DAA4D,CAAC;AAE/F,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AA+MD,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,iBAAiB,CAuPpF;AAED,qBAAa,YAAY;IAErB,OAAO,CAAC,UAAU;IAClB,OAAO,CAAC,aAAa;IACrB,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,oBAAoB;IAC5B,OAAO,CAAC,eAAe,CAAC;gBALhB,UAAU,EAAE,UAAU,EACtB,aAAa,EAAE,aAAa,EAC5B,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,wBAAwB,GAAG,SAAS,EAC/C,oBAAoB,EAAE,0BAA0B,EAChD,eAAe,CAAC,EAAE,eAAe;IAGrC,OAAO,CAAC,MAAM,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE;;;;;;;;;IAI5D;;;;OAIG;IACH,OAAO,CAAC,cAAc;YAKR,UAAU;IAwBxB,OAAO,CAAC,iBAAiB;IAanB,IAAI,CAAC,MAAM,EAAE;QACjB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;QACxB,WAAW,CAAC,EAAE,oBAAoB,CAAC;QACnC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB;;;;;;IAgCK,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;IAIrC,aAAa,CACjB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,MAAM,GAAG,IAAI,EACxB,IAAI,EAAE,GAAG,EACT,IAAI,CAAC,EAAE,kBAAkB,GACxB,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC;IAuJ5E,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAoCvE,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOrD,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAW/E,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAM3D"}
@@ -1,6 +1,8 @@
1
1
  import { enqueueAlarm, isRedisAvailable } from "../pipeline/alarmQueue.js";
2
2
  import { derivePriority } from "../features/incident-priority/priority.rules.js";
3
3
  import { CloudWatchClient, ListTagsForResourceCommand } from "@aws-sdk/client-cloudwatch";
4
+ /** Fields PATCH /alerts/:id may change (the Alerts page edit dialog). */
5
+ export const EDITABLE_ALERT_FIELDS = ["alertName", "description", "severity", "tags"];
4
6
  function parseMaybeJson(value) {
5
7
  if (typeof value !== "string")
6
8
  return null;
@@ -447,6 +449,15 @@ export class AlertService {
447
449
  async summary(params) {
448
450
  return this.alertModel.summary(params);
449
451
  }
452
+ /**
453
+ * Source health for a webhook that was accepted onto the queue: the Sources page reads "Last alert" from it.
454
+ * Only the sync fallback recorded it before, so with Redis up every source showed "Never". Best-effort and not
455
+ * awaited, so the webhook still answers at once.
456
+ */
457
+ recordReceived(sourceId) {
458
+ this.observabilityService?.recordSuccess({ sourceId, alertId: null })
459
+ .catch((err) => console.warn("[AlertService] Failed to record source health:", err?.message));
460
+ }
450
461
  async emitTotals(reason) {
451
462
  if (!this.publisher)
452
463
  return;
@@ -577,6 +588,7 @@ export class AlertService {
577
588
  }
578
589
  if (enqueuedCount > 0) {
579
590
  console.info(`[AlertService] Prometheus batch: enqueued ${enqueuedCount}/${body.alerts.length} alerts`);
591
+ this.recordReceived(source.id);
580
592
  this.emitSourceUpdated(source.id, "webhook_queued");
581
593
  return { alertId: null, incidentId: null, queued: true };
582
594
  }
@@ -592,6 +604,7 @@ export class AlertService {
592
604
  token,
593
605
  });
594
606
  if (enqueued) {
607
+ this.recordReceived(source.id);
595
608
  this.emitSourceUpdated(source.id, "webhook_queued");
596
609
  return { alertId: null, incidentId: null, queued: true };
597
610
  }
@@ -614,7 +627,8 @@ export class AlertService {
614
627
  resourceName: normalized.resourceName,
615
628
  resourceType: normalized.resourceType,
616
629
  accountId: normalized.accountId ?? null,
617
- accountName: normalized.accountName ?? null,
630
+ accountName: normalized.accountName
631
+ ?? await this.alertModel.accountNameFor(source.tenantId, normalized.accountId),
618
632
  tags: normalized.tags,
619
633
  severity: normalized.severity,
620
634
  alertName: normalized.alertName,
@@ -699,7 +713,11 @@ export class AlertService {
699
713
  const existing = await this.alertModel.findById(id, tenantId);
700
714
  if (!existing)
701
715
  throw new Error("Alert not found");
702
- await this.alertModel.update(id, data);
716
+ // Only the fields a user may edit; tenant, incident and status links change through their own endpoints.
717
+ const editable = Object.fromEntries(Object.entries(data ?? {}).filter(([key]) => EDITABLE_ALERT_FIELDS.includes(key)));
718
+ if (!Object.keys(editable).length)
719
+ return;
720
+ await this.alertModel.update(id, editable, tenantId);
703
721
  }
704
722
  async delete(id, tenantId) {
705
723
  const existing = await this.alertModel.findById(id, tenantId);