Donnerstag, 12. März 2015

Homematic steuert und liefert Informationen

Jetzt möchte ich die Informationen die ich bekomme auch auswerten. Aufgrund der maximalen flexibilität habe ich mich für das Tool Splunk entschieden.
Splunk wird nach Datenvolumen lizensiert, eine 500 MB am Tag Lizenz ist konstenlos verfügbar. Das reicht für die Nutzung im privaten völlig aus.

Aktuell habe ich einen ständig laufenden PC, daher habe ich mich für die Variante syslog entschieden.

Auf der CCU erzeugte ich syslog Events die dann in Splunk weiter visualisiert werden können. Da Splunk eine automatische key value erkennung hat, sind die Informationen die ich sende wie folgt aufgebaut.

Mar 13 16:29:15 192.168.188.5 Mar 13 16:29:14 <someone>: [SOURCE=VIESSMANN SOURCETYPE=TEMPERATURE ORT=Heizung NAME=Vorlauf VALUE=38.400002]

SOURCE und SOURCETYPE  werden in Splunk weiterverwendet. Die anderen Werte sind selbstsprechend.

Da ich dann Probleme mit der CCU bekommen habe, zu viele Systemaufrufe (trotz cuxd), habe ich es umgestellt das ich die Events per WriteLine im Script erzeuge und dann aber die syslog Aufrufe am Server selber durchführe.


 string loggerCommand="logger -u /tmp/ignored --server 192.168.188.44 --port 5000 '";  
 real sensor = dom.GetObject("BidCos-RF.JEQ0551861:1.TEMPERATURE").Value();  
 string event = "[SOURCE=CCU SOURCETYPE=TEMPERATURE ORT=Wohnzimmer NAME=Temperatur VALUE="#sensor#"]";  
 WriteLine(loggerCommand #event#"'");  
 sensor = dom.GetObject("BidCos-RF.JEQ0551861:1.HUMIDITY").Value();  
 event = "[SOURCE=CCU SOURCETYPE=HUMIDITY ORT=Wohnzimmer NAME=Luftfeuchtigkeit VALUE="#sensor#"]";  
 WriteLine(loggerCommand #event#"'");  


Keine Kommentare:

Kommentar veröffentlichen