美文网首页
关于log4j2的一点思考

关于log4j2的一点思考

作者: 小王ovo | 来源:发表于2023-01-29 17:00 被阅读0次

    1.是否桥接slf4j-log4j2?

    好处

    1.少用一个 log4j-slf4j-impl,打包体积更小.
    2.少一层桥接性能有提升

    坏处

    老项目slf4j用的太多,迁移工作量大.

    其他的一些取舍

    https://stackoverflow.com/questions/41498021/is-it-worth-to-use-slf4j-with-log4j2/41500347#41500347

    一些其他想法

    可以使用lombok的注解来减少迁移难度,平时使用也更方便

    2.如何实现springclound体系下,不同环境不同日志配置.

    方案

    1.配置中心拉取配置动态修改(放弃)
    https://logging.apache.org/log4j/2.x/log4j-spring-cloud-config/log4j-spring-cloud-config-client/index.html
    因为没有更为复杂的需求,暂时搁置.其次需要维护远程配置文件,增加了一点维护复杂度.

    2.Log4j Spring Boot Support
    https://logging.apache.org/log4j/2.x/log4j-spring-boot/index.html
    只需要一个额外jar(log4j-spring-boot)即可,log4j2-core的版本续要高于2.15.0,且log4j-spring-boot版本也需要和log4j-core保持一致.
    看了一下代码,就三个class文件,扩展了配置中一个标签(SpringProfile)用于读取springboot配置文件的
    spring:
    profiles:
    active: @profiles.active@

    @profiles.active@是从maven的pom获取值的方式,自行查阅即可.

    关于log4j2.xml添加一下内容即可

        <SpringProfile name="dev">
            <loggers>
            //自行补充
            </loggers>
        </SpringProfile>
    
        <SpringProfile name="prod">
            <loggers>
            //自行补充
            </loggers>
        </SpringProfile>
    

    个人比较喜欢这一个方案,和maven打包相关联,且没有改变项目目前的文件结构,环境的区分也很清楚.

    相关文章

      网友评论

          本文标题:关于log4j2的一点思考

          本文链接:https://www.haomeiwen.com/subject/pgsphdtx.html