diff --git a/plugins/http/http_responsecode b/plugins/http/http_responsecode new file mode 100755 index 00000000..3e119ab6 --- /dev/null +++ b/plugins/http/http_responsecode @@ -0,0 +1,68 @@ +#!/bin/sh +# -*- sh -*- + +: << =cut + +=head1 NAME + +http_responsecode - Is the site up? + +=head1 CONFIGURATION + +The following environment variables are used + + sites - Sites to check + +Configuration example + + [http_responsecode] + env.sites example.com example2.de + +=head1 AUTHOR + +Copyright (C) 2013 Thomas Heidrich + +=head1 LICENSE + +This program 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; version 2 dated June, +1991. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +=head1 MAGIC MARKERS + + #%# family=manual + +=cut + +if [ "$1" = "config" ]; then + echo 'graph_args --base 1000 -l 0 -u 511' + echo 'graph_title HTTP Response Codes' + echo 'graph_vlabel Code' + echo 'graph_category network' + echo 'graph_info This graph shows HTTP response code statistics.' + echo 'graph_printf %3.0lf' + for site in $sites; do + siteid=`echo $site | sed 's/[^a-z]*//g'` + echo "$siteid.label $site" + echo "$siteid.info HTTP response code statistics for $site." + echo "$siteid.critical 99:399"; + done + exit 0 +fi + +for site in $sites; do + export siteid=`echo $site | sed 's/[^a-z]*//g'` + echo -n "$siteid.value " + curl --write-out %{http_code} --silent --output /dev/null ${site} + echo +done