stanza_router: Make 'unhandled stanza' errors more informative
authorMatthew Wild <mwild1@gmail.com>
Wed, 31 Aug 2016 16:40:26 +0100
changeset 7651 d91ef1e6afc2
parent 7649 6210dfaec84f
child 7652 c07f01869795
child 7654 55f11a6806bc
stanza_router: Make 'unhandled stanza' errors more informative
core/stanza_router.lua
--- a/core/stanza_router.lua	Wed Aug 31 16:10:16 2016 +0100
+++ b/core/stanza_router.lua	Wed Aug 31 16:40:26 2016 +0100
@@ -36,7 +36,12 @@
 		-- A normal stanza
 		local st_type = stanza.attr.type;
 		if st_type == "error" or (name == "iq" and st_type == "result") then
-			log("debug", "Discarding %s from %s of type: %s", name, origin_type, st_type or '<nil>');
+			if st_type == "error" then
+				local err_type, err_condition, err_message = stanza:get_error();
+				log("debug", "Discarding unhandled error %s (%s, %s) from %s: %s", name, err_type, err_condition or "unknown condition", origin_type, stanza:top_tag());
+			else
+				log("debug", "Discarding %s from %s of type: %s", name, origin_type, st_type or '<nil>');
+			end
 			return;
 		end
 		if name == "iq" and (st_type == "get" or st_type == "set") and stanza.tags[1] then