From 29747bfa1eecda2e0df3fb6d3359126dec5a7eb2 Mon Sep 17 00:00:00 2001 From: Matthew Wild Date: Sun, 13 Feb 2011 18:37:34 +0000 Subject: loggingmanager: Allow specifying a sink type in per-level logging config (thanks ruskie) --- core/loggingmanager.lua | 20 +++++++++++++------- 1 file 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 -- cgit v1.2.3