java - 如何在 java opts 的 log4j2 配置中给出多个文件名?
问题描述
我正在按照本手册在我的 java 应用程序中配置 log4j2 - https://logging.apache.org/log4j/2.x/manual/configuration.html
但是,由于我有两个 xml 文件,因此我在提供文件路径时遇到了问题-
SERVICE_NAME="mailServer"
SERVICE_HOME=${SERVICE_HOME:="/srv/osgi"}
SERVICE_CONF=${SERVICE_CONF:="${SERVICE_HOME}"}
SERVICE_LOG4J_FILE=${SERVICE_LOG4J_FILE:="${SERVICE_CONF}/${SERVICE_NAME}-log4j.xml"}
SERVICE_LOG4J_OPTS=${SERVICE_LOG4J_OPTS:="-Dlog4j.configurationFile=file:${SERVICE_LOG4J_FILE}"}
现在我还想给出 log4j2.xml 的位置。
那么如下给出逗号分隔的文件名是否正确 -
SERVICE_LOG4J_FILE=${SERVICE_LOG4J_FILE:="${SERVICE_CONF}/${SERVICE_NAME}-log4j.xml", "${SERVICE_CONF}/log4j2.xml"}
解决方案
你可以使用它
# Root logger option
log4j.rootLogger=INFO, DEBUG, file,console
# Console Appender
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.Append=true
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d{yyyy-MM-ddHH:mm:ss,SSS} %-5p [ %M ] ( %C ) %c{1}:%L - %m%n
# File Appender
log4j.appender.file=org.apache.log4j.FileAppender
log4j.appender.file.DatePattern='.'yyyy-MM-dd-HH-mm
log4j.appender.file.Append=true
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-ddHH:mm:ss,SSS} %-5p [ %M ] ( %C ) %c{1}:%L - %m%n
log4j.appender.file.File=C:/log/SpringMain.log
log4j.appender.file.MaxBackupIndex=10
推荐阅读
- tensorflow - 具有数据不平衡问题的二元分类损失函数
- pytorch - 如何制作火炬张量?
- node.js - Lambda:无法在 s3 中流式传输和上传数据
- javascript - 猫鼬模糊搜索不适用于 updateOne
- python - 从给定索引开始的列表中数字的总和,递归
- asp.net-core - .NET Core 3.1 MapControllerRoute 导致没有区域的 url 无法正确加载
- ionic-framework - 升级到电容 3 后无法使用 livereload
- python - Django 内联表单集总是无效
- rust - 限制为 const N 时的 mem::transmute 错误
- python - 如何为 Cuda 找到正确的 libnvinfer 版本