前言
2018年,CNCF-Landscape提出可观察性(Observability)理念,正式引入IT领域,取代监控名词。可观察系统(Observability System)设计三要素:日志(Logs),指标(Metrics),追踪(Tracing)。
可观测系统为开发,测试,运维人员,提供一套完整地数字化分布式可观察云服务,实现更好的、前所未有的系统可见性。某云的日志服务即是一个比较完整的可观察系统。
分布式系统在达到一定的规模下,链路复杂,以及系统和硬件的不可靠性,需要完成对分布式系统的可观察性需要日志,指标,追踪三大要素。
可观察技术(Observability System)一些文档:
0,https://github.com/cncf/tag-observability
1,https://iamondemand.com/blog/the-3-pillars-of-system-observability-logs-metrics-and-tracing/
2,http://peter.bourgon.org/blog/2017/02/21/metrics-tracing-and-logging.html
3,https://www.honeycomb.io/wp-content/uploads/2018/07/Honeycomb-Guide-Achieving-Observability-v1.pdf
三大因素
日志(Logs)
离散服务调用记录。按相应的文本格式输出到文件或者全文检索系统中。
指标(Metrics)
某些观测详细的聚合信息。比日志能提供更细更量化的数据。占用空间比日志更小。一般用于监控和告警,比如请求调用次数。
追踪(Tracing)
日志(Logs)和指标(Metrics)无法在分布式的级别上详细描述一个完整的服务调用关系,在一个庞大的系统中判断一个调用链及其复杂,因此在基于Dapper论文的下实现调用链的连接。更好理解服务的调用链,排查问题,分析分布式系统瓶颈。
可观察系统产品栈
日志,指标,追踪业内产品栈,参考CNCF。