如何在 docker 卷中保存 java.util.logging 输出
How to save java.util.logging output in docker volume
我有一个 java 应用程序。我将我的项目导出为 .war 文件,构建一个 docker 容器并 运行 它。
结构如下。对于日志记录,我使用 java.
中的库
import java.util.logging.Logger;
在我的应用程序中,我定义了我的变量:
private static final Logger logger = Logger.getLogger(BusController.class.getName());
对于我使用的输出,例如:
logger.warning("User "+XYZ+" not found!");
当我启动我的 docker 文件时,我为日志安装了一个额外的卷。
REGISTRY=xxxxx.net
VERSION=latest
IMAGE=busMicroservice
SERVICE=busmicroservice
LOCAL_DATA_PATH=/opt/docker-busmicroservice/data
docker run -p xxxx:xxxxx -d -v $LOCAL_DATA_PATH:/logs --name $SERVICE --hostname $SERVICE $REGISTRY/$IMAGE:$VERSION
docker容器成功启动后,我可以用
检查我的音量
docker inspect busmicroservice
并且可以看到,我的卷已包含在内。
但是我现在必须做什么,日志将保存在我的文件夹“/logs”中?我必须在我的 java 应用程序中实施什么?
提前致谢!
------------编辑---------
我现在有第二个线程来回答另一个问题:
您需要使用 log4j 文件追加器。
编辑 log4j.properties
log4j.appender.default.file=org.apache.log4j.FileAppender
log4j.appender.default.file.append=true
log4j.appender.default.file.file=/log/logfile.log
log4j.appender.default.file.threshold=INFO
log4j.appender.default.file.layout=org.apache.log4j.PatternLayout
log4j.appender.default.file.layout.ConversionPattern=%-5p %c: %m%n
当应用程序启动时,它将写入日志 /log/logfile.log 文件
有关 java 应用程序的完整示例,请参阅下文。
https://dzone.com/tutorials/java/log4j/log4j-file-appender-example-1.html
我有一个 java 应用程序。我将我的项目导出为 .war 文件,构建一个 docker 容器并 运行 它。
结构如下。对于日志记录,我使用 java.
中的库import java.util.logging.Logger;
在我的应用程序中,我定义了我的变量:
private static final Logger logger = Logger.getLogger(BusController.class.getName());
对于我使用的输出,例如:
logger.warning("User "+XYZ+" not found!");
当我启动我的 docker 文件时,我为日志安装了一个额外的卷。
REGISTRY=xxxxx.net
VERSION=latest
IMAGE=busMicroservice
SERVICE=busmicroservice
LOCAL_DATA_PATH=/opt/docker-busmicroservice/data
docker run -p xxxx:xxxxx -d -v $LOCAL_DATA_PATH:/logs --name $SERVICE --hostname $SERVICE $REGISTRY/$IMAGE:$VERSION
docker容器成功启动后,我可以用
检查我的音量docker inspect busmicroservice
并且可以看到,我的卷已包含在内。 但是我现在必须做什么,日志将保存在我的文件夹“/logs”中?我必须在我的 java 应用程序中实施什么?
提前致谢!
------------编辑---------
我现在有第二个线程来回答另一个问题:
您需要使用 log4j 文件追加器。 编辑 log4j.properties
log4j.appender.default.file=org.apache.log4j.FileAppender
log4j.appender.default.file.append=true
log4j.appender.default.file.file=/log/logfile.log
log4j.appender.default.file.threshold=INFO
log4j.appender.default.file.layout=org.apache.log4j.PatternLayout
log4j.appender.default.file.layout.ConversionPattern=%-5p %c: %m%n
当应用程序启动时,它将写入日志 /log/logfile.log 文件
有关 java 应用程序的完整示例,请参阅下文。 https://dzone.com/tutorials/java/log4j/log4j-file-appender-example-1.html