springboot 采用log4j2框架,并通过gelf 发送数据到logstash

1、maven引入jar包

        <dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter</artifactId>
            <exclusions><!-- 去掉logback配置 -->
                <exclusion>
                    <artifactId>spring-boot-starter-logging</artifactId>
                    <groupId>org.springframework.boot</groupId>
                </exclusion>
            </exclusions>
		</dependency>

        <!--log4j2-->
        <dependency> <!-- 引入log4j2依赖 -->
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-log4j2</artifactId>
        </dependency>
        <dependency><!-- 引入gelf依赖 -->
            <groupId>biz.paluch.logging</groupId>
            <artifactId>logstash-gelf</artifactId>
            <version>1.15.1</version>
        </dependency>

 2、配置文件增加引入log4j2日志配置文件my.xml

在项目中指定 log4j2 的配置文件
        如果 log4j2 框架使用的是 springboot 默认的命名方式 log4j2-spring.xml ,则不需要配置,直接在项目的 resources 目录下创建 log4j2-spring.xml 文件即可;如果使用自定义命名的方式,需要在项目的配置文件中 application.properties中添加以下配置。

 

logging.config=classpath:my.xml

3、log4j2的日志输出配置

<?xml version="1.0" encoding="UTF-8"?>
<!--Configuration后面的status,这个用于设置log4j2自身内部的信息输出,可以不设置,当设置成trace时,你会看到log4j2内部各种详细输出-->
<!--monitorInterval:Log4j能够自动检测修改配置 文件和重新配置本身,设置间隔秒数-->
<configuration monitorInterval="600">

    <!-- 优先级从高到低分别是 OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL -->
    <!-- 单词解释: Match:匹配 DENY:拒绝 Mismatch:不匹配 ACCEPT:接受 -->
    <!-- DENY,日志将立即被抛弃不再经过其他过滤器; NEUTRAL,有序列表里的下个过滤器过接着处理日志; ACCEPT,日志会被立即处理,不再经过剩余过滤器。 -->
    <!--输出日志的格式
     %d{yyyy-MM-dd HH:mm:ss, SSS} : 日志生产时间
     %p : 日志输出格式
     %c : logger的名称
     %m : 日志内容,即 logger.info("message")
     %n : 换行符
     %C : Java类名
     %L : 日志输出所在行数
     %M : 日志输出所在方法名
     hostName : 本地机器名
     hostAddress : 本地ip地址 -->

    <!--变量配置-->
    <Properties>
        <!-- 格式化输出:%date表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度 %msg:日志消息,%n是换行符-->
        <!-- %logger{36} 表示 Logger 名字最长36个字符 -->
        <property name="LOG_PATTERN" value="%date{HH:mm:ss.SSS} [%thread] %-5level %logger{36}:%L  - %msg%n" />
        <property name="logPattern">%d{yyyy-MM-dd HH:mm:ss.SSS} => [%thread] =&g
  • 7
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值