/// <summary> /// create LogConfig instance /// </summary> /// <param name="fileName">the xml config file name</param> /// <param name="configId">the config id</param> /// <returns>the logconfig instance</returns> public LogConfig(string fileName, string configId) { LogManagement.Instance().Initialize(fileName); LogConfigBase config = LogManagement.Instance().Site.Config.LogConfigs[configId]; if (config == null) { throw new StackException(string.Format(CultureInfo.InvariantCulture, "the config can not be found, id={0}", configId)); } this.realLogConfig = config; }
internal ILogDistination GetDistination(LogConfigBase config) { lock (logDistinationMap) { ILogDistination distination = null; if (!logDistinationMap.ContainsKey(config.Type)) { distination = config.CreateDistination(); logDistinationMap.Add(config.Type, distination); } else { distination = logDistinationMap[config.Type]; } return(distination); } }
/// <summary> /// Constructor /// </summary> /// <param name="logConfig">The log config</param> public Logger(LogConfig logConfig) { this.Config = logConfig.RealLogConfig; LogManagement.Instance().AddLogger(this); }