簡體   English   中英

如何在Java中獲取Log4j日志文件的絕對路徑?

[英]How to get Log4j log file absolute path in Java?

我正在使用Log4j記錄和記錄Log4j.xml文件中提供的文件路徑。 該Web應用將部署在weblogic服務器上,並且在home / JEE / servername / logs目錄下生成日志文件。 使用Java如何在Java中獲取此“ ../../logs/cast-arm.log”的絕對路徑?

log4j.xml(src \\ main \\ resources \\ log4j.xml)

<appender name="armFile" class="org.apache.log4j.RollingFileAppender">
    <param name="append" value="true" />
    <param name="maxFileSize" value="10MB" />
    <param name="maxBackupIndex" value="100" />
    <param name="file" value="../../logs/cast-arm.log" />
    <layout class="org.apache.log4j.PatternLayout">
    <param name="ConversionPattern"  value="%d{yyyy-MMM-dd HH:mm:ss,SSS} [%t] %c %x%n  %-5p %m%n"/>
    </layout>
</appender>

Java的:

File file = new File("../../logs");

有兩種方法可以獲取此絕對文件路徑

  1. 使用user.dir屬性( 如果您知道相對路徑

     File userDir = new File(System.getProperty("user.dir")); File logFile= new File(userDir , "../../logs/cast-arm.log"); System.out.println(logFile.getAbsolutePath()); 
  2. 使用FileAppender

     FileAppender fileAppender = (FileAppender) logger.getRootLogger().getAppender("armFile"); System.out.println(new File(fileAppender.getFile()).getAbsolutePath()); 

希望這可以幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM