Skip to content

Commit 1b6d872

Browse files
committed
Improved memory chart. Now it shows used, free and swap usage
1 parent 5b52823 commit 1b6d872

File tree

1 file changed

+23
-4
lines changed

1 file changed

+23
-4
lines changed

bin/v-update-sys-rrd-mem

Lines changed: 23 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -36,11 +36,18 @@ if [ ! -d "$RRD/mem" ]; then
3636
fi
3737

3838
# Checking database
39+
if [ -e "$RRD/mem/mem.rrd" ]; then
40+
rrd_check=$(rrdtool info $RRD/mem/mem.rrd |grep "FREE")
41+
if [ -z "$rrd_check" ]; then
42+
rm -f $RRD/mem/mem.rrd
43+
fi
44+
fi
3945
if [ ! -e "$RRD/mem/mem.rrd" ]; then
4046
# Adding database
4147
rrdtool create $RRD/mem/mem.rrd --step $RRD_STEP \
4248
DS:RAM:GAUGE:600:U:U \
4349
DS:SWAP:GAUGE:600:U:U \
50+
DS:FREE:GAUGE:600:U:U \
4451
RRA:AVERAGE:0.5:1:600 \
4552
RRA:AVERAGE:0.5:6:700 \
4653
RRA:AVERAGE:0.5:24:775 \
@@ -54,15 +61,22 @@ fi
5461
# Parsing data
5562
if [ "$period" = 'daily' ]; then
5663
mem=$(free -m)
57-
ram=$(echo "$mem" |awk '{print $3}'|head -n2 |tail -n1)
64+
used_ram=$(echo "$mem" |awk '{print $3}'|head -n2 |tail -n1)
65+
used_cache=$(echo "$mem" |awk '{print $3}'|head -n3 |tail -n1)
66+
used=$((used_ram + used_cache))
67+
68+
free_ram=$(echo "$mem" |awk '{print $4}'|head -n2 |tail -n1)
69+
free_cache=$(echo "$mem" |awk '{print $4}'|head -n3 |tail -n1)
70+
free=$((free_ram + free_cache))
71+
5872
swap=$(echo "$mem" |awk '{print $3}'|tail -n1)
5973

6074
# Updating rrd
61-
rrdtool update $RRD/mem/mem.rrd N:$ram:$swap
75+
rrdtool update $RRD/mem/mem.rrd N:$used:$swap:$free
6276
fi
6377

6478
# Updating rrd graph
65-
rrdtool graph $RRD/mem/$period-mem.png \
79+
rrdtool graph $RRD/mem/$period-mem.png \
6680
--imgformat PNG \
6781
--height="120" \
6882
--width="440" \
@@ -81,6 +95,7 @@ rrdtool graph $RRD/mem/$period-mem.png \
8195
-c "ARROW#FFFFFF" \
8296
DEF:ram=$RRD/mem/mem.rrd:RAM:AVERAGE \
8397
DEF:swap=$RRD/mem/mem.rrd:SWAP:AVERAGE \
98+
DEF:free=$RRD/mem/mem.rrd:SWAP:AVERAGE \
8499
COMMENT:'\r' \
85100
AREA:ram#867995:"RAM "\
86101
GPRINT:ram:'LAST: Current\:''%8.0lf' \
@@ -89,7 +104,11 @@ rrdtool graph $RRD/mem/$period-mem.png \
89104
LINE1:swap#f57900:"SWAP" \
90105
GPRINT:swap:'LAST:Current\:''%8.0lf' \
91106
GPRINT:swap:'MIN:Min\:''%8.0lf' \
92-
GPRINT:swap:'MAX:Max\:''%8.0lf\j' &>/dev/null; result=$?
107+
GPRINT:swap:'MAX:Max\:''%8.0lf\j'\
108+
AREA:free#1c74cd:"FREE" \
109+
GPRINT:free:'LAST: Current\:''%8.0lf' \
110+
GPRINT:free:'MIN: Min\:''%8.0lf' \
111+
GPRINT:free:'MAX: Max\:''%8.0lf\j' &>/dev/null; result=$?
93112

94113

95114
#----------------------------------------------------------#

0 commit comments

Comments
 (0)