diff options
| author | makefu <github@syntax-fehler.de> | 2012-10-05 06:46:27 +0200 | 
|---|---|---|
| committer | makefu <github@syntax-fehler.de> | 2012-10-05 06:46:27 +0200 | 
| commit | 6c89839b7fc344608e61c8916ac9d9925fa98d14 (patch) | |
| tree | e316b8121f4880491659dc3cb8851de7762e58a9 /Monitoring/nagios/plugins/check_temper | |
| parent | 957e2d7469b0e3d88e06b6a15e91478efc63cd62 (diff) | |
Monitoring/\* --> nagios/
Diffstat (limited to 'Monitoring/nagios/plugins/check_temper')
| -rwxr-xr-x | Monitoring/nagios/plugins/check_temper | 31 | 
1 files changed, 31 insertions, 0 deletions
| diff --git a/Monitoring/nagios/plugins/check_temper b/Monitoring/nagios/plugins/check_temper new file mode 100755 index 00000000..95191026 --- /dev/null +++ b/Monitoring/nagios/plugins/check_temper @@ -0,0 +1,31 @@ +#!/usr/bin/python +# -*- coding: utf-8 -*- +import sys +import urllib + +if len(sys.argv) < 2 or '-h' in sys.argv:  +  print ("?? usage: %s URL [high-val field 1] [high field 2] ..." % sys.argv[0]) +  print ("??   Server reply should look like this: '2011-07-11T09:00 50.0 40.0'") +  exit(3) + +URL=sys.argv[1] +thresholds=[ float(i) for i in sys.argv[2:]] + +ecode=0 +try: +  ret = urllib.urlopen(URL).read().split() +  date = ret[0] +  temps = [float(i) for i in ret[1:]] +  print ("** %s : %s" % (date,' '.join([str(i)+"°C" for i in temps]))) +  if len(temps) != len(thresholds): +    raise Exception("Number of temps != number of given thresholds") +  for i,temp in enumerate(temps): +    if temp > thresholds[i]: +      print ("!! %.2f°°C > %.2f°C (field %d)!" %(temp,thresholds[i],i)) +      ecode=2 +except Exception,e: +  print("!! Something awful happened: "+str(e)) +  exit (1) +if not ecode: +  print ("** Everything is fine!") +exit(ecode) | 
