mirror of
https://github.com/Dokploy/dokploy
synced 2025-06-26 18:27:59 +00:00
refactor: update docker stats
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
import type http from "node:http";
|
||||
import {
|
||||
docker,
|
||||
execAsync,
|
||||
getLastAdvancedStatsFile,
|
||||
recordAdvancedStats,
|
||||
validateWebSocketRequest,
|
||||
@@ -70,12 +71,16 @@ export const setupDockerStatsMonitoringSocketServer = (
|
||||
ws.close(4000, "Container not running");
|
||||
return;
|
||||
}
|
||||
const { stdout, stderr } = await execAsync(
|
||||
`docker stats ${container.Id} --no-stream --format \'{"BlockIO":"{{.BlockIO}}","CPUPerc":"{{.CPUPerc}}","Container":"{{.Container}}","ID":"{{.ID}}","MemPerc":"{{.MemPerc}}","MemUsage":"{{.MemUsage}}","Name":"{{.Name}}","NetIO":"{{.NetIO}}"}\'`,
|
||||
);
|
||||
if (stderr) {
|
||||
console.error("Docker stats error:", stderr);
|
||||
return;
|
||||
}
|
||||
const stat = JSON.parse(stdout);
|
||||
|
||||
const stats = await docker.getContainer(container.Id).stats({
|
||||
stream: false,
|
||||
});
|
||||
|
||||
await recordAdvancedStats(stats, appName);
|
||||
await recordAdvancedStats(stat, appName);
|
||||
const data = await getLastAdvancedStatsFile(appName);
|
||||
|
||||
ws.send(
|
||||
|
||||
Reference in New Issue
Block a user