Monitor update
Deploy / deploy (push) Successful in 8s

This commit is contained in:
2026-08-31 22:42:40 +05:00
parent 47ea18d020
commit 28702bd029
13 changed files with 434 additions and 217 deletions
+3 -2
View File
@@ -1,7 +1,8 @@
#!/bin/sh
# Суммарная загрузка CPU в процентах 0-100 (mac + linux).
# CPU: процент загрузки + число ядер. Linux + mac.
# Контракт мониторов: 1-я строка — процент, дальше — key=value.
case "$(uname)" in
Darwin) cores=$(sysctl -n hw.ncpu) ;;
*) cores=$(nproc) ;;
esac
ps -A -o %cpu | awk -v c="$cores" '{s+=$1} END {printf "%d", s/c}'
ps -A -o %cpu | awk -v c="$cores" '{s+=$1} END {printf "%d\nядер=%d\n", s/c, c}'
+11 -4
View File
@@ -1,6 +1,13 @@
#!/bin/sh
# Заполненность корневого раздела в процентах (linux + mac).
# Диск /: процент + занято/свободно/всего. Linux + mac.
# Контракт мониторов: 1-я строка — процент, дальше — key=value.
case "$(uname)" in
Darwin) df -k / | awk 'NR==2 {print $5}' | tr -d '%' ;;
*) df -Pk / | awk 'NR==2 {print $5}' | tr -d '%' ;;
esac
Darwin) df -k / ;;
*) df -Pk / ;;
esac | awk 'NR==2 {
pct = $5; sub(/%/, "", pct)
printf "%d\n", pct
printf "занято=%.1f ГБ\n", $3/1048576
printf "свободно=%.1f ГБ\n", $4/1048576
printf "всего=%.1f ГБ\n", $2/1048576
}'
+14 -2
View File
@@ -1,3 +1,15 @@
#!/bin/sh
# Заполненность RAM в процентах: ps %mem — уже доля от общей памяти, суммируем как есть (mac + linux).
ps -A -o %mem | awk '{s+=$1} END {printf "%d", s}'
# RAM: процент занятого + строка занято/всего. Linux + mac.
# Контракт мониторов: 1-я строка — процент, дальше — key=value.
# ponytail: used = сумма RSS процессов (без кэшей ОС) — на mac «доступно» дёшево не получить;
# если нужен точный linux used — /proc/meminfo MemAvailable.
case "$(uname)" in
Darwin) total_kb=$(( $(sysctl -n hw.memsize) / 1024 )) ;;
*) total_kb=$(awk '/MemTotal/ {print $2}' /proc/meminfo) ;;
esac
ps -A -o rss=,%mem= | awk -v t="$total_kb" '
{rss+=$1; mem+=$2}
END {
printf "%d\n", mem
printf "занято=%.1f / %.1f ГБ\n", rss/1048576, t/1048576
}'