@oneuptime/common 10.0.84 → 10.0.85

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 (97) hide show
  1. package/Models/DatabaseModels/Index.ts +2 -0
  2. package/Models/DatabaseModels/KubernetesContainer.ts +552 -0
  3. package/Models/DatabaseModels/KubernetesResource.ts +130 -0
  4. package/Models/DatabaseModels/LlmLog.ts +2 -1
  5. package/Models/DatabaseModels/LlmProvider.ts +5 -4
  6. package/Models/DatabaseModels/Project.ts +40 -0
  7. package/Server/API/KubernetesResourceAPI.ts +144 -12
  8. package/Server/Infrastructure/Postgres/SchemaMigrations/1777550162848-MigrationName.ts +29 -0
  9. package/Server/Infrastructure/Postgres/SchemaMigrations/1777571961028-MigrationName.ts +99 -0
  10. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +4 -0
  11. package/Server/Infrastructure/Queue.ts +60 -0
  12. package/Server/Infrastructure/QueueWorker.ts +39 -1
  13. package/Server/Middleware/HttpMetricsMiddleware.ts +92 -0
  14. package/Server/Services/AuditLogService.ts +19 -1
  15. package/Server/Services/KubernetesContainerService.ts +264 -0
  16. package/Server/Services/KubernetesResourceService.ts +233 -0
  17. package/Server/Services/StatusPageSubscriberService.ts +4 -4
  18. package/Server/Types/Database/Permissions/AccessControlPermission.ts +3 -3
  19. package/Server/Utils/LLM/LLMService.ts +132 -11
  20. package/Server/Utils/Monitor/MonitorAlert.ts +1 -1
  21. package/Server/Utils/Monitor/MonitorIncident.ts +1 -1
  22. package/Server/Utils/StartServer.ts +2 -0
  23. package/Server/Utils/Telemetry/AppMetrics.ts +211 -0
  24. package/Server/Utils/Telemetry/RuntimeMetrics.ts +169 -0
  25. package/Server/Utils/Telemetry.ts +98 -0
  26. package/Server/Utils/Workspace/Slack/Actions/Alert.ts +2 -2
  27. package/Server/Utils/Workspace/Slack/Actions/Incident.ts +2 -2
  28. package/Server/Utils/Workspace/Slack/Actions/ScheduledMaintenance.ts +2 -2
  29. package/Tests/jest.setup.ts +18 -0
  30. package/Types/Kubernetes/KubernetesInventoryExtractor.ts +171 -5
  31. package/Types/LLM/LlmType.ts +3 -0
  32. package/UI/Components/Forms/ModelForm.tsx +3 -3
  33. package/UI/Components/LogsViewer/components/LogsAnalyticsView.tsx +2 -2
  34. package/Utils/UUID.ts +1 -3
  35. package/build/dist/Models/DatabaseModels/Index.js +2 -0
  36. package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
  37. package/build/dist/Models/DatabaseModels/KubernetesContainer.js +581 -0
  38. package/build/dist/Models/DatabaseModels/KubernetesContainer.js.map +1 -0
  39. package/build/dist/Models/DatabaseModels/KubernetesResource.js +135 -0
  40. package/build/dist/Models/DatabaseModels/KubernetesResource.js.map +1 -1
  41. package/build/dist/Models/DatabaseModels/LlmLog.js +1 -1
  42. package/build/dist/Models/DatabaseModels/LlmLog.js.map +1 -1
  43. package/build/dist/Models/DatabaseModels/LlmProvider.js +4 -4
  44. package/build/dist/Models/DatabaseModels/LlmProvider.js.map +1 -1
  45. package/build/dist/Models/DatabaseModels/Project.js +41 -0
  46. package/build/dist/Models/DatabaseModels/Project.js.map +1 -1
  47. package/build/dist/Server/API/KubernetesResourceAPI.js +106 -9
  48. package/build/dist/Server/API/KubernetesResourceAPI.js.map +1 -1
  49. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1777550162848-MigrationName.js +16 -0
  50. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1777550162848-MigrationName.js.map +1 -0
  51. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1777571961028-MigrationName.js +40 -0
  52. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1777571961028-MigrationName.js.map +1 -0
  53. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +4 -0
  54. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  55. package/build/dist/Server/Infrastructure/Queue.js +44 -0
  56. package/build/dist/Server/Infrastructure/Queue.js.map +1 -1
  57. package/build/dist/Server/Infrastructure/QueueWorker.js +31 -1
  58. package/build/dist/Server/Infrastructure/QueueWorker.js.map +1 -1
  59. package/build/dist/Server/Middleware/HttpMetricsMiddleware.js +61 -0
  60. package/build/dist/Server/Middleware/HttpMetricsMiddleware.js.map +1 -0
  61. package/build/dist/Server/Services/AuditLogService.js +14 -1
  62. package/build/dist/Server/Services/AuditLogService.js.map +1 -1
  63. package/build/dist/Server/Services/KubernetesContainerService.js +179 -0
  64. package/build/dist/Server/Services/KubernetesContainerService.js.map +1 -0
  65. package/build/dist/Server/Services/KubernetesResourceService.js +175 -0
  66. package/build/dist/Server/Services/KubernetesResourceService.js.map +1 -1
  67. package/build/dist/Server/Services/StatusPageSubscriberService.js +4 -4
  68. package/build/dist/Server/Services/StatusPageSubscriberService.js.map +1 -1
  69. package/build/dist/Server/Types/Database/Permissions/AccessControlPermission.js +3 -3
  70. package/build/dist/Server/Utils/LLM/LLMService.js +111 -13
  71. package/build/dist/Server/Utils/LLM/LLMService.js.map +1 -1
  72. package/build/dist/Server/Utils/Monitor/MonitorAlert.js +1 -1
  73. package/build/dist/Server/Utils/Monitor/MonitorAlert.js.map +1 -1
  74. package/build/dist/Server/Utils/Monitor/MonitorIncident.js +1 -1
  75. package/build/dist/Server/Utils/Monitor/MonitorIncident.js.map +1 -1
  76. package/build/dist/Server/Utils/StartServer.js +2 -0
  77. package/build/dist/Server/Utils/StartServer.js.map +1 -1
  78. package/build/dist/Server/Utils/Telemetry/AppMetrics.js +167 -0
  79. package/build/dist/Server/Utils/Telemetry/AppMetrics.js.map +1 -0
  80. package/build/dist/Server/Utils/Telemetry/RuntimeMetrics.js +141 -0
  81. package/build/dist/Server/Utils/Telemetry/RuntimeMetrics.js.map +1 -0
  82. package/build/dist/Server/Utils/Telemetry.js +47 -0
  83. package/build/dist/Server/Utils/Telemetry.js.map +1 -1
  84. package/build/dist/Server/Utils/Workspace/Slack/Actions/Alert.js +2 -2
  85. package/build/dist/Server/Utils/Workspace/Slack/Actions/Incident.js +2 -2
  86. package/build/dist/Server/Utils/Workspace/Slack/Actions/ScheduledMaintenance.js +2 -2
  87. package/build/dist/Tests/jest.setup.js +17 -0
  88. package/build/dist/Tests/jest.setup.js.map +1 -1
  89. package/build/dist/Types/Kubernetes/KubernetesInventoryExtractor.js +116 -4
  90. package/build/dist/Types/Kubernetes/KubernetesInventoryExtractor.js.map +1 -1
  91. package/build/dist/Types/LLM/LlmType.js +3 -0
  92. package/build/dist/Types/LLM/LlmType.js.map +1 -1
  93. package/build/dist/UI/Components/Forms/ModelForm.js +3 -3
  94. package/build/dist/UI/Components/LogsViewer/components/LogsAnalyticsView.js.map +1 -1
  95. package/build/dist/Utils/UUID.js +1 -2
  96. package/build/dist/Utils/UUID.js.map +1 -1
  97. package/package.json +6 -8
@@ -14,6 +14,7 @@ import { createBullBoard } from "@bull-board/api";
14
14
  import { BullMQAdapter } from "@bull-board/api/bullMQAdapter";
15
15
  import CaptureSpan from "../Utils/Telemetry/CaptureSpan";
16
16
  import logger from "../Utils/Logger";
17
+ import Telemetry from "../Utils/Telemetry";
17
18
  import Redis from "./Redis";
18
19
  export var QueueName;
19
20
  (function (QueueName) {
@@ -71,6 +72,8 @@ class Queue {
71
72
  });
72
73
  // save it to the dictionary
73
74
  this.queueDict[queueName] = queue;
75
+ // Register the observable gauge once any queue exists in this process.
76
+ this.registerQueueSizeMetric();
74
77
  // Add event listener to re-add repeatable jobs on reconnect
75
78
  this.setupReconnectListener(queue, queueName).catch((err) => {
76
79
  logger.error("Error setting up reconnect listener for queue");
@@ -164,6 +167,46 @@ class Queue {
164
167
  const jobAdded = await queue.add(jobName, data, optionsObject);
165
168
  return jobAdded;
166
169
  }
170
+ static registerQueueSizeMetric() {
171
+ if (this.queueSizeMetricRegistered) {
172
+ return;
173
+ }
174
+ if (!Telemetry.isMetricsEnabled()) {
175
+ return;
176
+ }
177
+ try {
178
+ Telemetry.getObservableGauge({
179
+ name: "queue.size",
180
+ description: "Number of BullMQ jobs in each queue, partitioned by job state.",
181
+ unit: "1",
182
+ callback: async (result) => {
183
+ for (const queueName of Object.keys(this.queueDict)) {
184
+ try {
185
+ const stats = await this.getQueueStats(queueName);
186
+ const baseAttrs = {
187
+ "messaging.system": "bullmq",
188
+ "messaging.destination.name": queueName,
189
+ };
190
+ result.observe(stats.waiting, Object.assign(Object.assign({}, baseAttrs), { state: "waiting" }));
191
+ result.observe(stats.active, Object.assign(Object.assign({}, baseAttrs), { state: "active" }));
192
+ result.observe(stats.delayed, Object.assign(Object.assign({}, baseAttrs), { state: "delayed" }));
193
+ result.observe(stats.failed, Object.assign(Object.assign({}, baseAttrs), { state: "failed" }));
194
+ }
195
+ catch (err) {
196
+ // Don't let one queue's stat failure break others.
197
+ logger.debug("Failed to read queue stats");
198
+ logger.debug(err);
199
+ }
200
+ }
201
+ },
202
+ });
203
+ this.queueSizeMetricRegistered = true;
204
+ }
205
+ catch (err) {
206
+ logger.error("Failed to register queue.size metric");
207
+ logger.error(err);
208
+ }
209
+ }
167
210
  static async getQueueSize(queueName) {
168
211
  const queue = this.getQueue(queueName);
169
212
  const waitingCount = await queue.getWaitingCount();
@@ -216,6 +259,7 @@ class Queue {
216
259
  Queue.queueDict = {};
217
260
  // track queues we have already run initial cleanup on
218
261
  Queue.cleanedQueueNames = new Set();
262
+ Queue.queueSizeMetricRegistered = false;
219
263
  // store repeatable jobs to re-add on reconnect
220
264
  Queue.repeatableJobs = {};
221
265
  export default Queue;
@@ -1 +1 @@
1
- {"version":3,"file":"Queue.js","sourceRoot":"","sources":["../../../../Server/Infrastructure/Queue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Queue.js","sourceRoot":"","sources":["../../../../Server/Infrastructure/Queue.ts"],"names":[],"mappings":"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"}
@@ -11,10 +11,40 @@ import { QueueName } from "./Queue";
11
11
  import TimeoutException from "../../Types/Exception/TimeoutException";
12
12
  import { Worker } from "bullmq";
13
13
  import CaptureSpan from "../Utils/Telemetry/CaptureSpan";
14
+ import AppMetrics from "../Utils/Telemetry/AppMetrics";
14
15
  import Redis from "./Redis";
15
16
  export default class QueueWorker {
16
17
  static getWorker(queueName, onJobInQueue, options) {
17
- const worker = new Worker(queueName, onJobInQueue, Object.assign(Object.assign({ connection: Redis.getRedisOptions(), concurrency: options.concurrency }, (options.lockDuration ? { lockDuration: options.lockDuration } : {})), (options.maxStalledCount !== undefined
18
+ const instrumentedJobHandler = async (job) => {
19
+ const startNs = process.hrtime.bigint();
20
+ const baseAttributes = {
21
+ "messaging.system": "bullmq",
22
+ "messaging.destination.name": queueName,
23
+ "messaging.operation.name": job.name || "unknown",
24
+ };
25
+ AppMetrics.getWorkerJobsInFlight().add(1, baseAttributes);
26
+ let outcome = "success";
27
+ try {
28
+ await onJobInQueue(job);
29
+ }
30
+ catch (err) {
31
+ outcome =
32
+ err instanceof TimeoutException ||
33
+ (err === null || err === void 0 ? void 0 : err.name) === "TimeoutException"
34
+ ? "timeout"
35
+ : "failure";
36
+ throw err;
37
+ }
38
+ finally {
39
+ const elapsedNs = process.hrtime.bigint() - startNs;
40
+ const durationMs = Number(elapsedNs) / 1e6;
41
+ const attributes = Object.assign(Object.assign({}, baseAttributes), { outcome });
42
+ AppMetrics.getWorkerJobCounter().add(1, attributes);
43
+ AppMetrics.getWorkerJobDuration().record(durationMs, attributes);
44
+ AppMetrics.getWorkerJobsInFlight().add(-1, baseAttributes);
45
+ }
46
+ };
47
+ const worker = new Worker(queueName, instrumentedJobHandler, Object.assign(Object.assign({ connection: Redis.getRedisOptions(), concurrency: options.concurrency }, (options.lockDuration ? { lockDuration: options.lockDuration } : {})), (options.maxStalledCount !== undefined
18
48
  ? { maxStalledCount: options.maxStalledCount }
19
49
  : {})));
20
50
  process.on("SIGINT", async () => {
@@ -1 +1 @@
1
- {"version":3,"file":"QueueWorker.js","sourceRoot":"","sources":["../../../../Server/Infrastructure/QueueWorker.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAY,SAAS,EAAE,MAAM,SAAS,CAAC;AAC9C,OAAO,gBAAgB,MAAM,wCAAwC,CAAC;AAMtE,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,WAAW,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,MAAM,SAAS,CAAC;AAE5B,MAAM,CAAC,OAAO,OAAO,WAAW;IAEhB,AAAP,MAAM,CAAC,SAAS,CACrB,SAAoB,EACpB,YAA8C,EAC9C,OAaC;QAED,MAAM,MAAM,GAAW,IAAI,MAAM,CAAC,SAAS,EAAE,YAAY,gCACvD,UAAU,EAAE,KAAK,CAAC,eAAe,EAAE,EACnC,WAAW,EAAE,OAAO,CAAC,WAAW,IAE7B,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,GACpE,CAAC,OAAO,CAAC,eAAe,KAAK,SAAS;YACvC,CAAC,CAAC,EAAE,eAAe,EAAE,OAAO,CAAC,eAAe,EAAE;YAC9C,CAAC,CAAC,EAAE,CAAC,EACP,CAAC;QAEH,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;YAC9B,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACvB,CAAC,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC;IAChB,CAAC;IAGmB,AAAb,MAAM,CAAC,KAAK,CAAC,iBAAiB,CACnC,WAAmB,EACnB,WAAgC;QAIhC,MAAM,cAAc,GAAmB,CAAC,EAAU,EAAiB,EAAE;YACnE,OAAO,IAAI,OAAO,CAChB,CAAC,QAAsB,EAAE,MAAkC,EAAE,EAAE;gBAC7D,UAAU,CAAC,GAAG,EAAE;oBACd,OAAO,MAAM,CAAC,IAAI,gBAAgB,CAAC,aAAa,CAAC,CAAC,CAAC;gBACrD,CAAC,EAAE,EAAE,CAAC,CAAC;YACT,CAAC,CACF,CAAC;QACJ,CAAC,CAAC;QAEF,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;IAC1E,CAAC;CACF;AAtDe;IADb,WAAW,EAAE;;;oCAkBX,MAAM;kCAgBR;AAGmB;IADnB,WAAW,EAAE;;;;0CAkBb"}
1
+ {"version":3,"file":"QueueWorker.js","sourceRoot":"","sources":["../../../../Server/Infrastructure/QueueWorker.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,61 @@
1
+ import AppMetrics from "../Utils/Telemetry/AppMetrics";
2
+ /**
3
+ * Express middleware that records HTTP server metrics (request count,
4
+ * duration, and in-flight gauge) for every request.
5
+ *
6
+ * Attributes are kept low-cardinality on purpose:
7
+ * - http.request.method: GET / POST / ...
8
+ * - http.route: Express route template (e.g. /api/users/:id)
9
+ * or "unmatched" when nothing matched the request.
10
+ * - http.response.status_code: full status code (bounded set).
11
+ * - status_class: 2xx / 3xx / 4xx / 5xx — handy for fast queries.
12
+ *
13
+ * High-cardinality identifiers (raw URL, query string, userId, projectId,
14
+ * requestId) intentionally stay on traces and logs.
15
+ */
16
+ const HttpMetricsMiddleware = (req, res, next) => {
17
+ const startNs = process.hrtime.bigint();
18
+ const method = (req.method || "UNKNOWN").toUpperCase();
19
+ const inFlight = AppMetrics.getHttpRequestsInFlight();
20
+ inFlight.add(1, { "http.request.method": method });
21
+ let recorded = false;
22
+ const recordOnce = () => {
23
+ if (recorded) {
24
+ return;
25
+ }
26
+ recorded = true;
27
+ const elapsedNs = process.hrtime.bigint() - startNs;
28
+ const durationMs = Number(elapsedNs) / 1e6;
29
+ const statusCode = res.statusCode || 0;
30
+ const statusClass = statusCode >= 100 && statusCode < 600
31
+ ? `${Math.floor(statusCode / 100)}xx`
32
+ : "unknown";
33
+ /*
34
+ * Express populates req.route once the request has matched a route
35
+ * handler. For 404s (no match), record the request under a stable
36
+ * "unmatched" label rather than the raw URL to avoid cardinality blowup.
37
+ */
38
+ const routeWithMethod = req.route;
39
+ const baseUrl = req
40
+ .baseUrl
41
+ ? req.baseUrl
42
+ : "";
43
+ const routeTemplate = routeWithMethod && typeof routeWithMethod.path === "string"
44
+ ? `${baseUrl}${routeWithMethod.path}`
45
+ : "unmatched";
46
+ const attributes = {
47
+ "http.request.method": method,
48
+ "http.route": routeTemplate,
49
+ "http.response.status_code": statusCode,
50
+ status_class: statusClass,
51
+ };
52
+ AppMetrics.getHttpRequestCounter().add(1, attributes);
53
+ AppMetrics.getHttpRequestDuration().record(durationMs, attributes);
54
+ inFlight.add(-1, { "http.request.method": method });
55
+ };
56
+ res.on("finish", recordOnce);
57
+ res.on("close", recordOnce);
58
+ next();
59
+ };
60
+ export default HttpMetricsMiddleware;
61
+ //# sourceMappingURL=HttpMetricsMiddleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HttpMetricsMiddleware.js","sourceRoot":"","sources":["../../../../Server/Middleware/HttpMetricsMiddleware.ts"],"names":[],"mappings":"AAKA,OAAO,UAAU,MAAM,+BAA+B,CAAC;AAEvD;;;;;;;;;;;;;GAaG;AACH,MAAM,qBAAqB,GAIf,CACV,GAAmB,EACnB,GAAoB,EACpB,IAAkB,EACZ,EAAE;IACR,MAAM,OAAO,GAAW,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;IAChD,MAAM,MAAM,GAAW,CAAC,GAAG,CAAC,MAAM,IAAI,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;IAE/D,MAAM,QAAQ,GACZ,UAAU,CAAC,uBAAuB,EAAE,CAAC;IAEvC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,qBAAqB,EAAE,MAAM,EAAE,CAAC,CAAC;IAEnD,IAAI,QAAQ,GAAY,KAAK,CAAC;IAE9B,MAAM,UAAU,GAAe,GAAS,EAAE;QACxC,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QACD,QAAQ,GAAG,IAAI,CAAC;QAEhB,MAAM,SAAS,GAAW,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC;QAC5D,MAAM,UAAU,GAAW,MAAM,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC;QACnD,MAAM,UAAU,GAAW,GAAG,CAAC,UAAU,IAAI,CAAC,CAAC;QAC/C,MAAM,WAAW,GACf,UAAU,IAAI,GAAG,IAAI,UAAU,GAAG,GAAG;YACnC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,GAAG,CAAC,IAAI;YACrC,CAAC,CAAC,SAAS,CAAC;QAEhB;;;;WAIG;QACH,MAAM,eAAe,GACnB,GACD,CAAC,KAAK,CAAC;QAER,MAAM,OAAO,GAAY,GAA6C;aACnE,OAAO;YACR,CAAC,CAAE,GAA4C,CAAC,OAAO;YACvD,CAAC,CAAC,EAAE,CAAC;QAEP,MAAM,aAAa,GACjB,eAAe,IAAI,OAAO,eAAe,CAAC,IAAI,KAAK,QAAQ;YACzD,CAAC,CAAC,GAAG,OAAO,GAAG,eAAe,CAAC,IAAI,EAAE;YACrC,CAAC,CAAC,WAAW,CAAC;QAElB,MAAM,UAAU,GAAoC;YAClD,qBAAqB,EAAE,MAAM;YAC7B,YAAY,EAAE,aAAa;YAC3B,2BAA2B,EAAE,UAAU;YACvC,YAAY,EAAE,WAAW;SAC1B,CAAC;QAEF,UAAU,CAAC,qBAAqB,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;QACtD,UAAU,CAAC,sBAAsB,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QACnE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,qBAAqB,EAAE,MAAM,EAAE,CAAC,CAAC;IACtD,CAAC,CAAC;IAEF,GAAG,CAAC,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IAC7B,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IAE5B,IAAI,EAAE,CAAC;AACT,CAAC,CAAC;AAEF,eAAe,qBAAqB,CAAC"}
@@ -170,13 +170,16 @@ export class AuditLogService extends AnalyticsDatabaseService {
170
170
  const days = Math.max(1, Math.min(retentionInDays || 7, 180));
171
171
  return OneUptimeDate.addRemoveDays(OneUptimeDate.getCurrentDate(), days);
172
172
  }
173
- isEligible(settings, _props) {
173
+ isEligible(settings, props) {
174
174
  if (!settings) {
175
175
  return false;
176
176
  }
177
177
  if (!settings.enableAuditLogs) {
178
178
  return false;
179
179
  }
180
+ if (!settings.storeSystemEventsInAuditLogs && this.isSystemEvent(props)) {
181
+ return false;
182
+ }
180
183
  if (IsEnterpriseEdition) {
181
184
  return true;
182
185
  }
@@ -189,6 +192,14 @@ export class AuditLogService extends AnalyticsDatabaseService {
189
192
  */
190
193
  return false;
191
194
  }
195
+ isSystemEvent(props) {
196
+ /*
197
+ * A system event is one not initiated by a user — no userType is set and
198
+ * the operation is running with root privileges (e.g. background jobs,
199
+ * internal cleanup tasks).
200
+ */
201
+ return !props.userType && Boolean(props.isRoot);
202
+ }
192
203
  async getProjectSettings(projectId) {
193
204
  var _a;
194
205
  const key = projectId.toString();
@@ -203,6 +214,7 @@ export class AuditLogService extends AnalyticsDatabaseService {
203
214
  _id: true,
204
215
  enableAuditLogs: true,
205
216
  auditLogsRetentionInDays: true,
217
+ storeSystemEventsInAuditLogs: true,
206
218
  planName: true,
207
219
  },
208
220
  props: { isRoot: true },
@@ -213,6 +225,7 @@ export class AuditLogService extends AnalyticsDatabaseService {
213
225
  const settings = {
214
226
  enableAuditLogs: Boolean(project.enableAuditLogs),
215
227
  retentionInDays: (_a = project.auditLogsRetentionInDays) !== null && _a !== void 0 ? _a : 7,
228
+ storeSystemEventsInAuditLogs: Boolean(project.storeSystemEventsInAuditLogs),
216
229
  planName: project.planName,
217
230
  expiresAt: now + PROJECT_SETTINGS_CACHE_TTL_MS,
218
231
  };
@@ -1 +1 @@
1
- {"version":3,"file":"AuditLogService.js","sourceRoot":"","sources":["../../../../Server/Services/AuditLogService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AuditLogService.js","sourceRoot":"","sources":["../../../../Server/Services/AuditLogService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,179 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import DatabaseService from "./DatabaseService";
11
+ import Model from "../../Models/DatabaseModels/KubernetesContainer";
12
+ import CaptureSpan from "../Utils/Telemetry/CaptureSpan";
13
+ import logger from "../Utils/Logger";
14
+ const UPSERT_BATCH_SIZE = 500;
15
+ const STALE_DELETE_WARN_THRESHOLD = 500;
16
+ const UPSERT_COLUMNS = [
17
+ "projectId",
18
+ "kubernetesClusterId",
19
+ "podNamespaceKey",
20
+ "podName",
21
+ "name",
22
+ "image",
23
+ "state",
24
+ "reason",
25
+ "isReady",
26
+ "restartCount",
27
+ "memoryLimitBytes",
28
+ "lastSeenAt",
29
+ "version",
30
+ ];
31
+ export class Service extends DatabaseService {
32
+ constructor() {
33
+ super(Model);
34
+ }
35
+ /**
36
+ * Upsert a batch of parsed containers for a single (project, cluster)
37
+ * pair. Uses ON CONFLICT on the UNIQUE (projectId, clusterId,
38
+ * podNamespaceKey, podName, name) index with a dominance guard on
39
+ * lastSeenAt so out-of-order ingest never regresses a newer snapshot.
40
+ *
41
+ * Note: the upsert deliberately leaves latestCpuPercent /
42
+ * latestMemoryBytes / metricsUpdatedAt untouched — those are owned
43
+ * by the separate metric write path.
44
+ */
45
+ async bulkUpsert(data) {
46
+ if (data.containers.length === 0) {
47
+ return;
48
+ }
49
+ for (let i = 0; i < data.containers.length; i += UPSERT_BATCH_SIZE) {
50
+ const chunk = data.containers.slice(i, i + UPSERT_BATCH_SIZE);
51
+ const valueFragments = [];
52
+ const params = [];
53
+ let paramIndex = 1;
54
+ for (const c of chunk) {
55
+ const placeholders = [];
56
+ for (let p = 0; p < UPSERT_COLUMNS.length; p++) {
57
+ placeholders.push(`$${paramIndex++}`);
58
+ }
59
+ valueFragments.push(`(${placeholders.join(", ")})`);
60
+ params.push(data.projectId.toString(), data.kubernetesClusterId.toString(), c.podNamespaceKey, c.podName, c.name, c.image, c.state, c.reason, c.isReady, c.restartCount, c.memoryLimitBytes !== null && c.memoryLimitBytes !== undefined
61
+ ? Math.trunc(c.memoryLimitBytes).toString()
62
+ : null, c.lastSeenAt, 0);
63
+ }
64
+ const sql = `
65
+ INSERT INTO "KubernetesContainer" (
66
+ "projectId", "kubernetesClusterId",
67
+ "podNamespaceKey", "podName", "name",
68
+ "image", "state", "reason", "isReady", "restartCount",
69
+ "memoryLimitBytes", "lastSeenAt", "version"
70
+ )
71
+ VALUES ${valueFragments.join(", ")}
72
+ ON CONFLICT ("projectId", "kubernetesClusterId", "podNamespaceKey", "podName", "name")
73
+ DO UPDATE SET
74
+ "image" = EXCLUDED."image",
75
+ "state" = EXCLUDED."state",
76
+ "reason" = EXCLUDED."reason",
77
+ "isReady" = EXCLUDED."isReady",
78
+ "restartCount" = EXCLUDED."restartCount",
79
+ "memoryLimitBytes" = EXCLUDED."memoryLimitBytes",
80
+ "lastSeenAt" = EXCLUDED."lastSeenAt",
81
+ "updatedAt" = now()
82
+ WHERE EXCLUDED."lastSeenAt" >= "KubernetesContainer"."lastSeenAt"
83
+ `;
84
+ await this.getRepository().manager.query(sql, params);
85
+ }
86
+ }
87
+ /**
88
+ * Hard-delete all containers in a cluster whose last snapshot is
89
+ * older than olderThan. Returns the number of deleted rows.
90
+ */
91
+ async deleteStaleForCluster(data) {
92
+ const result = await this.getRepository().manager.query(`DELETE FROM "KubernetesContainer" WHERE "kubernetesClusterId" = $1 AND "lastSeenAt" < $2`, [data.kubernetesClusterId.toString(), data.olderThan]);
93
+ let affected = 0;
94
+ if (Array.isArray(result) && result.length >= 2) {
95
+ const second = result[1];
96
+ if (typeof second === "number") {
97
+ affected = second;
98
+ }
99
+ }
100
+ if (affected > STALE_DELETE_WARN_THRESHOLD) {
101
+ logger.warn(`KubernetesContainer cleanup deleted ${affected} stale rows for cluster ${data.kubernetesClusterId.toString()} — larger than expected; investigate agent health.`);
102
+ }
103
+ return affected;
104
+ }
105
+ /**
106
+ * Update latestCpuPercent/latestMemoryBytes/metricsUpdatedAt for a
107
+ * batch of containers. Plain UPDATE — if the snapshot row doesn't
108
+ * exist yet, the metric write is silently skipped; the next k8s
109
+ * snapshot creates the row and the next metric flush catches up.
110
+ *
111
+ * The WHERE guard ensures out-of-order metric points don't regress
112
+ * a newer observation.
113
+ */
114
+ async bulkUpdateLatestMetrics(data) {
115
+ if (data.metrics.length === 0) {
116
+ return;
117
+ }
118
+ /*
119
+ * Build a single CTE-style UPDATE per chunk: VALUES table joined to
120
+ * the live table on the natural key. Cheaper than firing one UPDATE
121
+ * per row and atomic per chunk.
122
+ */
123
+ for (let i = 0; i < data.metrics.length; i += UPSERT_BATCH_SIZE) {
124
+ const chunk = data.metrics.slice(i, i + UPSERT_BATCH_SIZE);
125
+ const valueFragments = [];
126
+ const params = [
127
+ data.projectId.toString(),
128
+ data.kubernetesClusterId.toString(),
129
+ ];
130
+ let paramIndex = 3;
131
+ for (const m of chunk) {
132
+ valueFragments.push(`($${paramIndex++}, $${paramIndex++}, $${paramIndex++}, $${paramIndex++}::numeric, $${paramIndex++}::bigint, $${paramIndex++}::timestamptz)`);
133
+ params.push(m.podNamespaceKey, m.podName, m.name, m.cpuPercent !== null && m.cpuPercent !== undefined
134
+ ? m.cpuPercent
135
+ : null, m.memoryBytes !== null && m.memoryBytes !== undefined
136
+ ? Math.trunc(m.memoryBytes).toString()
137
+ : null, m.observedAt);
138
+ }
139
+ const sql = `
140
+ UPDATE "KubernetesContainer" AS k
141
+ SET
142
+ "latestCpuPercent" = COALESCE(v."cpu", k."latestCpuPercent"),
143
+ "latestMemoryBytes" = COALESCE(v."mem", k."latestMemoryBytes"),
144
+ "metricsUpdatedAt" = v."observedAt",
145
+ "updatedAt" = now()
146
+ FROM (VALUES ${valueFragments.join(", ")})
147
+ AS v("ns", "pod", "name", "cpu", "mem", "observedAt")
148
+ WHERE
149
+ k."projectId" = $1
150
+ AND k."kubernetesClusterId" = $2
151
+ AND k."podNamespaceKey" = v."ns"
152
+ AND k."podName" = v."pod"
153
+ AND k."name" = v."name"
154
+ AND (k."metricsUpdatedAt" IS NULL OR v."observedAt" >= k."metricsUpdatedAt")
155
+ `;
156
+ await this.getRepository().manager.query(sql, params);
157
+ }
158
+ }
159
+ }
160
+ __decorate([
161
+ CaptureSpan(),
162
+ __metadata("design:type", Function),
163
+ __metadata("design:paramtypes", [Object]),
164
+ __metadata("design:returntype", Promise)
165
+ ], Service.prototype, "bulkUpsert", null);
166
+ __decorate([
167
+ CaptureSpan(),
168
+ __metadata("design:type", Function),
169
+ __metadata("design:paramtypes", [Object]),
170
+ __metadata("design:returntype", Promise)
171
+ ], Service.prototype, "deleteStaleForCluster", null);
172
+ __decorate([
173
+ CaptureSpan(),
174
+ __metadata("design:type", Function),
175
+ __metadata("design:paramtypes", [Object]),
176
+ __metadata("design:returntype", Promise)
177
+ ], Service.prototype, "bulkUpdateLatestMetrics", null);
178
+ export default new Service();
179
+ //# sourceMappingURL=KubernetesContainerService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"KubernetesContainerService.js","sourceRoot":"","sources":["../../../../Server/Services/KubernetesContainerService.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,MAAM,iDAAiD,CAAC;AACpE,OAAO,WAAW,MAAM,gCAAgC,CAAC;AAEzD,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAwCrC,MAAM,iBAAiB,GAAW,GAAG,CAAC;AACtC,MAAM,2BAA2B,GAAW,GAAG,CAAC;AAEhD,MAAM,cAAc,GAAkB;IACpC,WAAW;IACX,qBAAqB;IACrB,iBAAiB;IACjB,SAAS;IACT,MAAM;IACN,OAAO;IACP,OAAO;IACP,QAAQ;IACR,SAAS;IACT,cAAc;IACd,kBAAkB;IAClB,YAAY;IACZ,SAAS;CACV,CAAC;AAEF,MAAM,OAAO,OAAQ,SAAQ,eAAsB;IACjD;QACE,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;IAED;;;;;;;;;OASG;IAEU,AAAN,KAAK,CAAC,UAAU,CAAC,IAIvB;QACC,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjC,OAAO;QACT,CAAC;QAED,KACE,IAAI,CAAC,GAAW,CAAC,EACjB,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,EAC1B,CAAC,IAAI,iBAAiB,EACtB,CAAC;YACD,MAAM,KAAK,GAAqC,IAAI,CAAC,UAAU,CAAC,KAAK,CACnE,CAAC,EACD,CAAC,GAAG,iBAAiB,CACtB,CAAC;YAEF,MAAM,cAAc,GAAkB,EAAE,CAAC;YACzC,MAAM,MAAM,GAAmB,EAAE,CAAC;YAClC,IAAI,UAAU,GAAW,CAAC,CAAC;YAE3B,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;gBACtB,MAAM,YAAY,GAAkB,EAAE,CAAC;gBACvC,KAAK,IAAI,CAAC,GAAW,CAAC,EAAE,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBACvD,YAAY,CAAC,IAAI,CAAC,IAAI,UAAU,EAAE,EAAE,CAAC,CAAC;gBACxC,CAAC;gBACD,cAAc,CAAC,IAAI,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAEpD,MAAM,CAAC,IAAI,CACT,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,EACzB,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,EACnC,CAAC,CAAC,eAAe,EACjB,CAAC,CAAC,OAAO,EACT,CAAC,CAAC,IAAI,EACN,CAAC,CAAC,KAAK,EACP,CAAC,CAAC,KAAK,EACP,CAAC,CAAC,MAAM,EACR,CAAC,CAAC,OAAO,EACT,CAAC,CAAC,YAAY,EACd,CAAC,CAAC,gBAAgB,KAAK,IAAI,IAAI,CAAC,CAAC,gBAAgB,KAAK,SAAS;oBAC7D,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,QAAQ,EAAE;oBAC3C,CAAC,CAAC,IAAI,EACR,CAAC,CAAC,UAAU,EACZ,CAAC,CACF,CAAC;YACJ,CAAC;YAED,MAAM,GAAG,GAAW;;;;;;;iBAOT,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;;;;;;;;;;;;OAYnC,CAAC;YAEF,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAED;;;OAGG;IAEU,AAAN,KAAK,CAAC,qBAAqB,CAAC,IAGlC;QACC,MAAM,MAAM,GACV,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC,KAAK,CACtC,0FAA0F,EAC1F,CAAC,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,CACtD,CAAC;QAEJ,IAAI,QAAQ,GAAW,CAAC,CAAC;QACzB,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YAChD,MAAM,MAAM,GAAa,MAAyB,CAAC,CAAC,CAAC,CAAC;YACtD,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC/B,QAAQ,GAAG,MAAM,CAAC;YACpB,CAAC;QACH,CAAC;QAED,IAAI,QAAQ,GAAG,2BAA2B,EAAE,CAAC;YAC3C,MAAM,CAAC,IAAI,CACT,uCAAuC,QAAQ,2BAA2B,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,oDAAoD,CAClK,CAAC;QACJ,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;;;;;OAQG;IAEU,AAAN,KAAK,CAAC,uBAAuB,CAAC,IAIpC;QACC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,OAAO;QACT,CAAC;QAED;;;;WAIG;QACH,KAAK,IAAI,CAAC,GAAW,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,IAAI,iBAAiB,EAAE,CAAC;YACxE,MAAM,KAAK,GAAiC,IAAI,CAAC,OAAO,CAAC,KAAK,CAC5D,CAAC,EACD,CAAC,GAAG,iBAAiB,CACtB,CAAC;YAEF,MAAM,cAAc,GAAkB,EAAE,CAAC;YACzC,MAAM,MAAM,GAAmB;gBAC7B,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;gBACzB,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE;aACpC,CAAC;YACF,IAAI,UAAU,GAAW,CAAC,CAAC;YAE3B,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;gBACtB,cAAc,CAAC,IAAI,CACjB,KAAK,UAAU,EAAE,MAAM,UAAU,EAAE,MAAM,UAAU,EAAE,MAAM,UAAU,EAAE,eAAe,UAAU,EAAE,cAAc,UAAU,EAAE,gBAAgB,CAC7I,CAAC;gBACF,MAAM,CAAC,IAAI,CACT,CAAC,CAAC,eAAe,EACjB,CAAC,CAAC,OAAO,EACT,CAAC,CAAC,IAAI,EACN,CAAC,CAAC,UAAU,KAAK,IAAI,IAAI,CAAC,CAAC,UAAU,KAAK,SAAS;oBACjD,CAAC,CAAC,CAAC,CAAC,UAAU;oBACd,CAAC,CAAC,IAAI,EACR,CAAC,CAAC,WAAW,KAAK,IAAI,IAAI,CAAC,CAAC,WAAW,KAAK,SAAS;oBACnD,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE;oBACtC,CAAC,CAAC,IAAI,EACR,CAAC,CAAC,UAAU,CACb,CAAC;YACJ,CAAC;YAED,MAAM,GAAG,GAAW;;;;;;;uBAOH,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;;;;;;;;;OASzC,CAAC;YAEF,MAAM,IAAI,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;CACF;AAtLc;IADZ,WAAW,EAAE;;;;yCAyEb;AAOY;IADZ,WAAW,EAAE;;;;oDA0Bb;AAYY;IADZ,WAAW,EAAE;;;;sDAkEb;AAGH,eAAe,IAAI,OAAO,EAAE,CAAC"}