loggingmanager, mod_posix: Replace the old inconsistent log formatting with the new util.format
authorWaqas Hussain <waqas20@gmail.com>
Sun, 10 Sep 2017 13:05:45 -0400
changeset 8229 3463d82276de
parent 8228 70cb72f46a3b
child 8230 325371632fe6
loggingmanager, mod_posix: Replace the old inconsistent log formatting with the new util.format
core/loggingmanager.lua
plugins/mod_posix.lua
--- a/core/loggingmanager.lua	Sun Sep 10 12:42:05 2017 -0400
+++ b/core/loggingmanager.lua	Sun Sep 10 13:05:45 2017 -0400
@@ -7,7 +7,7 @@
 --
 -- luacheck: globals log prosody.log
 
-local format = string.format;
+local format = require "util.format";
 local setmetatable, rawset, pairs, ipairs, type =
 	setmetatable, rawset, pairs, ipairs, type;
 local stdout = io.stdout;
@@ -195,22 +195,13 @@
 	local sourcewidth = sink_config.source_width;
 
 	return function (name, level, message, ...)
-		local n = select('#', ...);
-		if n ~= 0 then
-			local arg = { ... };
-			for i = 1, n do
-				arg[i] = tostring(arg[i]);
-			end
-			message = format(message, unpack(arg, 1, n));
-		end
-
 		if sourcewidth then
 			sourcewidth = math_max(#name+2, sourcewidth);
 			name = name ..  rep(" ", sourcewidth-#name);
 		else
 			name = name .. "\t";
 		end
-		write(logfile, timestamps and os_date(timestamps) or "", name, level, "\t", message, "\n");
+		write(logfile, timestamps and os_date(timestamps) or "", name, level, "\t", format(message, ...), "\n");
 	end
 end
 log_sink_types.file = log_to_file;
--- a/plugins/mod_posix.lua	Sun Sep 10 12:42:05 2017 -0400
+++ b/plugins/mod_posix.lua	Sun Sep 10 13:05:45 2017 -0400
@@ -20,6 +20,7 @@
 	module:log("warn", "Couldn't load signal library, won't respond to SIGTERM");
 end
 
+local format = require "util.format";
 local lfs = require "lfs";
 local stat = lfs.attributes;
 
@@ -118,13 +119,9 @@
 		pposix.syslog_open("prosody", module:get_option_string("syslog_facility"));
 		syslog_opened = true;
 	end
-	local syslog, format = pposix.syslog_log, string.format;
+	local syslog = pposix.syslog_log;
 	return function (name, level, message, ...)
-		if ... then
-			syslog(level, name, format(message, ...));
-		else
-			syslog(level, name, message);
-		end
+		syslog(level, name, format(message, ...));
 	end;
 end
 require "core.loggingmanager".register_sink_type("syslog", syslog_sink_maker);