链接追踪系列-09.spring cloud项目整合elk显示业务日志

准备工作:

参看本系列之前篇:服务器安装elastic search + 本机docker启动的kibana-tencent + 使用本机安装的logstash。。。

本微服务实现的logstash配置如下:

  • 使用腾讯云redis

  • 启动本机mysql

  • 启动本机docker

    启动nacos,微服务依赖它作为服务注册发现和配置中心

    启动kibana-tencent准备查看业务日志数据

  • 启动本机zipkin server

    链路追踪,可参看 试验zipkin初步 篇

    不启动zipkin server也不影响功能

  • 启动gateway+auth

    auth的日志配置如下:其中一部分,整合logstash的,gateway微服务类似。

    调用接口测试:

    控制台和日志文件都在logback-spring.xml中有相应配置,所以日志也输出到console+日志文件中了

    查看kibana: 可以看到traceId,业务message内容,模块等等信息。。。

    最后一步:把traceId 输出到接口请求响应头中,这样就可依据traceId去kibana中查找链路日志,排查问题

    问题来了:代码中如何获取traceid值呢?

在IgnoreUrlsRemoveJwtFilter类中:流量拦截的入口,直接流入Tracer实例:


FYI: 在sleuth官方reference.pdf给出的示例中,是通过单独写一个filter,给请求链中加一道traceId请求头。

测试:

对应在kibana中也可以搜索到:

相关推荐
陆鳐LuLu13 小时前
日志管理利器:基于 ELK 的日志收集、存储与可视化实战
运维·elk·jenkins
程序猿熊跃晖19 小时前
多环境日志管理:使用Logback与Logstash集成实现高效日志处理
spring boot·elk·logback
茶本无香1 天前
kafka+spring cloud stream 发送接收消息
spring cloud·kafka·java-zookeeper
Swift社区1 天前
【微服务优化】ELK日志聚合与查询性能提升实战指南
spring·elk·微服务·云原生·架构
陌殇殇1 天前
002 SpringCloudAlibaba整合 - Feign远程调用、Loadbalancer负载均衡
java·spring cloud·微服务
m0_675447081 天前
Java版企电子招标采购系统源业码Spring Cloud + Spring Boot +二次开发+ MybatisPlus + Redis
java·spring cloud·企业电子招投标系统源码·招投标系统源码
LUCIAZZZ2 天前
EasyExcel快速入门
java·数据库·后端·mysql·spring·spring cloud·easyexcel
黄名富2 天前
Spring Cloud — 深入了解Eureka、Ribbon及Feign
分布式·spring·spring cloud·微服务·eureka·ribbon
LUCIAZZZ2 天前
SkyWalking快速入门
java·后端·spring·spring cloud·微服务·springboot·skywalking
m0_748245172 天前
SpringCloud-使用FFmpeg对视频压缩处理
spring·spring cloud·ffmpeg