public void TestSetup() { outputBuilder = new StringBuilder(); outputWriter = new StringWriter(outputBuilder); memoryAppender = new MemoryAppender(); textAppender = new TextWriterAppender {Writer = outputWriter, Layout = new PatternLayout("%m")}; log4netRepository = LogManager.GetAllRepositories().SingleOrDefault(x => x.Name == "test") ?? LogManager.CreateRepository("test"); log4netRepository.ResetConfiguration(); BasicConfigurator.Configure(log4netRepository, memoryAppender, textAppender); log4netLogger = LogManager.GetLogger("test", "root").Logger; adapter = new Log4netLog(log4netLogger); }
public void Reconfigure(string extension, string defaultConfig) { if (repositoryName == "SysLog" && ConfigurationManager.GetSection("log4net") != null) { log4net.Config.XmlConfigurator.Configure(repository); } else { var xml = GetConfigXML(repositoryName, extension, defaultConfig); repository.ResetConfiguration(); log4net.Config.XmlConfigurator.Configure(repository, xml); } lock ( locker) { if (exceptionLog == null) { exceptionLog = GetLogger("TickZoom.AppDomain"); AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(UnhandledException); } } }
private void Reconfigure(string extension, string defaultConfig) { this.currentExtension = extension; lock (repositoryLocker) { if (repositoryName == "SysLog" && ConfigurationManager.GetSection("log4net") != null) { log4net.Config.XmlConfigurator.Configure(repository); } else { var xml = GetConfigXML(repositoryName, extension, defaultConfig); repository.ResetConfiguration(); log4net.Config.XmlConfigurator.Configure(repository, xml); } } lock ( locker) { if (exceptionLog == null) { exceptionLog = GetLogger("TickZoom.AppDomain"); } } }
/// <summary> /// 设置配置 /// </summary> public void SetConfig() { //不是第一次设置 if (rep != null) { rep.ResetConfiguration(); } else//初次创建 { //创建Repository try { rep = LogManager.GetRepository(logName); //log = LogManager.GetLogger(rep.Name, logName); } catch { rep = LogManager.CreateRepository(logName); log4net.Config.BasicConfigurator.Configure(rep, fileApp); log = LogManager.GetLogger(logName, logName); } } //重设文件输出 RollingFileAppender fileAppender = new RollingFileAppender(); fileAppender.Layout = new PatternLayout(strLayoutPattern); fileAppender.RollingStyle = (RollingFileAppender.RollingMode)rollingMode; if (rollingMode == RollingType.Date) { fileAppender.StaticLogFileName = false; fileAppender.DatePattern = @"\\\\yyyy-MM-dd\\\\yyyyMMdd'.log'"; fileAppender.File = filePath; if (fileAppender.File != null && fileAppender.File.EndsWith(".log")) { fileAppender.File = fileAppender.File.Remove(fileAppender.File.IndexOf(".log")); } } else { fileAppender.File = filePath; } fileAppender.LockingModel = new RollingFileAppender.MinimalLock(); fileAppender.AppendToFile = true; fileAppender.Encoding = Encoding.GetEncoding("GB2312"); //fileAppender.CountDirection = 1; fileAppender.MaxFileSize = maxFileSize; fileAppender.MaxSizeRollBackups = this.MaxSizeRollBackups; fileAppender.ActivateOptions(); fileApp = fileAppender; if ((logType & LogType.File) == LogType.File) { //创建Log文件输出方式 log4net.Config.BasicConfigurator.Configure(rep, fileApp); } //控制台输出 if ((logType & LogType.Console) == LogType.Console) { PatternLayout layout = new PatternLayout(strLayoutPattern); ConsoleAppender appender = new ConsoleAppender(); appender.Layout = layout; log4net.Config.BasicConfigurator.Configure(rep, appender); } //数据库输出 if ((logType & LogType.DataBase) == LogType.DataBase) { AdoNetAppender appender = new AdoNetAppender(); appender.ConnectionString = DBConnectionString; appender.CommandText = DBInsertSql; if (DBParameter != null) { for (int i = 0; i < DBParameter.Length; i++) { appender.AddParameter(DBParameter[i]); } } log4net.Config.BasicConfigurator.Configure(rep, appender); } //Debug输出 if ((logType & LogType.Debug) == LogType.Debug) { DebugAppender appender = new DebugAppender(); appender.Layout = new PatternLayout(strLayoutPattern); log4net.Config.BasicConfigurator.Configure(rep, appender); } log = LogManager.GetLogger(rep.Name, logName); }