gpt4 book ai didi

java - 项目之间的 Log4j 共享

转载 作者:行者123 更新时间:2023-11-30 09:01:40 24 4
gpt4 key购买 nike

我将 Log4J 日志记录作为我的 Java 桌面应用程序项目的一部分实现,并且运行良好。

现在我有另一个项目并希望这两个项目共享相同的日志文件。这两个项目都捆绑在我的应用程序中,因此它们共享日志文件很有意义。这怎么可能?

目前这是我所拥有的:

记录器类:

package com.application.logging;

import org.apache.log4j.Logger;

public class LoggingSample {
private static Logger logger = Logger.getLogger("Visualx");

public static Logger getLogger() {

return logger;
}

public static void setLogger(Logger logger) {
LoggingSample.logger = logger;
}
}

Log4j.properties 文件:

# Log levels
log4j.rootLogger=INFO,CONSOLE,R
# Appender Configuration
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
# Pattern to output the caller's file name and line number
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n
# Rolling File Appender
log4j.appender.R=org.apache.log4j.RollingFileAppender
# Path and file name to store the log file
log4j.appender.R.File=${user.home}/log/testlog.log
log4j.appender.R.MaxFileSize=200KB
# Number of backup files
log4j.appender.R.MaxBackupIndex=2
# Layout for Rolling File Appender
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%d - %c - %p - %m%n

最佳答案

即使这在技术上可行(我对此表示怀疑,因为两个进程需要同时打开一个文件),这通常不被认为是最佳实践。

最好写入单独的文件并确保实际的日志语句有意义,例如使用允许通过所有日志文件跟踪事件的引用。

如果你真的需要合并/捆绑东西,我建议在操作系统级别实现它(cronjob,...)

关于java - 项目之间的 Log4j 共享,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26291817/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com