[修改]优化了widget的读取显示,能够动态显示

This commit is contained in:
makotocc0107
2024-08-28 16:54:37 +08:00
committed by Coding
parent d910dbb01c
commit a6dd4ad277
2 changed files with 21 additions and 12 deletions

21
.idea/workspace.xml generated
View File

@@ -4,13 +4,9 @@
<option name="autoReloadType" value="SELECTIVE" />
</component>
<component name="ChangeListManager">
<list default="true" id="596fb1a0-d6fb-4db8-a922-13b01593ce79" name="更改" comment="[修改]修改美化了了widget样式折线图展示">
<list default="true" id="596fb1a0-d6fb-4db8-a922-13b01593ce79" name="更改" comment="[修改]删除了updatetoetcd的page页面、widget排布">
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/management-panel/app/Filament/Pages/UpdateToEtcd.php" beforeDir="false" />
<change beforePath="$PROJECT_DIR$/management-panel/app/Filament/Widgets/PrometheusMemory.php" beforeDir="false" afterPath="$PROJECT_DIR$/management-panel/app/Filament/Widgets/PrometheusMemory.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/management-panel/app/Filament/Widgets/UpdateConfigWidget.php" beforeDir="false" afterPath="$PROJECT_DIR$/management-panel/app/Filament/Widgets/UpdateConfigWidget.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/management-panel/app/Providers/Filament/AdminPanelProvider.php" beforeDir="false" afterPath="$PROJECT_DIR$/management-panel/app/Providers/Filament/AdminPanelProvider.php" afterDir="false" />
<change beforePath="$PROJECT_DIR$/management-panel/resources/views/filament/pages/update-to-etcd.blade.php" beforeDir="false" />
</list>
<option name="SHOW_DIALOG" value="false" />
<option name="HIGHLIGHT_CONFLICTS" value="true" />
@@ -261,7 +257,7 @@
<workItem from="1724743649380" duration="22000" />
<workItem from="1724743707590" duration="5840000" />
<workItem from="1724806979170" duration="149000" />
<workItem from="1724808563307" duration="14880000" />
<workItem from="1724808563307" duration="17382000" />
</task>
<task id="LOCAL-00001" summary="[增添]添加注册">
<option name="closed" value="true" />
@@ -383,7 +379,15 @@
<option name="project" value="LOCAL" />
<updated>1724831975781</updated>
</task>
<option name="localTasksCounter" value="16" />
<task id="LOCAL-00016" summary="[修改]删除了updatetoetcd的page页面、widget排布">
<option name="closed" value="true" />
<created>1724832839806</created>
<option name="number" value="00016" />
<option name="presentableId" value="LOCAL-00016" />
<option name="project" value="LOCAL" />
<updated>1724832839806</updated>
</task>
<option name="localTasksCounter" value="17" />
<servers />
</component>
<component name="TypeScriptGeneratedFilesManager">
@@ -444,6 +448,7 @@
<MESSAGE value="[修改]修改文本 调整了布局" />
<MESSAGE value="[增添]添加了Prometheus服务、对应的widget展示待美化" />
<MESSAGE value="[修改]修改美化了了widget样式折线图展示" />
<option name="LAST_COMMIT_MESSAGE" value="[修改]修改美化了了widget样式折线图展示" />
<MESSAGE value="[修改]删除了updatetoetcd的page页面、widget排布" />
<option name="LAST_COMMIT_MESSAGE" value="[修改]删除了updatetoetcd的page页面、widget排布" />
</component>
</project>

View File

@@ -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,
],
],
];