コード例 #1
0
        private static void ApplyConfig()
        {
            if (_config != null)
            {
                Dictionary <string, LogLevel>    newLogLevelDict = new Dictionary <string, LogLevel>();
                Dictionary <string, LogWorkType> logWorkTypeDict = new Dictionary <string, LogWorkType>();
                foreach (var item in _config.Rules)
                {
                    LogLevel newLevel   = (LogLevel)Enum.Parse(typeof(LogLevel), item.Level);
                    string   channelKey = "local";

                    string key = string.Format("{0}_{1}_{2}_{3}_{4}_{5}", item.AppName, item.ModelName, item.BusinessName, item.Lable, item.ServerName, channelKey);
                    if (newLogLevelDict.ContainsKey(key))
                    {
                        LogLevel level = newLogLevelDict[key];
                        newLogLevelDict[key] = level | newLevel;
                    }
                    else
                    {
                        newLogLevelDict.Add(key, newLevel);
                    }
                    logWorkTypeDict[key] = (LogWorkType)Enum.Parse(typeof(LogWorkType), item.WorkType);
                }
                _logLevelDict    = newLogLevelDict;
                _logWorkTypeDict = logWorkTypeDict;
                _defaultLevel    = (LogLevel)Enum.Parse(typeof(LogLevel), _config.DefaultLevel);
                _defaultWorkType = (LogWorkType)Enum.Parse(typeof(LogWorkType), _config.DefaultWorkType);
            }
        }
コード例 #2
0
 public static void Initialize(LogLevel defaultLevel, LogWorkType defaultWorkType)
 {
     _defaultLevel    = defaultLevel;
     _defaultWorkType = defaultWorkType;
     Initialize();
 }