Sentry SpringBoot Log4j2 or Logback

Sentry SpringBoot Log4j2 or Logback,第1张

Sentry SpringBoot Log4j2 or Logback 一、系统环境 组件版本Ubuntu20.04SpringBoot2.5.8 二、Sentry联动 1、创建一个新项目

2、获取DNS链接


3、按照官网教程配置Springboot 三、代码示例 1、Controller
package com.example.demosentry.controller;


import io.sentry.Sentry;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@Slf4j
@RestController
@RequestMapping("api")
@Api(tags = "用户信息管理")
public class DemoController {

    @ApiOperation("demo1")
    @GetMapping("demo1")
    public String demo1 () throws Exception{
        //被动发送异常
        int a = 0/0;
        return "demo1";
    }

    @ApiOperation("demo2")
    @GetMapping("demo2")
    public String demo2 (){
        //捕获的异常不会发送Sentry
        try{
            throw new Exception("demo2 Exception");
        }catch (Exception e){

        }
        return "demo2";
    }

    @ApiOperation("demo3")
    @GetMapping("demo3")
    public String demo3 (){
        //主动推送捕获的异常,会发送Sentry
        try{
            throw new Exception("demo3 Exception");
        }catch (Exception e){
            Sentry.captureException(e);
        }
        return "demo3";
    }

    @ApiOperation("demo4")
    @GetMapping("demo4")
    public String demo4 (){
        //info等级日志不会单独发送,需有error或Exception
        log.info("demo4 log info");
        return "demo4";
    }

    @ApiOperation("demo5")
    @GetMapping("demo5")
    public String demo5 (){
        //error等级日志会发送
        log.info("demo5 log info");
        log.error("demo5 log error");
        return "demo5";
    }

    @ApiOperation("demo6")
    @GetMapping("demo6")
    public String demo6 (){
        //异常时info日志也会发送
        log.info("demo5 log info");
        int a= 0/0;
        return "demo6";
    }
}
2、Sentry查看结果 (1)总体结果

Demo2 异常没有被发送, Demo4的info日志没有被发送

(2)demo1

(3)demo3

(4)demo5

info和error日志都发送过来了

(5)demo6

异常时info日志也被发送了

3、application.yml
server:
  port: 8001

sentry:
  dsn: http://项目的dsn
  logging:
    minimum-event-level: info
    minimum-breadcrumb-level: debug
4、pom.xml


    4.0.0
    
        org.springframework.boot
        spring-boot-starter-parent
        2.5.8
         
    
    com.example
    demo-sentry
    0.0.1-SNAPSHOT
    demo-sentry
    Demo project for Spring Boot
    
        1.8
    
    
        
            org.springframework.boot
            spring-boot-starter-web
            
                
                    org.springframework.boot
                    spring-boot-starter-logging
                
            
        

        
            org.springframework.boot
            spring-boot-starter-log4j2
        

        
            org.projectlombok
            lombok
            true
        
        
            org.springframework.boot
            spring-boot-starter-test
            test
        

        
            io.springfox
            springfox-boot-starter
            3.0.0
        

        
            io.sentry
            sentry-spring-boot-starter
            5.5.2
        

        
            io.sentry
            sentry-log4j2
            5.5.2
        







    

    
        
            
                org.springframework.boot
                spring-boot-maven-plugin
                
                    
                        
                            org.projectlombok
                            lombok
                        
                    
                
            
        
    

四、补充说明

页面上没有列出所有文档,更多官方文档需要检索得到,如:springboot

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5684303.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存