public RARController(/*IHttpContextAccessor httpContextAccessor, */ RARContext repositoryContext, IConfiguration configuration, ILogger <RARController> logger, IHostingEnvironment hostingEnvironment) { /*_httpContextAccessor = httpContextAccessor;*/ RepositoryContext = repositoryContext; logger.LogInformation("Controller StoricoCartelleController started!"); _hostingEnvironment = hostingEnvironment; _configuration = configuration; _logger = logger; var executingAssembly = Assembly.GetExecutingAssembly(); log4net.Repository.ILoggerRepository rootRepository = log4net.LogManager.GetRepository(executingAssembly); foreach (var appender in rootRepository.GetAppenders()) { if (appender.Name.Equals("RollingFile") && appender is log4net.Appender.FileAppender) { var fileAppender = appender as log4net.Appender.FileAppender; fileAppender.File = "Log" + "\\rarapi_" + DateTime.Now.ToString("yyyyMMdd") + ".log"; fileAppender.ActivateOptions(); } } }
public static void SetLogFileName(string logger, string logFileName) { bool found = false; Errors.Clear(); var appenders = repo.GetAppenders(); foreach (log4net.Appender.IAppender a in appenders) { if (a is FileAppender && a.Name == logger) { FileAppender fa = (FileAppender)a; fa.AppendToFile = false; fa.File = logFileName; fa.ActivateOptions(); found = true; break; } } if (!found) { throw new Exception("Cannot find Appender " + logger); } }
/// <summary> /// Create the file name and sets the path for CommonLogAppender. default path is bin\debug /// </summary> /// <param name="newFilename"></param> public static void CreateLogFile(string newFilename) { log4net.Repository.ILoggerRepository repository = LogManager.GetRepository(""); var appender = repository.GetAppenders() .First(i => i is log4net.Appender.FileAppender && i.Name.Equals("CommonLogAppender")); var fileAppender = (log4net.Appender.FileAppender)appender; fileAppender.File = newFilename; fileAppender.ActivateOptions(); }
public static void FlushBuffers() { log4net.Repository.ILoggerRepository rep = LogManager.GetRepository(); foreach (log4net.Appender.IAppender appender in rep.GetAppenders()) { var buffered = appender as log4net.Appender.BufferingAppenderSkeleton; if (buffered != null) { buffered.Flush(); } } }
/// <summary> /// Create the file name and sets the path. default path is bin/debug /// </summary> /// <param name="appenderName"></param> /// <param name="newFilename"></param> public static void CreateLogFile(string appenderName, string newFilename) { log4net.Repository.ILoggerRepository repository = LogManager.GetLoggerRepository(); foreach (log4net.Appender.IAppender appender in repository.GetAppenders()) { if (appender.Name.CompareTo(appenderName) == 0 && appender is log4net.Appender.FileAppender) { log4net.Appender.FileAppender fileAppender = (log4net.Appender.FileAppender)appender; fileAppender.File = System.IO.Path.Combine(fileAppender.File, newFilename); fileAppender.ActivateOptions(); } } }
/////////////////////////////////////////////////////////////////////////////// #region OTHER REUSABLE METHODS public void SetFileAppenderPath(string iFileAppenderName) { log4net.Repository.ILoggerRepository repository = log4net.LogManager.GetRepository(); foreach (var thisAppender in repository.GetAppenders()) { if (thisAppender is log4net.Appender.FileAppender && thisAppender.Name.Equals(iFileAppenderName)) { log4net.Appender.FileAppender fileAppender = thisAppender as log4net.Appender.FileAppender; fileAppender.File = LogPath; fileAppender.ActivateOptions(); } } }
public void TestSearchResultFunctionality() { this.goBack(); log4net.Repository.ILoggerRepository repository = log4net.LogManager.GetAllRepositories().FirstOrDefault(); FileAppender appender = repository.GetAppenders().OfType <FileAppender>().FirstOrDefault(); log.DebugFormat("log file located at : {0}", appender.File); IWebElement element = driver.FindElement(By.XPath(@"//*[@id=""tsf""]/div[2]/div[1]/div[3]/center/input[2]")); log.Info("Scenario TS_2:"); this.Scenario2Case1to2(element); this.Scenario2Case2to4(element); }
private void ConfigureLog4Net() { var executingAssembly = Assembly.GetExecutingAssembly(); log4net.Repository.ILoggerRepository rootRepository = log4net.LogManager.GetRepository(executingAssembly); foreach (var appender in rootRepository.GetAppenders()) { if (appender.Name.Equals("RollingFile") && appender is log4net.Appender.FileAppender) { var fileAppender = appender as log4net.Appender.FileAppender; fileAppender.File = "Log\\rar_" + DateTime.Now.ToString("yyyyMMdd") + ".log"; fileAppender.ActivateOptions(); } } }
private static void initializeLog() { string logDirectory = Settings.Default.LogPath; string logFileName = string.Format("{0:yyyyMMdd}_log.txt", DateTime.Now); log4net.Repository.ILoggerRepository repository = log4net.LogManager.GetRepository(); foreach (log4net.Appender.IAppender appender in repository.GetAppenders()) { if (appender.Name.CompareTo("FileAppender") == 0 && appender is log4net.Appender.FileAppender) { log4net.Appender.FileAppender fileAppender = (log4net.Appender.FileAppender)appender; fileAppender.File = System.IO.Path.Combine(Settings.Default.DestinationFolder, Settings.Default.LogPath, logFileName); fileAppender.ActivateOptions(); } } }
/// <summary> /// Flushes the currently buffered events. /// </summary> public void Flush() { log4net.Repository.ILoggerRepository repo = _log.Logger.Repository; if (repo != null) { foreach (log4net.Appender.IAppender appender in repo.GetAppenders()) { var buffered = appender as log4net.Appender.BufferingAppenderSkeleton; if (buffered != null) { buffered.Flush(); } } } }
/// <summary> /// Create the file name and sets the path. default path is bin\debug /// </summary> /// <param name="appenderName"></param> /// <param name="newFilename"></param> public static void CreateLogFile(string appenderName, string newFilename, bool minLock = false) { log4net.Repository.ILoggerRepository repository = LogManager.GetRepository(""); foreach (log4net.Appender.IAppender appender in repository.GetAppenders()) { if (appender.Name.CompareTo(appenderName) == 0 && appender is log4net.Appender.FileAppender) { log4net.Appender.FileAppender fileAppender = (log4net.Appender.FileAppender)appender; //It was appending existing path with new log file path fileAppender.File = newFilename; // fileAppender.File = System.IO.Path.Combine(fileAppender.File, newFilename); if (minLock) //Used only by DMT { fileAppender.LockingModel = new log4net.Appender.FileAppender.MinimalLock(); } fileAppender.ActivateOptions(); } } }
public void ConfigValidFileTest() { log4net.Config.XmlConfigurator.Configure(); log4net.Repository.ILoggerRepository repo = log4net.LogManager.GetRepository(); log4net.ILog logger = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); string filePath = repo.GetAppenders().OfType <log4net.Appender.RollingFileAppender>().Single(fa => fa.Name == "FileAppender").File; if (File.Exists(filePath)) { File.Delete(filePath); } string message = "This is Test Message"; logger.Error(message); log4net.LogManager.Shutdown(); Assert.IsTrue(File.ReadAllText(filePath).Contains(message)); }
private static void ChangeFilePath(string appenderNameStr, string newFileNameStr) { log4net.Repository.ILoggerRepository rootRep = LogManager.GetRepository(); foreach (IAppender iApp in rootRep.GetAppenders()) { string appenderName = iApp.Name; if (appenderName.CompareTo(appenderNameStr) == 0 && iApp is FileAppender) { FileAppender fApp = (FileAppender)iApp; fApp.File = newFileNameStr; fApp.ActivateOptions(); // 找到对应Appender,修改FileName } } log4net.GlobalContext.Properties["pid"] = Process.GetCurrentProcess().Id; // 没有找到Appender }
public void ConfigConsoleAppenderExistsTest() { log4net.Config.XmlConfigurator.Configure(); log4net.Repository.ILoggerRepository repo = log4net.LogManager.GetRepository(); Assert.IsTrue(repo.GetAppenders().OfType <log4net.Appender.ColoredConsoleAppender>().Any()); }
public void Log4netCustomPathTest() { var fileInfo = new FileInfo("config/log4net-custem-path.config"); log4net.Repository.ILoggerRepository repository = log4net.LogManager.CreateRepository("NETCoreRepository"); log4net.Config.XmlConfigurator.Configure(repository, fileInfo); var allAppeders = repository.GetAppenders(); var targetApder = allAppeders.FirstOrDefault(e => e.Name == "CustemPathRollingLogFileAppender") as RollingFileAppender; var path = Path.GetDirectoryName(targetApder.File); targetApder.File = Path.Combine(path, "custem1/"); targetApder.ActivateOptions(); log4net.Config.BasicConfigurator.Configure(repository); log4net.ILog log = log4net.LogManager.GetLogger(repository.Name, "Custem1Log"); log4net.Repository.ILoggerRepository custemRepos2 = log4net.LogManager.CreateRepository("Custem2Repository"); log4net.Config.XmlConfigurator.Configure(custemRepos2, fileInfo); var cusAppeders2 = custemRepos2.GetAppenders(); var targetApder2 = cusAppeders2.FirstOrDefault(e => e.Name == "CustemPathRollingLogFileAppender") as RollingFileAppender; var path2 = Path.GetDirectoryName(targetApder2.File); targetApder2.File = Path.Combine(path2, "custem2/"); targetApder2.ActivateOptions(); log4net.Config.BasicConfigurator.Configure(custemRepos2); log4net.ILog log2 = log4net.LogManager.GetLogger(custemRepos2.Name, "Custem2Log"); var isExist = (log4net.LogManager.GetRepository(custemRepos2.Name) != null) && log4net.LogManager.Exists(custemRepos2.Name, "Custem2Log") != null; output.WriteLine($"repo={custemRepos2.Name} name=Custem2Log,存在吗?{ isExist }"); var isExistReposNot = false; if (log4net.LogManager.GetAllRepositories().Any(e => e.Name == "noRepos")) { if (log4net.LogManager.Exists("noRepos", "noCustemLog") != null) { isExistReposNot = true; } } output.WriteLine($"repo=noRepos,name=noCustemLog,存在吗?{ isExistReposNot }"); var isExistLogNot = false; if (log4net.LogManager.GetAllRepositories().Any(e => e.Name == "Custem2Repository")) { if (log4net.LogManager.Exists("Custem2Repository", "noCustemLog") != null) { isExistLogNot = true; } } output.WriteLine($"repo=Custem2Repository,name=noCustemLog,存在吗?{ isExistLogNot }"); for (int i = 0; i < 1000; i++) { log.Info("log4 custom1: " + targetApder.File); output.WriteLine("log4 custom1 path test: " + targetApder.File.Replace(AppDomain.CurrentDomain.BaseDirectory, "")); log2.Info("log4 custom2: " + targetApder2.File); output.WriteLine("log4 custom2 path test: " + targetApder2.File + targetApder.File.Replace(AppDomain.CurrentDomain.BaseDirectory, "")); } }