Mercurial > prosody-hg
comparison util/logger.lua @ 8553:32438665dc5e
util.logger: New method 'add_simple_sink', logger.add_simple_sink(print) works
| author | Matthew Wild <mwild1@gmail.com> |
|---|---|
| date | Tue, 27 Feb 2018 16:02:25 +0000 |
| parents | ea3eea291321 |
| children | 4f0f5b49bb03 |
comparison
equal
deleted
inserted
replaced
| 8552:1fcefc16a55d | 8553: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 }; |
