util/logger.lua
changeset 8556 32438665dc5e
parent 7134 ea3eea291321
child 8558 4f0f5b49bb03
equal deleted inserted replaced
8555:1fcefc16a55d 8556:32438665dc5e
    65 	else
    65 	else
    66 		level_sinks[level][#level_sinks[level] + 1 ] = sink_function;
    66 		level_sinks[level][#level_sinks[level] + 1 ] = sink_function;
    67 	end
    67 	end
    68 end
    68 end
    69 
    69 
       
    70 local function add_simple_sink(simple_sink_function, levels)
       
    71 	local format = require "util.format".format;
       
    72 	local function sink_function(name, level, msg, ...)
       
    73 		return simple_sink_function(name, level, format(msg, ...));
       
    74 	end
       
    75 	for _, level in ipairs(levels or {"debug", "info", "warn", "error"}) do
       
    76 		add_level_sink(level, sink_function);
       
    77 	end
       
    78 end
       
    79 
    70 return {
    80 return {
    71 	init = init;
    81 	init = init;
    72 	make_logger = make_logger;
    82 	make_logger = make_logger;
    73 	reset = reset;
    83 	reset = reset;
    74 	add_level_sink = add_level_sink;
    84 	add_level_sink = add_level_sink;
       
    85 	add_simple_sink = add_simple_sink;
    75 	new = make_logger;
    86 	new = make_logger;
    76 };
    87 };