Skip to content

Instantly share code, notes, and snippets.

@bkeifer
bkeifer / Logstash.groovy
Created February 9, 2016 15:52
Logstash
def log(msg) {
log.debug(msg)
if (useLogstash) {
def dateNow = new Date()
def isoDateNow = dateNow.format("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'")
def json = "{"
json += "\"date\":\"${dateNow}\","
json += "\"isoDate\":\"${isoDateNow}\","
json += "\"name\":\"log\","
json += "\"message\":\"${msg}\","
THIS WORKS:
------------------
curl -X POST -H 'Accept: */*' -H 'Content-type: text/xml; charset=utf-8' -H 'SOAPAction: "urn:Belkin:service:deviceevent:1#SetAttributes"' -d '<?xml version="1.0" encoding="utf-8"?>
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<s:Body>
<u:SetAttributes xmlns:u="urn:Belkin:service:deviceevent:1">
<attributeList>&lt;attribute&gt;&lt;name&gt;FanMode&lt;/name&gt;&lt;value&gt;2&lt;/value&gt;&lt;/attribute&gt;&lt;attribute&gt;&lt;name&gt;DesiredHumidity&lt;/name&gt;&lt;value&gt;NULL&lt;/value&gt;&lt;/attribute&gt;&lt;attribute&gt;&lt;name&gt;CurrentHumidity&lt;/name&gt;&lt;value&gt;NULL&lt;/value&gt;&lt;/attribute&gt;&lt;attribute&gt;&lt;name&gt;WaterAdvise&lt;/name&gt;&lt;value&gt;NULL&lt;/value&gt;&lt;/attribute&gt;&lt;attribute&gt;&lt;name&gt;NoWater&lt;/name&gt;&lt;value&gt;NULL&lt;/value&gt;&lt;/attribute&gt;&lt;attribute&gt;&lt;name&gt;FilterLife&lt;/name&gt;&lt;value&gt;NULL&lt;/value&gt;&lt;/at
@bkeifer
bkeifer / stash.groovy
Created November 11, 2015 15:21
Send a log message to Logstash
def stash(msg) {
log.debug(msg)
def dateNow = new Date()
// def isoDateNow = dateNow.format("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'", location.timeZone)
def isoDateNow = dateNow.format("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'")
def json = "{"
json += "\"date\":\"${dateNow}\","
json += "\"isoDate\":\"${isoDateNow}\","
json += "\"name\":\"log\","
json += "\"message\":\"${msg}\","
mappings {
path("/stamp") {
action: [
GET: "checkStamp",
]
}
path("/reschedule") {
action: [
GET: "reschedule",
]