簡體   English   中英

不同的日志位置取決於操作系統

[英]Different log locations depending on OS

我需要將日志文件存儲在 Windows 中的C:\\.DS\\logs和 Linux 中的/.DS/logs中。

我找到了這樣做的方法:我需要使用System.setProperty("logs.dir", ...)並在 log4j 配置文件中使用${logs.dir}

然而,問題是,此時 log4j 已經初始化,它沒有選擇我的系統屬性。

有沒有更直接的方法來做到這一點,而我不需要手動重新初始化 log4j?

謝謝

在 log4j2.xml 配置中使用屬性查找

可用的系統屬性https://docs.oracle.com/javase/tutorial/essential/environment/sysprop.html

<Properties> //defined in log4j2 config
<Property name="LS">${sys:file.separator}</Property>
<Property name="LOG_DIR">partial_path${LS}partial_path${LS}</Property>
</Properties>

https://logging.apache.org/log4j/2.x/manual/configuration.html#PropertySubstitution

然后在文件路徑中

<RollingFile name="FILE_LOG" fileName="${LOG_DIR}file.log"

暫無
暫無

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

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