Apple公司工程师Cindy Sridharan在其博文“监控与可观察性”中首次将Observability引入开发者视野。对于软件而言,监控与可观察性是两个不同的概念。监控旨在识别系统是否正常运行,而可观察性则探究运行不畅的原因。0x01 背景云原生计算基金会(Cloud Native Computing Foundation,简称CNCF)发布了OpenTracing标准,旨在统一链路跟踪中的相关标准和规范。Google发布了OpenCensus项目,包含Metrics标准和采集Agent、Collector规范。由于OpenTracing与OpenCensus存在交集,2019年CNCF合并了OpenTracing与OpenCensus,推出了OpenTelemetry项目。该项目旨在建立标准规范,统一Metrics、Logs和Traces三种数据,其核心技术是产生、收集和处理可观测性数据,并支持传输到分析软件中。OpenTelemetry的问世加速了云原生可观测性技术和生态的发展。2020年9月,CNCF发布了可观测性推荐产品,主要工具包括Prometheus、Grafana、Elastic、Jaeger、OpenTelemetry。可观测性已成为云原生的一项必备要素。0x02 实现路径2.1 Pod内以边车(sidecar)+ Jaeger Collector + Kafka+ Elasticsearch + Logstash2.2 基于eBPF的云原生可观测性2.3 OpenTelemetry框架下的组合2.4 Prometheus、Grafana、AlertManager + Fluentd、ElasticSearch、Kibana0xff 参考文档