6 нояб. 2010 г.

График загрузки процессора

Будем использовать sar из пакета sysstat и gnuplot.
sar автоматически создает задания для cron, поэтому просто допишем к существующему сбору статистики в /etc/cron.hourly/ свой скрипт, который вызывает sar, обрабатывает его вывод и строит по полученным данным график.


/etc/cron.hourly/plot_cpu_usage
#!/bin/sh
/usr/bin/env LANG=C sar | /usr/bin/head -n-1 | /usr/bin/tail -n+4 | /bin/awk '{print $1, 100.0 - $8}' > /srv/http/cpu/cpu.dat
/usr/bin/gnuplot /srv/http/cpu/cpu.gpl
Пример содержимого /srv/http/cpu/cpu.dat:
00:17:02 16.75
00:27:02 15.06
00:37:02 14.18
00:47:02 14.52
00:57:02 16.04
01:07:02 15.9
/srv/http/cpu/cpu.gpl
set terminal pngcairo enhanced solid lw 1 size 800, 600
set encoding utf8
set xlabel "time, HH:MM"
set ylabel "CPU usage, %"
set yrange [0:100]
set ytics 10
set output "/srv/http/cpu/cpu_util.png"
set xdata time
set timefmt "%H:%M:%S"
set format x "%H:%M"
plot "/srv/http/cpu/cpu.dat" using 1:2 with lines notitle

Комментариев нет :

Отправить комментарий