从Opentracing、OpenCensus 到 OpenTelemetry,看可观测数据标准演进史
作者:可观测 伴随着分布式应用、Serverless 应用被越来越多开发者及企业所接受,但其背后所隐藏的运维问题也逐渐凸显出来--微服务架构中请求链路过长从而导致问题定位时间长,运维想要日常监控也非常困难。以一个具体问题举例,在分布式应用中完成一个单一用户请求可能会需要多个不同的微服务处理,这其中任何一个服务失败或性能拉垮,都会对用户请求响应造成极大影响。随着业务不断扩张,这个调用链也越来越复杂。仅凭借打印日志或 APM 性能监控很难做到全景浏览或者一钻到底。对于问题排查或性能分析时,这无异于盲人摸象。 面对这样的问题,Google 发表了论文《"Dapper - a Large-Scale Distributed Systems Tracing Infrastructure"》[1]介绍他们的分布式跟踪技术,并认为分布式跟踪系统应该满足以下业务需求: • 性能低损耗: 分布式跟踪系统对服务的性能损耗应尽可能做到忽略不计,尤其是那些对性能敏感的应用。 • 低侵入: 尽可能做到业务代码的低侵入或无侵入。 • 快速扩展:能够随着业务或微服务规模快速扩大。 • 实时展现:低延时采集数据,实时...
