/// <summary> /// 构造函数 /// </summary> /// <param name="element">LogListenerElement对象</param> /// <remarks> /// 根据配置信息创建FormattedEventLogTraceListener对象 /// <code source="..\Framework\TestProjects\DeluxeWorks.Library.Test\\Logging\ListenerTest.cs" /// lang="cs" region="EventLogTraceListener Test" tittle="创建Listener对象"></code> /// </remarks> public FormattedEventLogTraceListener(LoggerListenerConfigurationElement element) { this.formatterName = element.LogFormatterName; this.Name = element.Name; this.logName = element.LogName; if (this.logName.IsNullOrEmpty()) { this.logName = FormattedEventLogTraceListener.DefaultLogName; } this.source = element.Source; if (this.source.IsNullOrEmpty()) { this.source = string.IsNullOrEmpty(this.logName) ? FormattedEventLogTraceListener.DefaultSource : this.logName; } this.SlaveListener = new EventLogTraceListener(); }
/// <summary> /// 构造函数 /// </summary> /// <param name="element">LogListenerElement对象</param> /// <remarks> /// <code source="..\Framework\TestProjects\DeluxeWorks.Library.Test\Logging\ListenerTest.cs" /// lang="cs" region="FlatFileTraceListener Test" tittle="创建Listener对象"></code> /// </remarks> public FlatFileTraceListener(LoggerListenerConfigurationElement element) { this.Name = element.Name; string filename = element.FileName; if (filename.IsNullOrEmpty()) { filename = element.Name + ".log"; } filename = RootFileNameAndEnsureTargetFolderExists(filename); FileStream fs = new FileStream(filename, FileMode.Append, FileAccess.Write, FileShare.ReadWrite); TextWriterTraceListener textlistener = new TextWriterTraceListener(fs, this.Name); this.SlaveListener = textlistener; this.header = element.Header; if (this.header.IsNullOrEmpty()) { this.header = string.Empty; } this.footer = element.Footer; if (this.footer.IsNullOrEmpty()) { this.footer = string.Empty; } this.formatterName = element.LogFormatterName; //string filename; //element.ExtendedAttributes.TryGetValue("fileName", out filename); }
private static FormattedTraceListenerBase GetListenerFromConfig(LoggerListenerConfigurationElement element) { return((FormattedTraceListenerBase)TypeCreator.CreateInstance(element.Type, element)); }