/usr/share/check_mk/pnp-templates/check_mk-df.php is in check-mk-server 1.1.12-1ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 | <?php
# +------------------------------------------------------------------+
# | ____ _ _ __ __ _ __ |
# | / ___| |__ ___ ___| | __ | \/ | |/ / |
# | | | | '_ \ / _ \/ __| |/ / | |\/| | ' / |
# | | |___| | | | __/ (__| < | | | | . \ |
# | \____|_| |_|\___|\___|_|\_\___|_| |_|_|\_\ |
# | |
# | Copyright Mathias Kettner 2010 mk@mathias-kettner.de |
# +------------------------------------------------------------------+
#
# This file is part of Check_MK.
# The official homepage is at http://mathias-kettner.de/check_mk.
#
# check_mk is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
# the Free Software Foundation in version 2. check_mk is distributed
# in the hope that it will be useful, but WITHOUT ANY WARRANTY; with-
# out even the implied warranty of MERCHANTABILITY or FITNESS FOR A
# PARTICULAR PURPOSE. See the GNU General Public License for more de-
# ails. You should have received a copy of the GNU General Public
# License along with GNU Make; see the file COPYING. If not, write
# to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
# Boston, MA 02110-1301 USA.
setlocale(LC_ALL, "POSIX");
# RRDtool Options
#$servicedes=$NAGIOS_SERVICEDESC
$fsname = str_replace("_", "/", substr($servicedesc, 3));
$fstitle = $fsname;
# Hack for windows: replace C// with C:\
if (strlen($fsname) == 3 && substr($fsname, 1, 2) == '//') {
$fsname = $fsname[0] . "\:\\\\";
$fstitle = $fsname[0] . ":\\";
}
$sizegb = sprintf("%.1f", $MAX[1] / 1024.0);
$maxgb = $MAX[1] / 1024.0;
$warngb = $WARN[1] / 1024.0;
$critgb = $CRIT[1] / 1024.0;
$warngbtxt = sprintf("%.1f", $warngb);
$critgbtxt = sprintf("%.1f", $critgb);
$opt[1] = "--vertical-label GB -l 0 -u $maxgb --title '$hostname: Filesystem $fstitle ($sizegb GB)' ";
# First graph show current filesystem usage
$def[1] = "DEF:mb=$RRDFILE[1]:$DS[1]:MAX ";
$def[1] .= "CDEF:var1=mb,1024,/ ";
$def[1] .= "AREA:var1#00ffc6:\"used space on $fsname\\n\" ";
$def[1] .= "LINE1:var1#226600: ";
$def[1] .= "HRULE:$maxgb#003300:\"Size ($sizegb GB) \" ";
$def[1] .= "HRULE:$warngb#ffff00:\"Warning at $warngbtxt GB \" ";
$def[1] .= "HRULE:$critgb#ff0000:\"Critical at $critgbtxt GB \\n\" ";
$def[1] .= "GPRINT:var1:LAST:\"current\: %6.2lf GB\" ";
$def[1] .= "GPRINT:var1:MAX:\"max\: %6.2lf GB \" ";
$def[1] .= "GPRINT:var1:AVERAGE:\"avg\: %6.2lf GB\" ";
# Second graph is optional and shows trend
if (isset($DS[2])) {
$size_mb_per_hours = floatval($MAX[3]); // this is size_mb / range(hours)
$size_mb = floatval($MAX[1]);
$hours = 1.0 / ($size_mb_per_hours / $size_mb);
$range = sprintf("%.0fh", $hours);
// Current growth / shrinking
$opt[2] = "--vertical-label '+/- MB / $range' -l -1 -u 1 -X0 --title '$hostname: Growth of $fstitle' ";
$def[2] = "DEF:growth_max=$RRDFILE[2]:$DS[2]:MAX ";
$def[2] .= "DEF:growth_min=$RRDFILE[2]:$DS[2]:MIN ";
$def[2] .= "DEF:trend=$RRDFILE[3]:$DS[3]:AVERAGE ";
$def[2] .= "CDEF:growth_pos=growth_max,0,MAX ";
$def[2] .= "CDEF:growth_neg=growth_min,0,MIN ";
$def[2] .= "CDEF:growth_minabs=0,growth_min,- ";
$def[2] .= "CDEF:growth=growth_minabs,growth_max,MAX ";
$def[2] .= "HRULE:0#c0c0c0 ";
$def[2] .= "AREA:growth_pos#3060f0:\"Grow\" ";
$def[2] .= "AREA:growth_neg#30f060:\"Shrink \" ";
$def[2] .= "GPRINT:growth:LAST:\"Current\: %+9.2lfMB / $range\" ";
$def[2] .= "GPRINT:growth:MAX:\"Max\: %+9.2lfMB / $range\\n\" ";
// Trend
$opt[3] = "--vertical-label '+/- MB / $range' -l -1 -u 1 -X0 --title '$hostname: Trend for $fstitle' ";
$def[3] = "DEF:trend=$RRDFILE[3]:$DS[3]:AVERAGE ";
$def[3] .= "HRULE:0#c0c0c0 ";
$def[3] .= "LINE1:trend#000000:\"Trend\:\" ";
$def[3] .= "GPRINT:trend:LAST:\"%+7.2lf MB/$range\" ";
if ($WARN[3]) {
$warn_mb = sprintf("%.2fMB", $WARN[3]);
$def[3] .= "LINE1:$WARN[3]#ffff00:\"Warn\: $warn_mb / $range\" ";
}
if ($CRIT[3]) {
$crit_mb = sprintf("%.2fMB", $CRIT[3]);
$def[3] .= "LINE1:$CRIT[3]#ff0000:\"Crit\: $crit_mb / $range\" ";
}
$def[3] .= "COMMENT:\"\\n\" ";
}
?>
|