mirror of
https://github.com/blakeblackshear/frigate.git
synced 2026-02-05 18:55:23 +03:00
add cpu average
This commit is contained in:
parent
f12a9ccf8c
commit
6fc6f20407
@ -803,6 +803,26 @@ def get_cpu_stats() -> dict[str, dict]:
|
|||||||
pid = process.info["pid"]
|
pid = process.info["pid"]
|
||||||
try:
|
try:
|
||||||
cpu_percent = process.info["cpu_percent"]
|
cpu_percent = process.info["cpu_percent"]
|
||||||
|
|
||||||
|
with open(f"/proc/{pid}/stat", "r") as f:
|
||||||
|
stats = f.readline().split()
|
||||||
|
utime = int(stats[13])
|
||||||
|
stime = int(stats[14])
|
||||||
|
starttime = int(stats[21])
|
||||||
|
|
||||||
|
with open("/proc/uptime") as f:
|
||||||
|
system_uptime_sec = int(float(f.read().split()[0]))
|
||||||
|
|
||||||
|
clk_tck = os.sysconf(os.sysconf_names["SC_CLK_TCK"])
|
||||||
|
|
||||||
|
process_utime_sec = utime // clk_tck
|
||||||
|
process_stime_sec = stime // clk_tck
|
||||||
|
process_starttime_sec = starttime // clk_tck
|
||||||
|
|
||||||
|
process_elapsed_sec = system_uptime_sec - process_starttime_sec
|
||||||
|
process_usage_sec = process_utime_sec + process_stime_sec
|
||||||
|
cpu_average_usage = process_usage_sec * 100 // process_elapsed_sec
|
||||||
|
|
||||||
with open(f"/proc/{pid}/statm", "r") as f:
|
with open(f"/proc/{pid}/statm", "r") as f:
|
||||||
mem_stats = f.readline().split()
|
mem_stats = f.readline().split()
|
||||||
mem_res = int(mem_stats[1]) * os.sysconf("SC_PAGE_SIZE") / 1024
|
mem_res = int(mem_stats[1]) * os.sysconf("SC_PAGE_SIZE") / 1024
|
||||||
@ -814,6 +834,7 @@ def get_cpu_stats() -> dict[str, dict]:
|
|||||||
|
|
||||||
usages[pid] = {
|
usages[pid] = {
|
||||||
"cpu": str(cpu_percent),
|
"cpu": str(cpu_percent),
|
||||||
|
"cpu_average": str(round(cpu_average_usage, 2)),
|
||||||
"mem": f"{mem_pct}",
|
"mem": f"{mem_pct}",
|
||||||
}
|
}
|
||||||
except:
|
except:
|
||||||
|
|||||||
@ -359,12 +359,14 @@ export default function System() {
|
|||||||
<Thead>
|
<Thead>
|
||||||
<Tr>
|
<Tr>
|
||||||
<Th>CPU %</Th>
|
<Th>CPU %</Th>
|
||||||
|
<Th>AvgCPU %</Th>
|
||||||
<Th>Memory %</Th>
|
<Th>Memory %</Th>
|
||||||
</Tr>
|
</Tr>
|
||||||
</Thead>
|
</Thead>
|
||||||
<Tbody>
|
<Tbody>
|
||||||
<Tr key="ffmpeg" index="0">
|
<Tr key="ffmpeg" index="0">
|
||||||
<Td>{cpu_usages[processes[process]['pid']]?.['cpu'] || '- '}%</Td>
|
<Td>{cpu_usages[processes[process]['pid']]?.['cpu'] || '- '}%</Td>
|
||||||
|
<Td>{cpu_usages[processes[process]['pid']]?.['cpu_average'] || '- '}%</Td>
|
||||||
<Td>{cpu_usages[processes[process]['pid']]?.['mem'] || '- '}%</Td>
|
<Td>{cpu_usages[processes[process]['pid']]?.['mem'] || '- '}%</Td>
|
||||||
</Tr>
|
</Tr>
|
||||||
</Tbody>
|
</Tbody>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user