logback配置日誌檔案位置
阿新 • • 發佈:2019-01-06
logback輸出的日誌檔案,預設會放到“啟動程序”的目錄下面
比如說程式直接在eclipse裡跑,就會輸出到eclipse.exe所在的目錄下,如果是在tomcat中跑,就會輸出到%TOMCAT_HOME%/bin目錄下
如果應用部署在jboss下,採用上面的配置檔案,則會在%JBOSS_HOME%/bin目錄下建立一個MyLog的資料夾
當然一般是不會這樣的,因為日誌檔案放在應用伺服器的bin目錄下是很奇怪的,所以可以用絕對路徑或者相對路徑的方式,配置日誌檔案的位置
絕對路徑:
相對路徑:
這裡的logback版本是最新的logback-1.0.4,老的版本好像配置相對路徑是有問題的
比如說程式直接在eclipse裡跑,就會輸出到eclipse.exe所在的目錄下,如果是在tomcat中跑,就會輸出到%TOMCAT_HOME%/bin目錄下
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>MyLog/logFile.%d{yyyy-MM-dd}.log</fileNamePattern> <maxHistory>30</maxHistory> </rollingPolicy> <encoder> <pattern>%-4relative %d{HH:mm:ss.SSS} - [%thread] %-5level %class - %msg%n</pattern> </encoder> </appender>
如果應用部署在jboss下,採用上面的配置檔案,則會在%JBOSS_HOME%/bin目錄下建立一個MyLog的資料夾
當然一般是不會這樣的,因為日誌檔案放在應用伺服器的bin目錄下是很奇怪的,所以可以用絕對路徑或者相對路徑的方式,配置日誌檔案的位置
絕對路徑:
<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>/opt/xxx/log/logFile.%d{yyyy-MM-dd}.log</fileNamePattern> <maxHistory>30</maxHistory> </rollingPolicy> <encoder> <pattern>%-4relative %d{HH:mm:ss.SSS} - [%thread] %-5level %class - %msg%n</pattern> </encoder> </appender>
相對路徑:
<property name="logDir" value="../../youcanfindme" /> <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"> <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> <fileNamePattern>${logDir}/logFile.%d{yyyy-MM-dd}.log</fileNamePattern> <maxHistory>30</maxHistory> </rollingPolicy> <encoder> <pattern>%-4relative %d{HH:mm:ss.SSS} - [%thread] %-5level %class - %msg%n</pattern> </encoder> </appender>
這裡的logback版本是最新的logback-1.0.4,老的版本好像配置相對路徑是有問題的