2013-12-12 53 views
0

我已經創建了示例log4j類來測試配置。我寫了下面的log4j屬性文件:在哪裏可以找到我的項目中的日誌文件?

log4j.rootLogger = INFO, FILE, CONSOLE 
log4j.appender.FILE=org.apache.log4j.FileAppender 
log4j.appender.FILE.File=X:\\logs\Log4jExample.log 
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout 
log4j.appender.FILE.layout.conversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n 
log4j.appender.stdout=org.apache.log4j.ConsoleAppender 
log4j.appender.stdout.Target=System.out 
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n 

我的示例程序是:

public class Log4jExample 
{ 

    static Logger log = Logger.getLogger(Log4jExample.class.getName()); 

    public static void main(String[] args) throws IOException { 
     try { 
      FileInputStream fstream = new FileInputStream("D:\\textfile.txt"); 
      // use DataInputStream to read binary NOT text   
      // DataInputStream in = new DataInputStream(fstream); 
      BufferedReader br = new BufferedReader(new InputStreamReader(fstream)); 

      String strLine; 
      while ((strLine = br.readLine()) != null) { 
       System.out.println (strLine); 
      } 
      in.close(); 
     } catch (FileNotFoundException fe) { 
      log.error("File Not Found",fe); 
      log.warn("This is a warning message"); 
      log.trace("This message will not be logged since log level is set as DEBUG");  
     } catch (IOException e) { 
      log.error("IOEXception occured:", e); 
     } 
    } 
} 

我收到我的控制檯預期的輸出,但我無法找到我的生成日誌文件。我已將其路徑設置爲X:\\logs。但是沒有創建這樣的日誌文件。

請幫忙。

+0

您是否在控制檯中獲取任何日誌? – gks

+0

我的控制檯中輸出正確,唯一的問題是它沒有創建任何日誌文件。 @Gk。 –

回答

0

我在配置中看不到任何錯誤。
但在你initialitation,試試這個:

static final Logger LOGGER = LoggerFactory.getLogger(MyClass.class) 
+0

它沒有在我的目的地創建任何日誌文件。 –

+0

我會使用相對路徑,並且應該在您的應用程序中創建日誌。 –

0

變化X:\\logs\test.logX://logs/test.log路徑 一般人往往給相對路徑像log/MutationPipeline.log

+0

是的,日誌文件夾已在X中創建:.... –

+1

@mahes_SA_JEY:請參閱我的編輯 – Sach

1

你的道路已經在一些地方雙反斜線和單反斜線在其他地方。你可以用全單(或全雙)反斜槓再試一次嗎? 要嘗試的另一件事是首先登錄到本地驅動器(C :),以查看問題是否與映射的網絡驅動器有關。

(順便說一句,這個問題被標記log4j2但你使用log4j的-1.x中)

相關問題