首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在RollingFileAppender的fileName中使用log4j2配置名称

是指在log4j2配置文件中,通过fileName属性来指定日志文件的名称。log4j2是一个流行的Java日志框架,用于记录应用程序的日志信息。

在log4j2配置文件中,可以使用占位符${config:}来引用配置文件中的属性值。因此,可以在fileName属性中使用log4j2配置名称,以动态地生成日志文件的名称。

以下是一个示例的log4j2配置文件中使用log4j2配置名称的示例:

代码语言:txt
复制
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="INFO">
    <Appenders>
        <RollingFile name="RollingFile" fileName="${config:logFileName}.log"
                     filePattern="${config:logFileName}-%d{MM-dd-yyyy}-%i.log.gz">
            <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n" />
            <Policies>
                <SizeBasedTriggeringPolicy size="10 MB" />
            </Policies>
            <DefaultRolloverStrategy max="10" />
        </RollingFile>
    </Appenders>
    <Loggers>
        <Root level="info">
            <AppenderRef ref="RollingFile" />
        </Root>
    </Loggers>
</Configuration>

在上述配置文件中,fileName属性使用了${config:logFileName}.log的形式,其中logFileName是一个配置文件中定义的属性。通过这种方式,可以根据配置文件中的属性值动态地生成日志文件的名称。

使用log4j2配置名称的优势是可以灵活地配置日志文件的名称,而不需要在代码中硬编码文件名。这样可以方便地根据不同的环境或需求来配置日志文件的名称。

适用场景:在需要根据配置文件动态生成日志文件名称的场景下,可以使用log4j2配置名称来实现。

推荐的腾讯云相关产品和产品介绍链接地址:

  • 腾讯云日志服务(CLS):https://cloud.tencent.com/product/cls
  • 腾讯云云服务器(CVM):https://cloud.tencent.com/product/cvm
  • 腾讯云对象存储(COS):https://cloud.tencent.com/product/cos
  • 腾讯云数据库(TencentDB):https://cloud.tencent.com/product/cdb
  • 腾讯云容器服务(TKE):https://cloud.tencent.com/product/tke

请注意,以上链接仅供参考,具体的产品选择应根据实际需求和情况进行评估和决策。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Log4j2 - 动态生成Appender

实现思路 将所有User的日志都打印到日志文件logs/CNTCore.log中,这个可以直接使用配置文件log4j2.xml来解决,一个简单的配置如下: 1 2 3 4 5 6 7 8...该logger在使用domainCntCoreLog这个RollingFileAppender时还设置了一个过滤器ThreadContextMapFilter,这个Filter用来控制logger只能对指定了...,在扫描配置文件是否改动时,还会报错,原因是在RollingFileAppender的FileName和filePattern里使用了占位符。...在另起线程扫描配置文件时,该占位符时取不到值的,于是就会报错。...参考链接 运行时添加log4j2的appender log4j2如何动态的创建logger和appender log4j2 不使用配置文件,动态生成logger对象 log4j2的MDC应用配置 警告

1.4K20

Java 日志框架

在异步日志中,Log4j2 使用独立的线程去执行 I/O 操作,可以极大地提升应用程序的性能。 在官方的测试中,Log4j1/Logback/Log4j2 三个日志框架的异步日志性能比较如下图所示。...使用来定义常量,以便在其他配置项中引用,该配置是可选的,例如定义日志的存放位置 Appenders 输出源,用于定义日志输出的地方。...RollingFileAppender RollingFileAppender 是一个 OutputStreamAppender,它写入 fileName 参数中指定的 File,并根据 TriggeringPolicy...更多配置文件参考官网 2.4 添加配置文件 默认情况下,Log4j2 在 classpath 下查找名为log4j2.xml的配置文件。你也可以使用 Java 启动命令指定配置文件的全路径。...这是 log4j2 继承机制问题,在 Log4j2 中,logger 是有继承关系的,root 是根节点,在 log4j2 中,有个 additivity 的属性,它是子 Logger 是否继承 父 Logger

1.2K20
  • 你知道 log4j2 各项配置的全部含义吗?带你了解 log4j2 的全部组件

    在 java 中,存在着很多日志框架,诸如 log4j、logback,以及在他们基础上的改进版 log4j2,此前的文章中也已经介绍过,log4j2 凭借其技术改进,引入无锁异步等机制让日志吞吐量、性能都有大幅提升...那么,我们要如何配置和使用 log4j2 呢? 2. log4j2 最基本的使用 log4j2 已经做到了开箱即用。...log4j2 支持 xml、json、yaml 以及 .properties 等多种配置方式,我们最常用的一般是使用 xml 格式的配置,只需要将 log4j2.xml 放到代码的 classpath...这样一来,我们再来看上面的配置,就非常清楚了。 上述配置中,配置了一个 Logger,用来打印 INFO 级别的日志,而他使用的 Appender 是名为 Console 的 Appender。...7.4 限制时间的 filter -- TimeFilter TimeFilter 允许只在一天中的指定时间进行日志记录: fileName

    2.5K20

    Log4j、Log4j2问题汇总

    ", id, size, color, pattern); 注意:在Log4j2中,这种占位符打印的方式,最多只能支持到9个变量参数。...在脚本中指定配置文件路径 通常项目会通过bat或者shell脚本来运行,而配置文件又存放在其他路径,需要在脚本中另外指定配置文件的路径。...ConfiguratonFileWatcher是用来扫描配置文件是否被改动过的,在配置文件中设置的扫描间隔是30s: 1 2 3 ...解决方案三 不要在RollingFile的fileName和filePattern属性里使用到${ctx:domainId}等NDC和MDC的写法,这样会导致在log4j2异步扫描重加载配置文件的时候报错...Log4j2中RollingFile的文件滚动更新机制 log4j2定期生成和删除过期日志文件的配置 Log4j2进阶使用(按大小时间备份日志) log4j(二)——如何控制日志信息的输出?

    3.9K30

    Spring Boot(十)Logback和Log4j2集成与日志发展史

    1.6 Log4j2 Log4j2有着和Logback相同的功能,但又有自己单用的功能,比如:插件式结构、配置文件优化、异步日志等。...Log4j2是Log4j的升级,它比其前身Log4j 1.x提供了重大改进,并提供了Logback中可用的许多改进,同时修复了Logback架构中的一些固有问题。...Logback和Log4j2在Spring Boot中的实现。...日志组成解读: 日期和时间:毫秒精度,易于排序 日志级别:trace、debug、info、warn、error(日志级别依次从低到高) 进程ID ---分隔符 线程名称:括在方括号中(可以截断控制台输出...2.3 自定义日志配置 日志服务在ApplicationContext创建前就初始化了,所以通过设置属性和传统的配置XML文件,可以对日志进行管理和控制。

    1.6K20

    Java日志框架学习--LogBack和Log4j2--下

    RollingFileAppender,它继承了FileAppender,因此父类中能配置的属性,这里都可以配置,我们只需要关注当前类新增的查日志拆分策略属性即可。...在当前RollingFileAppender中也为我们提供了两个设置日志拆分策略的set方法: 先看一波如何配置,再来分析源码: 在多线程场景中,异步记录器的吞吐量比Log4j 1.x和Logback高18倍,延迟低。 自动重新加载配置 与Logback一样,Log4j2可以在修改时自动重新加载其配置。...无垃圾机制 在稳态日志记录期间,Log4j2 在独立应用程序中是无垃圾的,在Web应用程序中是低垃圾。这减少了垃圾收集器的压力,并且可以提供更好的响应性能。...全局异步:所有的日志都异步的记录,在配置文件上不用做任何改动,只需要在jvm启动的时候增加一个参数即可实现。 混合异步:你可以在应用中同时使用同步日志和异步日志,这使得日志的配置方式更加灵活。

    1.1K10

    详解 Java 主流日志工具库

    题 图:pexels 来 源:juejin.im/post/5c8f35bfe51d4545cc650567 在项目开发中,为了跟踪代码的运行情况,常常要使用日志来记录信息。...在 Logback 中,Appender 中的异常永远不会对应用程序可见。在 Log4j 中,可以将 Appender 配置为允许异常渗透到应用程序。...Log4j2 在多线程场景中,异步 Loggers 的吞吐量比 Log4j 1.x 和 Logback 高 10 倍,延迟低几个数量级。...日志门面是对不同日志框架提供的一个 API 封装,可以在部署的时候不修改任何配置即可接入一种日志实现方案。...属性: name:设置 appender 名称。 class:设置具体的实例化类。 作用:设置日志文件路径。 作用:设置过滤器。 要点:可以配置零个或多个。

    91000

    最牛逼的 Java 日志框架,性能无敌,横扫所有对手.....

    log4j2 在目前JAVA中的日志框架里,异步日志的性能是最高的,没有之一。...中,appender的配置从使用 Appender 实现名即标签名的形式,语法上更简洁一些: log4j2的maven依赖 log4j-api在log4j-core中已经有依赖了,直接依赖core即可 org.apache.logging.log4j...不过如果是新系统的话,建议直接上log4j2的api吧,可以享受所有log4j2的功能,使用slf4j之类的api时,上面说的参数格式化之类的功能就无法使用了。 全异步配置(重要!!)...推荐配置log4j2 全异步(all async),在你的启动脚本中增加一个系统变量的配置: -Dlog4j2.contextSelector=org.apache.logging.log4j.core.async.AsyncLoggerContextSelector

    1.1K20
    领券