Created
May 5, 2015 11:30
-
-
Save miguelcnf/3830aa63658adc936130 to your computer and use it in GitHub Desktop.
Adapted from http://en.proft.me/media/linux/collectd_rrdtool.txt.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env bash | |
###### | |
# CPU | |
###### | |
if [ $# -lt 2 ] | |
then | |
echo "Missing arguments" | |
echo "Usage:" | |
echo "rrdtool-collectd-graphs.sh <save_dir> <rrd_dir>" | |
exit 1 | |
fi | |
rrdtool_cmd=/usr/bin/rrdtool | |
save_dir=$1/ | |
rrd_dir=$2/ | |
if [ ! -d $save_dir ] | |
then | |
mkdir -p $save_dir | |
fi | |
$rrdtool_cmd graph "${save_dir}cpu_day.png" \ | |
-e now \ | |
-s 'end - 24 hours' \ | |
-S 60 \ | |
--title 'CPU usage (Day)' \ | |
--vertical-label 'Percents' \ | |
--imgformat PNG \ | |
--slope-mode \ | |
--lower-limit 0 \ | |
--upper-limit 100 \ | |
--rigid \ | |
-E \ | |
-i \ | |
--color SHADEA#FFFFFF \ | |
--color SHADEB#FFFFFF \ | |
--color BACK#CCCCCC \ | |
-w 600 \ | |
-h 150 \ | |
--interlaced \ | |
DEF:a="${rrd_dir}cpu-0/cpu-idle.rrd:value:MAX" \ | |
DEF:b="${rrd_dir}cpu-0/cpu-system.rrd:value:MAX" \ | |
DEF:c="${rrd_dir}cpu-0/cpu-user.rrd:value:MAX" \ | |
LINE2:b#2cc320: \ | |
AREA:b#54eb48:System \ | |
LINE2:c#e7ad4a: \ | |
AREA:c#ebd648:User | |
$rrdtool_cmd graph "${save_dir}cpu_week.png" \ | |
-e now \ | |
-s 'end - 7 days' \ | |
-S 60 \ | |
--title 'CPU usage (week)' \ | |
--vertical-label 'Percents' \ | |
--imgformat PNG \ | |
--slope-mode \ | |
--lower-limit 0 \ | |
--upper-limit 100 \ | |
--rigid \ | |
-E \ | |
-i \ | |
--color SHADEA#FFFFFF \ | |
--color SHADEB#FFFFFF \ | |
--color BACK#CCCCCC \ | |
-w 600 \ | |
-h 150 \ | |
--interlaced \ | |
DEF:a="${rrd_dir}cpu-0/cpu-idle.rrd:value:MAX" \ | |
DEF:b="${rrd_dir}cpu-0/cpu-system.rrd:value:MAX" \ | |
DEF:c="${rrd_dir}cpu-0/cpu-user.rrd:value:MAX" \ | |
LINE2:b#2cc320: \ | |
AREA:b#54eb48:System \ | |
LINE2:c#e7ad4a: \ | |
AREA:c#ebd648:User | |
######### | |
# Network | |
######### | |
$rrdtool_cmd graph "${save_dir}network_day.png" \ | |
-e now \ | |
-s 'end - 24 hours' \ | |
-S 60 \ | |
--title 'Traffic on network: eth (100Mb/s) (day)' \ | |
--vertical-label 'Mbytes' \ | |
--imgformat PNG \ | |
--slope-mode \ | |
--lower-limit 0 \ | |
--upper-limit 10000000 \ | |
--rigid \ | |
-E \ | |
-i \ | |
--color SHADEA#FFFFFF \ | |
--color SHADEB#FFFFFF \ | |
--color BACK#CCCCCC \ | |
-w 600 \ | |
-h 150 \ | |
--interlaced \ | |
DEF:a="${rrd_dir}interface-eth0/if_octets.rrd:tx:MAX" \ | |
DEF:b="${rrd_dir}interface-eth0/if_octets.rrd:rx:MAX" \ | |
DEF:c="${rrd_dir}interface-eth0/if_errors.rrd:tx:MAX" \ | |
AREA:a#4169E1:Tx \ | |
LINE2:b#2cc320: \ | |
AREA:b#54eb48:Rx \ | |
LINE1:c#FF0000:Errors | |
$rrdtool_cmd graph "${save_dir}network_week.png" \ | |
-e now \ | |
-s 'end - 7 days' \ | |
-S 60 \ | |
--title 'Traffic on network: eth (100Mb/s) (week)' \ | |
--vertical-label 'Mbytes' \ | |
--imgformat PNG \ | |
--slope-mode \ | |
--lower-limit 0 \ | |
--upper-limit 10000000 \ | |
--rigid \ | |
-E \ | |
-i \ | |
--color SHADEA#FFFFFF \ | |
--color SHADEB#FFFFFF \ | |
--color BACK#CCCCCC \ | |
-w 600 \ | |
-h 150 \ | |
--interlaced \ | |
DEF:a="${rrd_dir}interface-lo/if_octets.rrd:tx:MAX" \ | |
DEF:b="${rrd_dir}interface-lo/if_octets.rrd:rx:MAX" \ | |
DEF:c="${rrd_dir}interface-lo/if_errors.rrd:tx:MAX" \ | |
AREA:a#4169E1:Tx \ | |
LINE2:b#2cc320: \ | |
AREA:b#54eb48:Rx \ | |
LINE1:c#FF0000:Errors | |
##### | |
# RAM | |
##### | |
$rrdtool_cmd graph "${save_dir}ram_day.png" \ | |
-e now \ | |
-s 'end - 24 hours' \ | |
-S 60 \ | |
--title 'MEMORY usage (day)' \ | |
--vertical-label 'Gbyte' \ | |
--imgformat PNG \ | |
--slope-mode \ | |
--lower-limit 0 \ | |
--upper-limit 3000000000 \ | |
--rigid \ | |
-E \ | |
-i \ | |
--color SHADEA#FFFFFF \ | |
--color SHADEB#FFFFFF \ | |
--color BACK#CCCCCC \ | |
-w 600 \ | |
-h 150 \ | |
--interlaced \ | |
DEF:a="${rrd_dir}memory/memory-buffered.rrd:value:MAX" \ | |
DEF:b="${rrd_dir}memory/memory-cached.rrd:value:MAX" \ | |
DEF:c="${rrd_dir}memory/memory-free.rrd:value:MAX" \ | |
DEF:d="${rrd_dir}memory/memory-used.rrd:value:MAX" \ | |
LINE1:a#6959CD:buffered \ | |
AREA:b#00FF00:cache \ | |
LINE2:c#006400: \ | |
AREA:c#00CD66:free \ | |
AREA:d#FF1493:used | |
$rrdtool_cmd graph "${save_dir}ram_week.png" \ | |
-e now \ | |
-s 'end - 7 days' \ | |
-S 60 \ | |
--title 'MEMORY usage (week)' \ | |
--vertical-label 'Gbyte' \ | |
--imgformat PNG \ | |
--slope-mode \ | |
--lower-limit 0 \ | |
--upper-limit 3000000000 \ | |
--rigid \ | |
-E \ | |
-i \ | |
--color SHADEA#FFFFFF \ | |
--color SHADEB#FFFFFF \ | |
--color BACK#CCCCCC \ | |
-w 600 \ | |
-h 150 \ | |
--interlaced \ | |
DEF:a="${rrd_dir}memory/memory-buffered.rrd:value:MAX" \ | |
DEF:b="${rrd_dir}memory/memory-cached.rrd:value:MAX" \ | |
DEF:c="${rrd_dir}memory/memory-free.rrd:value:MAX" \ | |
DEF:d="${rrd_dir}memory/memory-used.rrd:value:MAX" \ | |
LINE1:a#6959CD:buffered \ | |
AREA:b#00FF00:cache \ | |
LINE2:c#006400: \ | |
AREA:c#00CD66:free \ | |
AREA:d#FF1493:used | |
##### | |
# DF | |
##### | |
$rrdtool_cmd graph "${save_dir}df_week.png" \ | |
-e now \ | |
-s 'end - 7 days' \ | |
-S 60 \ | |
--title "HDD USAGE: week" \ | |
--vertical-label "Bytes" \ | |
--imgformat PNG \ | |
--slope-mode \ | |
--lower-limit 0 \ | |
--upper-limit 130000000000 \ | |
--rigid \ | |
-E \ | |
-i \ | |
--color SHADEA#FFFFFF \ | |
--color SHADEB#FFFFFF \ | |
--color BACK#CCCCCC \ | |
-w 600 \ | |
-h 150 \ | |
--interlaced \ | |
DEF:a="${rrd_dir}df-root/df_complex-free.rrd:value:MAX" \ | |
DEF:b="${rrd_dir}df-root/df_complex-reserved.rrd:value:MAX" \ | |
DEF:c="${rrd_dir}df-root/df_complex-used.rrd:value:MAX" \ | |
LINE1:c#e7ad4a: \ | |
AREA:c#ebd648:Used \ | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment