From e30d3103af5c2f9bd680addca30b78c5763e65e2 Mon Sep 17 00:00:00 2001 From: Bart Van Der Meerssche Date: Fri, 8 Apr 2011 15:46:12 +0200 Subject: [PATCH] [fluksod] improve POST call error logging --- mote/v2/openwrt/package/flukso/luasrc/fluksod.lua | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/mote/v2/openwrt/package/flukso/luasrc/fluksod.lua b/mote/v2/openwrt/package/flukso/luasrc/fluksod.lua index b337a76..2536983 100755 --- a/mote/v2/openwrt/package/flukso/luasrc/fluksod.lua +++ b/mote/v2/openwrt/package/flukso/luasrc/fluksod.lua @@ -209,19 +209,28 @@ function send(child) end options.body = '{"measurements":' .. measurements_json[sensor_id] .. '}' - options.headers["Content-Length"] = tostring(#options.body) + options.headers['Content-Length'] = tostring(#options.body) local hash = nixio.crypto.hmac('sha1', WAN_KEY) hash:update(options.body) options.headers['X-Digest'] = hash:final() local url = WAN_BASE_URL .. sensor_id - local response, code, meta = http_persist(url, options) + local response, code, call_info = http_persist(url, options) nixio.syslog('info', string.format('%s %s: %s', options.method, url, code)) + -- flush the sensor's measurement buffer in case of a successful HTTP POST if response then measurements:clear(sensor_id) + elseif type(call_info) == 'string' then + nixio.syslog('err', call_info) + elseif type(call_info) == 'table' then + local auth_error = call_info.headers['WWW-Authenticate'] + + if auth_error then + nixio.syslog('err', string.format('WWW-Authenticate: %s', auth_error)) + end end end