为你推荐
内容简介
贡献者
前言
Ⅰ 引言
1 为什么需要分布式跟踪
微服务与云原生应用程序
什么是可观测性
微服务的可观测性挑战
传统的监控工具
指标
日志
分布式跟踪
我在跟踪领域的经历
为何编写本书
总结
参考资料
2 跟踪一次HotROD之旅
先决条件
从预打包的二进制文件运行
从Docker镜像运行
从源代码运行
启动Jaeger
初识HotROD
架构
数据流
上下文日志
span标记与日志
确定延迟的来源
资源使用属性
总结
参考资料
3 分布式跟踪基础
想法
请求相关性
黑盒推理
特定于域的模式
元数据传播
剖析分布式跟踪
采样
保留因果关系
请求间因果关系
跟踪模型
事件模型
span模型
时钟偏差调整
跟踪分析
总结
参考资料
Ⅱ 数据收集问题
4 OpenTracing的埋点基础
先决条件
项目源代码
Go开发环境
Java开发环境
Python开发环境
MySQL数据库
查询工具(curl或wget)
跟踪后端(Jaeger)
OpenTracing
练习1:Hello应用程序
用Go语言实现Hello应用程序
用Java语言实现Hello应用程序
用Python语言实现Hello应用程序
练习总结
练习2:第一个跟踪
步骤1:创建跟踪器实例
步骤2:启动span
步骤3:注释span
练习总结
练习3:跟踪函数和传递上下文
步骤1:跟踪单个函数
步骤2:将多个span合并为一个跟踪
步骤3:传播进程内上下文
练习总结
练习4:跟踪RPC请求
步骤1:拆解单体
步骤2:在进程之间传递上下文
步骤3:应用OpenTracing推荐的标记
练习总结
练习5:使用baggage
在Go中使用baggage
在Java中使用baggage
在Python中使用baggage
练习总结
练习6:自动埋点
Go中的开源埋点
Java中的自动埋点
Python中的自动埋点
练习7:额外练习
总结
参考资料
5 异步应用程序埋点
先决条件
项目源代码
Java开发环境
Kafka、ZooKeeper、Redis与Jaeger
Tracing Talk聊天应用程序
实现
运行应用程序
观察跟踪
使用OpenTracing埋点
Spring埋点
tracer resolver
Redis埋点
Kafka埋点
埋点异步代码
总结
参考资料
6 跟踪标准与生态系统
埋点形式
分析跟踪部署和互操作性
跟踪的五种含义
了解受众
生态系统
跟踪系统
X-Ray、Stackdriver等
标准项目
总结
参考资料
7 使用服务网格进行跟踪
服务网格
服务网格的可观测性
先决条件
项目源代码
Java开发环境
Kubernetes
Istio
Hello应用程序
使用Istio进行分布式跟踪
使用Istio生成服务图
分布式上下文和路由
总结
参考资料
8 关于采样
基于头部的一致性采样
概率采样
速率限制采样
保证吞吐量的概率采样
自适应采样
上下文敏感的采样
实时采样或调试采样
如何处理过采样
基于尾部的一致性采样
部分采样
总结
参考资料
Ⅲ 从跟踪中获取价值
9 跟踪的价值
作为知识库的跟踪
服务图
深度,路径感知服务图
检测架构问题
性能分析
关键路径分析
识别跟踪模式
范例
延迟直方图
长期性能分析
总结
参考资料
10 分布式上下文传播
布朗跟踪平面
Pivot Tracing
混沌工程
流量标记
生产环境测试
生产环境调试
在生产环境中进行开发
总结
参考资料
11 集成指标与日志
可观测性的三大支柱
先决条件
项目源代码
Java开发环境
在Docker中运行服务器
在Kibana中声明索引模式
运行客户端
Hello应用程序
与指标集成
通过跟踪埋点实现标准指标
向标准指标中添加上下文
上下文感知的指标API
与日志集成
结构化日志记录
将日志与跟踪上下文关联起来
上下文感知的日志API
在跟踪系统中捕获日志
是否需要单独的日志记录和跟踪后端
总结
参考资料
12 通过数据挖掘提炼洞见
特征提取
数据挖掘管道的组件
跟踪后端
跟踪完成触发器
特征提取器
聚合器
特征提取练习
先决条件
项目源代码
在Docker中运行服务器
在Elasticsearch中定义索引映射
Java开发环境
微服务模拟器
在Kibana中定义索引模式
span计数作业
跟踪完成触发器
特征提取器
观测趋势
谨防推断
历史分析
实时分析
总结
参考资料
Ⅳ 部署和维护跟踪基础设施
13 在大型组织中实施跟踪
为什么很难部署跟踪埋点
减少采用障碍
标准框架
内部适配器库
默认启用跟踪
monorepo
与现有的基础设施集成
从哪里开始
构建文化
解释价值
与开发人员工作流集成
跟踪质量指标
故障排除指南
跳出关键路径
总结
参考资料
14 分布式跟踪系统的底层架构
为什么需要自己“造轮子”
定制和集成
带宽成本
把控数据
押注新兴标准
架构和部署模式
基本架构:代理+收集器+查询服务
流式架构
多租户
安全
在多个数据中心运行
监控和故障诊断
弹性
过采样
调试跟踪
数据中心故障转移导致的流量峰值
无休止的跟踪
长跟踪
总结
参考资料
后记
参考资料
买过这本书的人还买过
读了这本书的人还在读
同类图书排行榜