当前位置: 首页 > 知识库问答 >
问题:

log4j2:使用属性记录到滚动文件和stdout

翟丰茂
2023-03-14

我的属性文件如下:

status = error

name = PropertiesConfig

filters = threshold

filter.threshold.type = ThresholdFilter

filter.threshold.level = debug

appenders = console, rolling

appender.console.type = Console

appender.console.name = STDOUT

appender.console.layout.type = PatternLayout

appender.console.layout.pattern = %-4r %-5p [%t] %c - %m%n

appender.rolling.type = RollingFile

appender.rolling.name = RollingFile

appender.rolling.fileName = mypathtofilehere

appender.rolling.filePattern = CrashDesigner-%d{MM-dd-yy-HH-mm-ss}-%i.log.gz

appender.rolling.layout.type = PatternLayout

appender.rolling.layout.pattern = %d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n

appender.rolling.policies.type = Policies

appender.rolling.policies.size.type = SizeBasedTriggeringPolicy

appender.rolling.policies.size.size=10MB

appender.rolling.strategy.type = DefaultRolloverStrategy

appender.rolling.strategy.max = 40

loggers = rolling.file

logger.rolling.file.name = com.myapp

logger.rolling.file.level = debug

logger.rolling.file.additivity = false

logger.rolling.file.appenderRefs = rolling

logger.rolling.file.appenderRef.rolling.ref = RollingFile

rootLogger.level = debug

rootLogger.appenderRefs = stdout

rootLogger.appenderRef.stdout.ref = STDOUT

共有1个答案

乐正洲
2023-03-14

我在这里看到了两种可能性。要么

>

  • 将以下行更改为true:logger.rolling.file.additivity=true

  •  类似资料:
    • 我使用Spring Boot和log4j2进行日志记录,因为我希望日志写在文件上而不是控制台上。所以我实现了log4j2.properties并将其保存在Spring Boot项目的资源文件夹下。

    • 上面是log4j2的一个片段。xml配置文件,我想将其转换为属性。 问题是当我在同一个文件(属性)中定义多个记录器时,只有根记录器工作,这意味着改变其他记录器的级别不会做任何事情。 在同一个属性配置文件中定义多个记录器的正确方法是什么? 编辑: 这是我尝试过的属性配置,但不起作用。

    • 有办法得到滚动文件名吗?我写了自定义插件,信号文件滚动,但我需要得到滚动文件的文件名。我的插件从java代码发出信号: 自定义插件:

    • 我使用log4j2并试图日志与对数旋转。具体来说,我想以10MB的最大大小登录,并无限制地旋转。下面的配置生成3代滚动文件,因为“DefaultRolloverStrategy max”设置为3。你能指导我如何在最大10MB的大小下记录无限数量的文件吗?

    • 我有下面的Log4J2配置XML: 但是,每当log4j2 appender写入文件时,它在写入指定的文件路径时不会使用正确的字符串。 log4j2 appender第一次写入文件时,会写入由指定的正确文件路径。但是,只要将具有另一个Id的员工的信息放入线程上下文中,appender仍然会记录到旧文件路径。 例如,appender第一次记录时,它会写入正确的路径: 但当记录器记录下一个员工Id(使

    • 这是我的log4j2.xml 我想实现每小时滚动的每日滚动文件,到目前为止,我还没有能够产生适当格式的日志,正如我所记得的,间隔参数似乎是按天而不是按小时递增。 我想实现这一点: 路由器。日志-- 路由器。日志2014-06-20-00 路由器。日志2014-06-20-01 ... 路由器。日志2014-06-20-23 路由器。日志2014-06-21-00 ... 相反,我做到了这一点: r