diff options
author | Matthew Wild <mwild1@gmail.com> | 2011-02-13 18:37:34 +0000 |
---|---|---|
committer | Matthew Wild <mwild1@gmail.com> | 2011-02-13 18:37:34 +0000 |
commit | 31faa98f1425903ce76e85a16ada833e3f1da2a0 (patch) | |
tree | e5dde5e0aa68ee1ec5f5ad86335f7209cf10a17c /core/loggingmanager.lua | |
parent | 0f0601ab2dab456fa337f43fd26403cb7f04c5d2 (diff) | |
download | prosody-31faa98f1425903ce76e85a16ada833e3f1da2a0.tar.gz prosody-31faa98f1425903ce76e85a16ada833e3f1da2a0.zip |
loggingmanager: Allow specifying a sink type in per-level logging config (thanks ruskie)
Diffstat (limited to 'core/loggingmanager.lua')
-rw-r--r-- | core/loggingmanager.lua | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/core/loggingmanager.lua b/core/loggingmanager.lua index be76681d..88f2bbbf 100644 --- a/core/loggingmanager.lua +++ b/core/loggingmanager.lua @@ -88,14 +88,20 @@ end function apply_sink_rules(sink_type) if type(logging_config) == "table" then - if sink_type == "file" then - for _, level in ipairs(logging_levels) do - if type(logging_config[level]) == "string" then + for _, level in ipairs(logging_levels) do + if type(logging_config[level]) == "string" then + local value = logging_config[level]; + if sink_type == "file" then + add_rule({ + to = sink_type; + filename = value; + timestamps = true; + levels = { min = level }; + }); + elseif value == "*"..sink_type then add_rule({ - to = "file", - filename = logging_config[level], - timestamps = true, - levels = { min = level }, + to = sink_type; + levels = { min = level }; }); end end |