Поиск файла журнала Log4J Я работаю над проектом, который использует Log4J через Commons. Я пытаюсь найти путь к файлу журнала, но я не нахожу подходящий метод, который вернет путь к файлу журнала из Logger. Кто-нибудь когда-либо пытался это сделать? Ответ 1 Вы должны получить все приложения из корневого регистратора, а затем получить имя файла журнала. Enumeration e = Logger.getRootLogger().getAllAppenders(); while ( e.hasMoreElements() ){ Appender app = (Appender)e.nextElement(); if ( app instanceof FileAppender ){ System.out.println("File: " + ((FileAppender)app).getFile()); } } Ответ 2 Возможно, вы могли бы попытаться получить Appenders? Enumeration appenders = logger.getRootLogger().getAllAppenders(); Если у вас есть FileAppender, вы можете получить файл... Что-то вроде этого: FileAppender fileAppender = null; Enumeration appenders = logger.getRootLogger().getAllAppenders(); while(appenders.hasMoreElements()) { Appender currAppender = (Appender) appenders.nextElement(); if(currAppender instanceof FileAppender) { fileAppender = (FileAppender) currAppender; } } if(fileAppender != null) { logDest = fileAppender.getFile(); System.out.println("logDest : " + logDest); } Надеюсь, это поможет!
Ответ 1 Вы должны получить все приложения из корневого регистратора, а затем получить имя файла журнала. Enumeration e = Logger.getRootLogger().getAllAppenders(); while ( e.hasMoreElements() ){ Appender app = (Appender)e.nextElement(); if ( app instanceof FileAppender ){ System.out.println("File: " + ((FileAppender)app).getFile()); } }
Ответ 2 Возможно, вы могли бы попытаться получить Appenders? Enumeration appenders = logger.getRootLogger().getAllAppenders(); Если у вас есть FileAppender, вы можете получить файл... Что-то вроде этого: FileAppender fileAppender = null; Enumeration appenders = logger.getRootLogger().getAllAppenders(); while(appenders.hasMoreElements()) { Appender currAppender = (Appender) appenders.nextElement(); if(currAppender instanceof FileAppender) { fileAppender = (FileAppender) currAppender; } } if(fileAppender != null) { logDest = fileAppender.getFile(); System.out.println("logDest : " + logDest); } Надеюсь, это поможет!