@platformatic/watt-admin 0.1.2 → 0.3.0

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.
@@ -1,106 +1,111 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.calcBytesToMB = exports.calculateMetrics = void 0;
3
+ exports.calcBytesToMB = exports.calculateMetrics = exports.calcReqRps = void 0;
4
4
  const control_1 = require("@platformatic/control");
5
5
  const MAX_STORED_METRICS = 20;
6
+ const calcReqRps = (count, req) => Math.abs(count - (req[req.length - 1]?.count || 0));
7
+ exports.calcReqRps = calcReqRps;
8
+ const initMetricsResponse = () => ({ dataCpu: [], dataLatency: [], dataMem: [], dataReq: [] });
9
+ const initMemData = (date) => ({ date, rss: 0, totalHeap: 0, usedHeap: 0, newSpace: 0, oldSpace: 0 });
10
+ const initCpuData = (date) => ({ date, cpu: 0, eventLoop: 0 });
11
+ const initLatencyData = (date) => ({ date, p90: 0, p95: 0, p99: 0 });
12
+ const initReqData = (date) => ({ date, count: 0, rps: 0, });
6
13
  const calculateMetrics = async ({ mappedMetrics, log }) => {
7
14
  try {
8
15
  const api = new control_1.RuntimeApiClient();
9
16
  const runtimes = await api.getRuntimes();
10
17
  for (const { pid } of runtimes) {
11
- const date = new Date();
12
- const aggregatedMemData = {
13
- date,
14
- rss: 0,
15
- totalHeap: 0,
16
- usedHeap: 0,
17
- newSpace: 0,
18
- oldSpace: 0
19
- };
20
- const aggregatedCpuData = {
21
- date,
22
- cpu: 0,
23
- eventLoop: 0
24
- };
25
- const aggregatedLatencyData = {
26
- date,
27
- p90: 0,
28
- p95: 0,
29
- p99: 0
30
- };
31
- const aggregatedReqData = {
32
- date,
33
- count: 0,
34
- rps: 0,
35
- };
18
+ const date = new Date().toISOString();
19
+ const aggregatedMemData = initMemData(date);
20
+ const aggregatedCpuData = initCpuData(date);
21
+ const aggregatedLatencyData = initLatencyData(date);
22
+ const aggregatedReqData = initReqData(date);
36
23
  let aggregatedRss = 0;
37
24
  const runtimeMetrics = await api.getRuntimeMetrics(pid, { format: 'json' });
38
25
  if (!mappedMetrics[pid]) {
39
- mappedMetrics[pid] = { services: {}, aggregated: { dataCpu: [], dataLatency: [], dataMem: [], dataReq: [] } };
26
+ mappedMetrics[pid] = { services: {}, aggregated: initMetricsResponse() };
40
27
  }
41
28
  const { services, entrypoint } = await api.getRuntimeServices(pid);
42
- for (const { id: serviceId } of services) {
29
+ for (const service of services) {
30
+ const { id: serviceId } = service;
31
+ const workers = 'workers' in service && service?.workers ? service.workers : 1;
32
+ const areMultipleWorkersEnabled = workers > 1;
43
33
  const isEntrypointService = entrypoint === serviceId;
44
34
  if (!mappedMetrics[pid].services[serviceId]) {
45
- mappedMetrics[pid].services[serviceId] = { dataCpu: [], dataLatency: [], dataMem: [], dataReq: [] };
35
+ mappedMetrics[pid].services[serviceId] = { all: initMetricsResponse() };
36
+ if (areMultipleWorkersEnabled) {
37
+ for (let i = 0; i < workers; i++) {
38
+ mappedMetrics[pid].services[serviceId][i] = initMetricsResponse();
39
+ }
40
+ }
46
41
  }
47
- const serviceMemData = {
48
- date,
49
- rss: 0,
50
- totalHeap: 0,
51
- usedHeap: 0,
52
- newSpace: 0,
53
- oldSpace: 0
54
- };
55
- const serviceCpuData = {
56
- date,
57
- cpu: 0,
58
- eventLoop: 0
59
- };
60
- const serviceLatencyData = {
61
- date,
62
- p90: 0,
63
- p95: 0,
64
- p99: 0
65
- };
66
- const serviceReqData = {
67
- date,
68
- count: 0,
69
- rps: 0
70
- };
42
+ const workersMemData = Array.from({ length: workers }, () => initMemData(date));
43
+ const workersCpuData = Array.from({ length: workers }, () => initCpuData(date));
44
+ const workersLatencyData = Array.from({ length: workers }, () => initLatencyData(date));
45
+ const workersReqData = Array.from({ length: workers }, () => initReqData(date));
46
+ const serviceMemData = initMemData(date);
47
+ const serviceCpuData = initCpuData(date);
48
+ const serviceLatencyData = initLatencyData(date);
49
+ const serviceReqData = initReqData(date);
71
50
  for (const metric of runtimeMetrics) {
72
51
  if (metric.values.length > 0) {
73
52
  const [{ value, labels }] = metric.values;
74
- if (metric.name === 'process_resident_memory_bytes') {
75
- aggregatedRss = (0, exports.calcBytesToMB)(value);
53
+ const workerId = labels.workerId ?? 0;
54
+ if (isEntrypointService) {
55
+ if (metric.name === 'process_resident_memory_bytes') {
56
+ aggregatedRss = (0, exports.calcBytesToMB)(value);
57
+ }
76
58
  }
77
59
  if (serviceId === labels.serviceId) {
78
60
  if (metric.name === 'nodejs_heap_size_total_bytes') {
79
- serviceMemData.totalHeap = (0, exports.calcBytesToMB)(value);
61
+ const data = (0, exports.calcBytesToMB)(value);
62
+ if (areMultipleWorkersEnabled) {
63
+ workersMemData[workerId].totalHeap = data;
64
+ }
65
+ serviceMemData.totalHeap += data;
80
66
  aggregatedMemData.totalHeap += serviceMemData.totalHeap;
81
67
  }
82
68
  if (metric.name === 'nodejs_heap_size_used_bytes') {
83
- serviceMemData.usedHeap = (0, exports.calcBytesToMB)(value);
69
+ const data = (0, exports.calcBytesToMB)(value);
70
+ if (areMultipleWorkersEnabled) {
71
+ workersMemData[workerId].usedHeap = data;
72
+ }
73
+ serviceMemData.usedHeap += data;
84
74
  aggregatedMemData.usedHeap += serviceMemData.usedHeap;
85
75
  }
86
76
  if (metric.name === 'nodejs_heap_space_size_used_bytes') {
87
77
  metric.values.forEach(val => {
78
+ const data = (0, exports.calcBytesToMB)(val.value);
88
79
  if (val.labels?.space === 'new') {
89
- serviceMemData.newSpace = (0, exports.calcBytesToMB)(val.value);
80
+ if (areMultipleWorkersEnabled) {
81
+ workersMemData[workerId].newSpace = data;
82
+ }
83
+ serviceMemData.newSpace += data;
90
84
  aggregatedMemData.newSpace += serviceMemData.newSpace;
91
85
  }
92
86
  else if (val.labels?.space === 'old') {
93
- serviceMemData.oldSpace = (0, exports.calcBytesToMB)(val.value);
87
+ if (areMultipleWorkersEnabled) {
88
+ workersMemData[workerId].oldSpace = data;
89
+ }
90
+ serviceMemData.oldSpace += data;
94
91
  aggregatedMemData.oldSpace += serviceMemData.oldSpace;
95
92
  }
96
93
  });
97
94
  }
98
95
  if (metric.name === 'thread_cpu_percent_usage') {
99
- serviceCpuData.cpu = value;
96
+ const data = value / workers;
97
+ if (areMultipleWorkersEnabled) {
98
+ workersCpuData[workerId].cpu = data;
99
+ }
100
+ serviceCpuData.cpu += data;
100
101
  aggregatedCpuData.cpu += serviceCpuData.cpu;
101
102
  }
102
103
  if (metric.name === 'nodejs_eventloop_utilization') {
103
- serviceCpuData.eventLoop = value * 100;
104
+ const data = (value * 100) / workers;
105
+ if (areMultipleWorkersEnabled) {
106
+ workersCpuData[workerId].eventLoop = data;
107
+ }
108
+ serviceCpuData.eventLoop += data;
104
109
  aggregatedCpuData.eventLoop += serviceCpuData.eventLoop;
105
110
  }
106
111
  if (metric.name === 'http_request_all_summary_seconds') {
@@ -108,31 +113,49 @@ const calculateMetrics = async ({ mappedMetrics, log }) => {
108
113
  const data = metricValue.value * 1000;
109
114
  if (data > 0) {
110
115
  if (metricValue.labels?.quantile === 0.9) {
111
- serviceLatencyData.p90 = data;
116
+ if (data > serviceLatencyData.p90) {
117
+ if (areMultipleWorkersEnabled) {
118
+ workersLatencyData[workerId].p90 = data;
119
+ }
120
+ serviceLatencyData.p90 = data;
121
+ }
112
122
  if (isEntrypointService) {
113
- aggregatedLatencyData.p90 = data;
123
+ aggregatedLatencyData.p90 = serviceLatencyData.p90;
114
124
  }
115
125
  }
116
126
  if (metricValue.labels?.quantile === 0.95) {
117
- serviceLatencyData.p95 = data;
127
+ if (data > serviceLatencyData.p95) {
128
+ if (areMultipleWorkersEnabled) {
129
+ workersLatencyData[workerId].p95 = data;
130
+ }
131
+ serviceLatencyData.p95 = data;
132
+ }
118
133
  if (isEntrypointService) {
119
- aggregatedLatencyData.p95 = data;
134
+ aggregatedLatencyData.p95 = serviceLatencyData.p95;
120
135
  }
121
136
  }
122
137
  if (metricValue.labels?.quantile === 0.99) {
123
- serviceLatencyData.p99 = data;
138
+ if (data > serviceLatencyData.p99) {
139
+ if (areMultipleWorkersEnabled) {
140
+ workersLatencyData[workerId].p99 = data;
141
+ }
142
+ serviceLatencyData.p99 = data;
143
+ }
124
144
  if (isEntrypointService) {
125
- aggregatedLatencyData.p99 = data;
145
+ aggregatedLatencyData.p99 = serviceLatencyData.p99;
126
146
  }
127
147
  }
128
148
  }
129
149
  }
130
150
  }
131
151
  if (metric.name === 'http_request_duration_seconds') {
152
+ const alreadyIteratedRoutes = {};
132
153
  const count = metric.values.reduce((acc, { metricName, value, labels }) => {
133
- const lastRouteChar = labels.route?.slice(-1);
134
- if (metricName === 'http_request_duration_seconds_count' && lastRouteChar !== '/') {
154
+ const routeLabel = labels.route || '';
155
+ const cleanRouteLabel = routeLabel?.endsWith('/') ? routeLabel.slice(0, -1) : routeLabel;
156
+ if (metricName === 'http_request_duration_seconds_count' && !alreadyIteratedRoutes[cleanRouteLabel]) {
135
157
  acc += value;
158
+ alreadyIteratedRoutes[cleanRouteLabel] = true;
136
159
  }
137
160
  return acc;
138
161
  }, 0);
@@ -140,12 +163,16 @@ const calculateMetrics = async ({ mappedMetrics, log }) => {
140
163
  log.debug(metric.values, 'Empty HTTP request count');
141
164
  }
142
165
  else {
143
- const req = mappedMetrics[pid].services[serviceId].dataReq;
144
- const rps = count - (req[req.length - 1]?.count || 0);
166
+ if (areMultipleWorkersEnabled) {
167
+ workersReqData[workerId].count = count;
168
+ const rps = (0, exports.calcReqRps)(count, mappedMetrics[pid].services[serviceId][workerId].dataReq);
169
+ workersReqData[workerId].rps = rps;
170
+ }
171
+ serviceReqData.count += count;
172
+ const rps = (0, exports.calcReqRps)(serviceReqData.count, mappedMetrics[pid].services[serviceId].all.dataReq);
145
173
  serviceReqData.rps = rps;
146
- serviceReqData.count = count;
147
174
  if (isEntrypointService) {
148
- aggregatedReqData.count = count;
175
+ aggregatedReqData.count = serviceReqData.count;
149
176
  aggregatedReqData.rps = rps;
150
177
  }
151
178
  }
@@ -155,22 +182,43 @@ const calculateMetrics = async ({ mappedMetrics, log }) => {
155
182
  }
156
183
  serviceMemData.rss = aggregatedRss;
157
184
  aggregatedMemData.rss = aggregatedRss;
158
- if (mappedMetrics[pid].services[serviceId].dataMem.length >= MAX_STORED_METRICS) {
159
- mappedMetrics[pid].services[serviceId].dataMem.shift();
185
+ if (areMultipleWorkersEnabled) {
186
+ for (let i = 0; i < workers; i++) {
187
+ workersMemData[i].rss = aggregatedRss;
188
+ if (mappedMetrics[pid].services[serviceId][i].dataMem.length >= MAX_STORED_METRICS) {
189
+ mappedMetrics[pid].services[serviceId][i].dataMem.shift();
190
+ }
191
+ if (mappedMetrics[pid].services[serviceId][i].dataCpu.length >= MAX_STORED_METRICS) {
192
+ mappedMetrics[pid].services[serviceId][i].dataCpu.shift();
193
+ }
194
+ if (mappedMetrics[pid].services[serviceId][i].dataLatency.length >= MAX_STORED_METRICS) {
195
+ mappedMetrics[pid].services[serviceId][i].dataLatency.shift();
196
+ }
197
+ if (mappedMetrics[pid].services[serviceId][i].dataReq.length >= MAX_STORED_METRICS) {
198
+ mappedMetrics[pid].services[serviceId][i].dataReq.shift();
199
+ }
200
+ mappedMetrics[pid].services[serviceId][i].dataMem.push(workersMemData[i]);
201
+ mappedMetrics[pid].services[serviceId][i].dataCpu.push(workersCpuData[i]);
202
+ mappedMetrics[pid].services[serviceId][i].dataLatency.push(workersLatencyData[i]);
203
+ mappedMetrics[pid].services[serviceId][i].dataReq.push(workersReqData[i]);
204
+ }
205
+ }
206
+ if (mappedMetrics[pid].services[serviceId].all.dataMem.length >= MAX_STORED_METRICS) {
207
+ mappedMetrics[pid].services[serviceId].all.dataMem.shift();
160
208
  }
161
- if (mappedMetrics[pid].services[serviceId].dataCpu.length >= MAX_STORED_METRICS) {
162
- mappedMetrics[pid].services[serviceId].dataCpu.shift();
209
+ if (mappedMetrics[pid].services[serviceId].all.dataCpu.length >= MAX_STORED_METRICS) {
210
+ mappedMetrics[pid].services[serviceId].all.dataCpu.shift();
163
211
  }
164
- if (mappedMetrics[pid].services[serviceId].dataLatency.length >= MAX_STORED_METRICS) {
165
- mappedMetrics[pid].services[serviceId].dataLatency.shift();
212
+ if (mappedMetrics[pid].services[serviceId].all.dataLatency.length >= MAX_STORED_METRICS) {
213
+ mappedMetrics[pid].services[serviceId].all.dataLatency.shift();
166
214
  }
167
- if (mappedMetrics[pid].services[serviceId].dataReq.length >= MAX_STORED_METRICS) {
168
- mappedMetrics[pid].services[serviceId].dataReq.shift();
215
+ if (mappedMetrics[pid].services[serviceId].all.dataReq.length >= MAX_STORED_METRICS) {
216
+ mappedMetrics[pid].services[serviceId].all.dataReq.shift();
169
217
  }
170
- mappedMetrics[pid].services[serviceId].dataMem.push(serviceMemData);
171
- mappedMetrics[pid].services[serviceId].dataCpu.push(serviceCpuData);
172
- mappedMetrics[pid].services[serviceId].dataLatency.push(serviceLatencyData);
173
- mappedMetrics[pid].services[serviceId].dataReq.push(serviceReqData);
218
+ mappedMetrics[pid].services[serviceId].all.dataMem.push(serviceMemData);
219
+ mappedMetrics[pid].services[serviceId].all.dataCpu.push(serviceCpuData);
220
+ mappedMetrics[pid].services[serviceId].all.dataLatency.push(serviceLatencyData);
221
+ mappedMetrics[pid].services[serviceId].all.dataReq.push(serviceReqData);
174
222
  }
175
223
  if (mappedMetrics[pid].aggregated.dataMem.length >= MAX_STORED_METRICS) {
176
224
  mappedMetrics[pid].aggregated.dataMem.shift();
@@ -1 +1 @@
1
- {"version":3,"file":"calc.js","sourceRoot":"","sources":["../../utils/calc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"calc.js","sourceRoot":"","sources":["../../utils/calc.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const promises_1 = __importDefault(require("fs/promises"));
7
+ const service_1 = require("@platformatic/service");
8
+ async function clientOpenapi() {
9
+ const server = await (0, service_1.buildServer)({
10
+ $schema: 'https://schemas.platformatic.dev/@platformatic/service/2.60.0.json',
11
+ service: {
12
+ openapi: true
13
+ },
14
+ watch: false,
15
+ plugins: {
16
+ paths: [
17
+ {
18
+ path: './plugins',
19
+ encapsulate: false
20
+ },
21
+ './routes'
22
+ ],
23
+ typescript: true
24
+ }
25
+ });
26
+ await server.ready();
27
+ await promises_1.default.writeFile('openapi.json', JSON.stringify(server.swagger(), null, 2));
28
+ await server.close();
29
+ }
30
+ clientOpenapi();
31
+ //# sourceMappingURL=client.openapi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.openapi.js","sourceRoot":"","sources":["../../utils/client.openapi.ts"],"names":[],"mappings":";;;;;AAAA,2DAA4B;AAC5B,mDAAmD;AAEnD,KAAK,UAAU,aAAa;IAC1B,MAAM,MAAM,GAAG,MAAM,IAAA,qBAAW,EAAC;QAC/B,OAAO,EAAE,oEAAoE;QAC7E,OAAO,EAAE;YACP,OAAO,EAAE,IAAI;SACd;QACD,KAAK,EAAE,KAAK;QACZ,OAAO,EAAE;YACP,KAAK,EAAE;gBACL;oBACE,IAAI,EAAE,WAAW;oBACjB,WAAW,EAAE,KAAK;iBACnB;gBACD,UAAU;aACX;YACD,UAAU,EAAE,IAAI;SACjB;KACF,CAAC,CAAA;IACF,MAAM,MAAM,CAAC,KAAK,EAAE,CAAA;IACpB,MAAM,kBAAE,CAAC,SAAS,CAAC,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;IAC7E,MAAM,MAAM,CAAC,KAAK,EAAE,CAAA;AACtB,CAAC;AAED,aAAa,EAAE,CAAA"}