[修改]优化了widget的读取显示,能够动态显示
This commit is contained in:
@@ -15,19 +15,22 @@ class PrometheusMemory extends ChartWidget
|
||||
{
|
||||
$prometheus = new PrometheusService();
|
||||
|
||||
|
||||
// 查询过去 1 分钟内的每 6 秒一个数据点
|
||||
$memoryUsageRange = $prometheus->queryRange(
|
||||
'(1 - (avg_over_time(node_memory_MemAvailable_bytes[1h]) / avg_over_time(node_memory_MemTotal_bytes[1h]))) * 100',
|
||||
now()->subHour()->timestamp,
|
||||
'(1 - (avg_over_time(node_memory_MemAvailable_bytes[1m]) / avg_over_time(node_memory_MemTotal_bytes[1m]))) * 100',
|
||||
now()->subMinutes(1)->timestamp,
|
||||
now()->timestamp,
|
||||
360 // 每6分钟一个数据点
|
||||
6 // 每6秒一个数据点
|
||||
);
|
||||
|
||||
$labels = [];
|
||||
$data = [];
|
||||
|
||||
if (!empty($memoryUsageRange['data']['result'][0]['values'])) {
|
||||
date_default_timezone_set('Asia/Shanghai');
|
||||
foreach ($memoryUsageRange['data']['result'][0]['values'] as $index => $value) {
|
||||
$labels[] = 'Point ' . ($index + 1);
|
||||
$labels[] = date('H:i:s', $value[0]); // 格式化时间戳为小时:分钟:秒
|
||||
$data[] = round($value[1], 2); // 取出每个时间点的内存使用率,并保留两位小数
|
||||
}
|
||||
}
|
||||
@@ -41,6 +44,7 @@ class PrometheusMemory extends ChartWidget
|
||||
'borderColor' => '#4CAF50',
|
||||
'backgroundColor' => 'rgba(76, 175, 80, 0.2)',
|
||||
'fill' => true,
|
||||
'tension' => 0.4,
|
||||
],
|
||||
],
|
||||
];
|
||||
|
||||
Reference in New Issue
Block a user