链接追踪系列-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中也可以搜索到:

相关推荐
seven97_top7 小时前
SpringCloud 常见面试题(二)
后端·spring·spring cloud
小坏讲微服务8 小时前
Spring Cloud Alibaba整合 Kafka 的完整实现
分布式·spring cloud·kafka·消息队列·springboot·linq
q***06291 天前
IoT DC3 是一个基于 Spring Cloud 的开源的、分布式的物联网(IoT)平台本地部署步骤
物联网·spring cloud·开源
楠枬1 天前
服务注册与发现——Eureka
spring cloud·eureka·服务发现
安全检测中1 天前
利用ELK发现通过键盘记录器窃取信息
elk
g***86691 天前
springcloud-eureka与gateway简易搭建
spring cloud·eureka·gateway
n***63271 天前
SpringCloud 微服务框架
spring·spring cloud·微服务
h***06651 天前
SpringCloud Gateway 集成 Sentinel 详解 及实现动态监听Nacos规则配置实时更新流控规则
spring cloud·gateway·sentinel
C2H5OH6662 天前
RabbitMQ讲解-基础篇
spring cloud·消息队列·rabbitmq
Q***l6872 天前
后端服务网格可观测性,Jaeger追踪可观测性实践:Jaeger追踪详解
spring cloud·objective-c·p2p