分布式追踪:HotROD 应用的性能优化与资源归因
1. Span 标签与日志
在分布式追踪中,Span 是一个重要的概念,它代表了系统中一个特定操作的执行范围。除了基本的 Span 信息,每个 Span 还包含一个名为“Process”的部分,看起来像一组标签集合,这些进程标签描述的是生成追踪记录的应用程序,而非单个 Span。
以 Customer Span 和 MySQL Span 为例,在 Customer Span 中,有一个 http.url 标签显示 /customer 端点的请求参数为 customer=123 ,同时还有两条日志记录该 Span 执行期间的情况。在 MySQL Span 中, sql.query 标签展示了执行的具体 SQL 查询语句 SELECT * FROM customer WHERE customer_id=123 ,以及一条关于获取锁的日志。
Span 标签和日志的区别在于:标签通常适用于整个 Span,用于描述 Span 的一些通用属性;而日志代表 Span 执行期间发生的某些事件,且每条日志都有一个时间戳,该时间戳落在 Span 的开始 - 结束时间区间内。追踪系统不会像跟踪 Span 之间的因果关系那样明确跟踪日志事件之间的因果关系,因为可以从时间戳推断出来。
2. 识别延迟来源
2.1 HotROD 应用性能分析
通过分析 HotROD 应用的追踪数据,可以得出以下结论:
1. 客户服务
超级会员免费看
订阅专栏 解锁全文
28

被折叠的 条评论
为什么被折叠?



