init.lua

changeset 241
931bf313c691
parent 240
e27bf761bea6
child 242
ab4773b0ef5e
equal deleted inserted replaced
240:e27bf761bea6 241:931bf313c691
35 35
36 verse.logger = logger.init; -- COMPAT: Deprecated 36 verse.logger = logger.init; -- COMPAT: Deprecated
37 verse.new_logger = logger.init; 37 verse.new_logger = logger.init;
38 verse.log = verse.logger("verse"); 38 verse.log = verse.logger("verse");
39 39
40 local function format(format, ...)
41 local n, arg, maxn = 0, { ... }, select('#', ...);
42 return (format:gsub("%%(.)", function (c) if n <= maxn then n = n + 1; return tostring(arg[n]); end end));
43 end
44
40 function verse.set_log_handler(log_handler, levels) 45 function verse.set_log_handler(log_handler, levels)
41 levels = levels or { "debug", "info", "warn", "error" }; 46 levels = levels or { "debug", "info", "warn", "error" };
42 logger.reset(); 47 logger.reset();
48 local function _log_handler(name, level, message, ...)
49 return log_handler(name, level, format(message, ...));
50 end
43 if log_handler then 51 if log_handler then
44 for i, level in ipairs(levels) do 52 for i, level in ipairs(levels) do
45 logger.add_level_sink(level, log_handler); 53 logger.add_level_sink(level, _log_handler);
46 end 54 end
47 end 55 end
48 end 56 end
49 57
50 local function error_handler(err) 58 local function error_handler(err)

mercurial