8、分布式追踪:代码执行追踪与数据优化

分布式追踪:代码执行追踪与数据优化

1. 代码优化与Span处理器

重新运行程序,span会像之前一样被打印出来。虽然重构后输出没有改变,但代码看起来更简洁了。和之前的示例一样,上下文管理由系统处理,我们无需担心与上下文API交互。使用装饰器让代码阅读更简单,新接触代码的人在为应用添加代码时,也能轻松按照相同模式实现新方法。

目前代码中使用的span处理器,最初的追踪管道配置使用的是 SimpleSpanProcessor 。它会在span结束时立即进行处理和导出,这意味着代码中添加的每个span都会增加应用的延迟,通常这不是我们想要的结果。不过在某些情况下,这可能是正确的选择,比如无法保证在程序中断前主线程之外的其他线程能完成任务。但一般建议span处理与主线程异步进行, BatchSpanProcessor 就是 SimpleSpanProcessor 的替代方案。

以下是 SimpleSpanProcessor BatchSpanProcessor 的对比:
| 处理器类型 | 处理方式 | 对应用延迟的影响 |
| — | — | — |
| SimpleSpanProcessor | 同步处理,span结束时立即导出 | 增加应用延迟 |
| BatchSpanProcessor | 异步处理,通过单独线程按计划或队列达到一定数量时导出 | 减少不必要的延迟 |

BatchSpanProcessor 通过启动一个单独的线程,按计划

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值