#!/usr/bin/python import sys import Adafruit_DHT import os from munin import MuninPlugin class DHT11Plugin(MuninPlugin): title = "DHT11 Humidity" args = "--base 1000 -l 0" vlabel = "percent" scale = False category = "sensors" @property def fields(self): warning = os.environ.get('hum_warn', 90) critical = os.environ.get('hum_crit', 95) return [("hum", dict( label = "Humidity", info = 'Humidity as reported by a DHT11 sensor', type = "GAUGE", min = "0", max = "100", warning = str(warning), critical = str(critical)))] def execute(self): pin = int(os.environ.get('dht11_pin', '2')) humidity, temperature = Adafruit_DHT.read_retry(Adafruit_DHT.DHT11, pin) return dict(hum=humidity) if __name__ == "__main__": DHT11Plugin().run()