Skip to content

Commit 49906bf

Browse files
committed
wip
1 parent 567fa7a commit 49906bf

File tree

5 files changed

+46
-41
lines changed

5 files changed

+46
-41
lines changed

library/Kubernetes/Common/Metrics.php

+19-19
Original file line numberDiff line numberDiff line change
@@ -124,9 +124,9 @@ public function getNodesMetrics(DateTimeInterface $startDataTime, string ...$met
124124
foreach ($metricCategories as $category) {
125125
$rs = $this->db->YieldAll(
126126
(new Select())
127-
->columns(['node.id', 'node.name', 'node_metric.timestamp', 'node_metric.value'])
127+
->columns(['node.uuid', 'node.name', 'node_metric.timestamp', 'node_metric.value'])
128128
->from('prometheus_node_metric AS node_metric')
129-
->join('node', 'node_metric.node_id = node.id')
129+
->join('node', 'node_metric.node_uuid = node.uuid')
130130
->where(
131131
'node_metric.category = ? AND node_metric.timestamp > ?',
132132
$category,
@@ -160,9 +160,9 @@ public function getNodeMetrics(DateTimeInterface $startDataTime, string $nodeId,
160160
(new Select())
161161
->columns(['node_metric.timestamp', 'node_metric.value'])
162162
->from('prometheus_node_metric AS node_metric')
163-
->join('node', 'node_metric.node_id = node.id')
163+
->join('node', 'node_metric.node_uuid = node.uuid')
164164
->where(
165-
'node_id = ? AND node_metric.category = ? AND node_metric.timestamp > ?',
165+
'node_uuid = ? AND node_metric.category = ? AND node_metric.timestamp > ?',
166166
$nodeId,
167167
$category,
168168
$startDataTime->getTimestamp() * 1000
@@ -194,17 +194,17 @@ public function getNodeMetricsCurrent(string $nodeId, string ...$metricCategorie
194194
(new Select())
195195
->columns(['node_metric.value'])
196196
->from('prometheus_node_metric AS node_metric')
197-
->join('node', 'node_metric.node_id = node.id')
197+
->join('node', 'node_metric.node_uuid = node.uuid')
198198
->join(
199199
[
200200
'latest_metrics' => (new Select())
201201
->columns(['MAX(timestamp) AS latest_timestamp'])
202202
->from('prometheus_node_metric')
203-
->where('node_id = ? AND category = ?', $nodeId, $category)
203+
->where('node_uuid = ? AND category = ?', $nodeId, $category)
204204
],
205205
'node_metric.timestamp = latest_metrics.latest_timestamp'
206206
)
207-
->where('node_id = ? AND node_metric.category = ?', $nodeId, $category),
207+
->where('node_uuid = ? AND node_metric.category = ?', $nodeId, $category),
208208
PDO::FETCH_ASSOC
209209
);
210210

@@ -223,18 +223,18 @@ public function getPodsMetricsCurrent(string ...$metricCategories): array
223223
foreach ($metricCategories as $category) {
224224
$rs = $this->db->YieldAll(
225225
(new Select())
226-
->columns(['pod.id', 'pod.name', 'pod_metric.value'])
226+
->columns(['pod.uuid', 'pod.name', 'pod_metric.value'])
227227
->from('prometheus_pod_metric AS pod_metric')
228-
->join('pod', 'pod_metric.pod_id = pod.id')
228+
->join('pod', 'pod_metric.pod_uuid = pod.uuid')
229229
->join(
230230
[
231231
'latest_metrics' => (new Select())
232-
->columns(['pod_id', 'MAX(timestamp) AS latest_timestamp'])
232+
->columns(['pod_uuid', 'MAX(timestamp) AS latest_timestamp'])
233233
->from('prometheus_pod_metric')
234234
->where('category = ?', $category)
235-
->groupBy('pod_id')
235+
->groupBy('pod_uuid')
236236
],
237-
'pod_metric.pod_id = latest_metrics.pod_id'
237+
'pod_metric.pod_uuid = latest_metrics.pod_uuid'
238238
. ' AND pod_metric.timestamp = latest_metrics.latest_timestamp'
239239
)
240240
->where('pod_metric.category = ?', $category),
@@ -260,17 +260,17 @@ public function getPodMetricsCurrent(string $podId, string ...$metricCategories)
260260
(new Select())
261261
->columns(['pod_metric.value'])
262262
->from('prometheus_pod_metric AS pod_metric')
263-
->join('pod', 'pod_metric.pod_id = pod.id')
263+
->join('pod', 'pod_metric.pod_uuid = pod.uuid')
264264
->join(
265265
[
266266
'latest_metrics' => (new Select())
267267
->columns(['MAX(timestamp) AS latest_timestamp'])
268268
->from('prometheus_pod_metric')
269-
->where('pod_id = ? AND category = ?', $podId, $category)
269+
->where('pod_uuid = ? AND category = ?', $podId, $category)
270270
],
271271
'pod_metric.timestamp = latest_metrics.latest_timestamp'
272272
)
273-
->where('pod_id = ? AND pod_metric.category = ?', $podId, $category),
273+
->where('pod_uuid = ? AND pod_metric.category = ?', $podId, $category),
274274
PDO::FETCH_ASSOC
275275
);
276276

@@ -289,9 +289,9 @@ public function getPodsMetrics(DateTimeInterface $startDateTime, string ...$metr
289289
foreach ($metricCategories as $category) {
290290
$rs = $this->db->YieldAll(
291291
(new Select())
292-
->columns(['pod.id', 'pod.name', 'pod_metric.timestamp', 'pod_metric.value'])
292+
->columns(['pod.uuid', 'pod.name', 'pod_metric.timestamp', 'pod_metric.value'])
293293
->from('prometheus_pod_metric AS pod_metric')
294-
->join('pod', 'pod_metric.pod_id = pod.id')
294+
->join('pod', 'pod_metric.pod_uuid = pod.uuid')
295295
->where(
296296
'pod_metric.category = ? AND pod_metric.timestamp > ?',
297297
$category,
@@ -329,9 +329,9 @@ public function getPodMetrics(DateTimeInterface $startDateTime, string $podId, s
329329
(new Select())
330330
->columns(['pod_metric.timestamp', 'pod_metric.value'])
331331
->from('prometheus_pod_metric AS pod_metric')
332-
->join('pod', 'pod_metric.pod_id = pod.id')
332+
->join('pod', 'pod_metric.pod_uuid = pod.uuid')
333333
->where(
334-
'pod.id = ? AND pod_metric.category = ? AND pod_metric.timestamp > ?',
334+
'pod.uuid = ? AND pod_metric.category = ? AND pod_metric.timestamp > ?',
335335
$podId,
336336
$category,
337337
$startDateTime->getTimestamp() * 1000

library/Kubernetes/Web/NodeDetail.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ protected function assemble()
4040
$metrics = new Metrics(Database::connection());
4141
$nodeMetricsPeriod = $metrics->getNodeMetrics(
4242
(new DateTime())->sub(new DateInterval('PT12H')),
43-
$this->node->id,
43+
$this->node->uuid,
4444
Metrics::NODE_CPU_USAGE,
4545
Metrics::NODE_MEMORY_USAGE
4646
);

library/Kubernetes/Web/NodeListItem.php

+24-19
Original file line numberDiff line numberDiff line change
@@ -53,29 +53,34 @@ protected function assembleMain(BaseHtmlElement $main): void
5353

5454
$metrics = new Metrics(Database::connection());
5555
$nodeMetrics = $metrics->getNodeMetricsCurrent(
56-
$this->item->id,
56+
$this->item->uuid,
5757
Metrics::NODE_CPU_USAGE,
5858
Metrics::NODE_MEMORY_USAGE
5959
);
6060

61-
$keyValue->addHtml(new VerticalKeyValue(
62-
$this->translate('CPU Usage'),
63-
new DoughnutChartStates(
64-
'chart-mini',
65-
$nodeMetrics[Metrics::NODE_CPU_USAGE],
66-
'CPU Usage',
67-
implode(', ', [Metrics::COLOR_CPU, Metrics::COLOR_WARNING, Metrics::COLOR_CRITICAL])
68-
)
69-
));
70-
$keyValue->addHtml(new VerticalKeyValue(
71-
$this->translate('Memory Usage'),
72-
new DoughnutChartStates(
73-
'chart-mini',
74-
$nodeMetrics[Metrics::NODE_MEMORY_USAGE],
75-
'Memory Usage',
76-
implode(', ', [Metrics::COLOR_MEMORY, Metrics::COLOR_WARNING, Metrics::COLOR_CRITICAL])
77-
)
78-
));
61+
if (isset($nodeMetrics[Metrics::NODE_CPU_USAGE])) {
62+
$keyValue->addHtml(new VerticalKeyValue(
63+
$this->translate('CPU Usage'),
64+
new DoughnutChartStates(
65+
'chart-mini',
66+
$nodeMetrics[Metrics::NODE_CPU_USAGE],
67+
'CPU Usage',
68+
implode(', ', [Metrics::COLOR_CPU, Metrics::COLOR_WARNING, Metrics::COLOR_CRITICAL])
69+
)
70+
));
71+
}
72+
73+
if (isset($nodeMetrics[Metrics::NODE_MEMORY_USAGE])) {
74+
$keyValue->addHtml(new VerticalKeyValue(
75+
$this->translate('Memory Usage'),
76+
new DoughnutChartStates(
77+
'chart-mini',
78+
$nodeMetrics[Metrics::NODE_MEMORY_USAGE],
79+
'Memory Usage',
80+
implode(', ', [Metrics::COLOR_MEMORY, Metrics::COLOR_WARNING, Metrics::COLOR_CRITICAL])
81+
)
82+
));
83+
}
7984

8085
$main->addHtml($keyValue);
8186
}

library/Kubernetes/Web/PodDetail.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ protected function assemble()
3939
$metrics = new Metrics(Database::connection());
4040
$podMetricsPeriod = $metrics->getPodMetrics(
4141
(new DateTime())->sub(new DateInterval('PT12H')),
42-
$this->pod->id,
42+
$this->pod->uuid,
4343
Metrics::POD_CPU_USAGE,
4444
Metrics::POD_MEMORY_USAGE
4545
);

library/Kubernetes/Web/PodListItem.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ protected function assembleMain(BaseHtmlElement $main): void
8080

8181
$metrics = new Metrics(Database::connection());
8282
$podMetricsCurrent = $metrics->getPodMetricsCurrent(
83-
$this->item->id,
83+
$this->item->uuid,
8484
Metrics::POD_CPU_REQUEST,
8585
Metrics::POD_CPU_LIMIT,
8686
Metrics::POD_CPU_USAGE_CORES,

0 commit comments

Comments
 (0)