gpt4 book ai didi

java - 如何使用属性文件在 log4j2 中创建多个日志文件?

转载 作者:行者123 更新时间:2023-11-30 10:19:52 27 4
gpt4 key购买 nike

我正在使用 .property 文件在特定路径中创建日志文件,但我正在使用它创建单个文件。以下是我的属性文件代码:

    status = error
dest = err
name = PropertiesConfig

property.filepath= /ap
property.filename =${filepath}/ai.log
property.filename1 =${filepath}/file1.log
property.filename2 =${filepath}/file2.log

filter.threshold.type = ThresholdFilter
filter.threshold.level = debug

appender.console.type = Console
appender.console.name = STDOUT
appender.console.layout.type = PatternLayout
appender.console.layout.pattern = %d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n

appender.file.type = RollingFile
appender.file.name = RootFile1
appender.file.fileName = ${filename}
appender.file.filePattern = ${filepath}/%d{yyyyMMdd}/cpl.mw.%d{yyyyMMdd}.%i.log.gz
appender.file.layout.type = PatternLayout
#appender.file.layout.pattern = %d %p %C{1.} [%t] %m%n
appender.file.layout.pattern = %d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
appender.file.policies.type = Policies
appender.file.policies.time.type = TimeBasedTriggeringPolicy
appender.file.policies.time.interval = 1
appender.file.policies.time.modulate = true
appender.file.policies.size.type = SizeBasedTriggeringPolicy
appender.file.policies.size.size=50MB
appender.file.strategy.type = DefaultRolloverStrategy
appender.file.strategy.max = 20

appender.rolling1.type = RollingFile
appender.rolling1.name = RollingFile1
appender.rolling1.fileName = ${filename1}
appender.rolling1.filePattern = ${filepath}/%d{yyyyMMdd}/cpl.mw.%d{yyyyMMdd}.%i.log.gz
appender.rolling1.layout.type = PatternLayout
#appender.rolling1.layout.pattern = %d %p %C{1.} [%t] %m%n
appender.rolling1.layout.pattern = %d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
appender.rolling1.policies.type = Policies
appender.rolling1.policies.time.type = TimeBasedTriggeringPolicy
appender.rolling1.policies.time.interval = 1
appender.rolling1.policies.time.modulate = true
appender.rolling1.policies.size.type = SizeBasedTriggeringPolicy
appender.rolling1.policies.size.size=50MB
appender.rolling1.strategy.type = DefaultRolloverStrategy
appender.rolling1.strategy.max = 20



appender.rolling2.type = RollingFile
appender.rolling2.name = RollingFile2
appender.rolling2.fileName = ${filename2}
appender.rolling2.filePattern = ${filepath}/%d{yyyyMMdd}/cpl.mw.%d{yyyyMMdd}.%i.log.gz
appender.rolling2.layout.type = PatternLayout
appender.rolling2.layout.pattern = %d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
appender.rolling2.policies.type = Policies
appender.rolling2.policies.time.type = TimeBasedTriggeringPolicy
appender.rolling2.policies.time.interval = 1
appender.rolling2.policies.time.modulate = true
appender.rolling2.policies.size.type = SizeBasedTriggeringPolicy
appender.rolling2.policies.size.size=50MB
appender.rolling2.strategy.type = DefaultRolloverStrategy
appender.rolling2.strategy.max = 20

loggers
logger.name=file1
logger.level = debug
logger.additivity = true
logger.appenderRefs = rolling1,stdout
logger.appenderRefs.level = debug
logger.appenderRef.rolling1.ref = RollingFile1
logger.appenderRef.stdout.ref = STDOUT

logger.name=file2
logger.level = debug
logger.additivity = true
logger.appenderRefs = rolling2
logger.appenderRefs.level = debug
logger.appenderRef.rolling2.ref = RollingFile2

上面的代码是我的 xyz.properties 文件我想使用这个配置文件创建多个日志。我的属性配置文件创建多个文件但不在日志文件中放置不同的不同日志。我使用下面的代码从 JAVA 中调用它:

private static final Logger logCommon = LogManager.getLogger("file1");
private static final Logger logAnalytics = LogManager.getLogger("file2");

public static void main(String[] args) throws Exception {

logCommon.info ("file1 Need it save into commons.log file");
logAnalytics.info ("file2 Only save into analytics.log file");

}

2018-01-22 12:52:23 INFO file2:301 - file2 Only save into analytics.log file log put in both log files.

我引用以下链接:

Log4j2: Dynamic creation of log files for multiple logs

Wildcard pattern for RoutingAppender of Log4j2

How to write different logs in different files with log4j2 (MDC in xml)?

http://logging.apache.org/log4j/2.x/manual/extending.html

我引用了以下链接但没有得到任何解决方案:

How to implement multi file appender in log4j2

How to avoid multiple log files in slf4j logging?

log4j2 - generate application specific log files in weblogic

How to create multiple log files of different content with log4j

enter link description here

log4j2 KeyValuePair for .properties file

How to Create a Custom Appender in log4j2?

Configuring async loggers in log4j2.properties

How to create custom RewritePolicy in log4j2?

How to set the log level on a class in log4j2 properties

Increasing file indexing on OnStartupTriggeringPolicy in log4j2

how to configure log file path to current working target directory in log4j2 xml format

How to configure RestTemplate debug logging in log4j2 xml

Creating multiple log files in iPhone app

Log4j2 using multiple appender and logger

How to create multiple log file programatically in log4j2?

How to create multiple log file programatically in log4j2?

How to specify log file in log4j2

Log separate log levels to separate files in log4j2 properties file

Unable to create multiple log files based on the ThreadContext map values using routing appender in log4j2

How to create Custom Rolling File appender in log4j2 - customized file name

Different log files for multiple threads using log4j2

Log4j2 YAML generate multiple log files issue

How to create multiple log files using log4j

Log4j2 - Overriding log file programmatically

How to create a rolling file appender plugin in log4j2

最佳答案

请为两个命名记录器设置additivity=false

此外,添加根记录器配置以告知 Log4j2 将记录调用发送到“file1”和“file2”记录器之外的位置:

rootLogger.level = info
rootLogger.appenderRef.stdout.ref = STDOUT

另外,给你命名的记录器一个唯一的前缀:

logger.aaa.name = file1
logger.aaa.additivity = false
logger.aaa.level = debug
logger.aaa.appenderRef.rrr.ref = RollingFile1

logger.bbb.name = file2
logger.bbb.additivity = false
logger.bbb.level = debug
logger.bbb.appenderRef.sss.ref = RollingFile2

关于java - 如何使用属性文件在 log4j2 中创建多个日志文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48379863/

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