一、Sleuth
1.1)Sleuth概述
订单服务有orderId,库存服务有stockId,支付服务有paymentId,作为这一整套流程Sleuth用traceId作为全链路唯一标识进行跟踪,链路中每一个小的调用单元称Span(记录日志)
1.2)普通日志输出
1.3)引入Sleuth的日志输出
1.4)跟踪原理
ParentSpanId表示当前SpanId的上一个工作单元的SpanId
1.5)抽样收集
一般来说日志会全部收集到数仓中,然后针对业务信息和重点日志信息进行提取存储到我们的NoSQL(比如ES)
二、Elastic Stack
2.1)概述
ES负责存储搜索,Logstash根据配置将指定路径的日志收集起来,Kibana负责展示(大部分公司不用Kibana按自己想要的方式去展示)
2.2)
Elastic Stack的产生历史
2.3)
Elastic Stack的应用方式
Filebeat选择将采集日志输出到Kafka是因为直接采集到Logstash和ES容易压力过大,中间加一个弹性较大的异步MQ
Zookeeper配置概述
Kafka配置概述
演示1:下载、启动、配置Filebeat
查看Kafka是否成功创建名为filebeat的Topic
演示2:下载、启动、配置Elasticsearch
演示3:下载、启动、配置Kibana
演示4:下载、启动、配置Logstash
ElasticSearch-head插件中查看ES已经存储了日志的修改信息
演示5:配置服务日志输出
三、Zipkin
3.1)概述
3.2)Zipkin基础架构
3.3)重要组件解释
3.4)Zipkin的使用
3.5)Zipkin配置外部MySQL
下载mysql.sql文件在本地数据库中引入相关表