OpenTelemetry Logging 思维导图,收藏

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: Logs是可观测性关键,提供丰富细节和事件记录,利于故障排查。然而,logs、traces、metrics数据常割裂,阻碍统一分析。为打通关联,有三种常见方法:按时间、Context(如TraceId)和Resource关联。Logs格式灵活但缺乏标准,推荐使用OTel Logs规范。夜莺,一个开源云原生监控工具,和快猫星云的Flashcat平台,旨在统一指标、日志、链路追踪的管理,简化多云环境监控,优化告警处理,提升可观测性实践。

Log 是最常用、最自然的监控数据类型之一,具有以下的优点:

  • 日志的内容比指标更加丰富,可以提供更多的细节信息,帮助开发人员和运维人员更好地理解应用程序的运行状况,通过日志几乎可以重现、还原系统的完整工作过程。
  • 日志的格式灵活,可以方便的记录多样化的事件,包括错误、异常和警告等,而指标通常只能提供统计数据,无法直接反映系统中的具体事件。
  • 日志为文本格式,便于技术人员理解,同时可以被各种文本处理工具、文本搜索工具高效的处理。

现实情况中,logs、traces、metrics 在收集、传输、存储整个链条上,存在相互割裂的情况,导致在对可观测性数据进行统一分析的时候,难以打通。

在可观测性体系中,建立 logs 到 metrics 和 traces 的关联打通,常见的方式有三种:

按照“时间维度”关联

这是从 logs 下钻到 traces 的最基本方式,即按照产生 logs 的时间,去查找该时间段内相应的 traces。这种方式的好处是足够的简单和通用,缺点是关联不够精确。

按照Context 关联

这是从 logs 下钻到 traces 的推荐标准做法,即在 logs 中打印 TraceId、SpanId 等 Trace Context信息,从而精确的根据 TraceId/SpanId 关联到相对应的 traces。这种做法的缺点在于需要在 logs 和 traces 中同时引入 OTel 相关的 SDK,有一定的工作量。

按照Resource关联

这是根据 metrics、logs、traces 三者数据的来源信息,进行关联,比如 node name、pod name、container id、process、app name、 version 等信息。

相比 metrics 和 traces,logs 是“可观测性三支柱”中历史包袱最重的监控数据类型,日志的格式更随意,缺乏标准和规范。推荐在应用研发阶段,按照 OTel Logs 规范打印日志。

关于快猫星云和夜莺

夜莺 (Nightingale) 是一款开源云原生监控工具,是中国计算机学会接受捐赠并托管的第一个开源项目,在GitHub上有8000颗星,有数千家企业用户使用。快猫星云以开源夜莺为内核打造的“Flashcat平台”,是国内顶级互联⽹公司可观测性实践的产品化落地,我们致力于让可观测性技术更好的落地和发挥价值。

你可以通过Flashcat平台,有效改善以下问题:

  1. 希望整个公司统一用一个工具,就可以支持指标、日志、链路追踪数据的采集、可视化、告警,免去搭建和维护多套 Prometheus、Zabbix、Grafana、ELK、Jaeger 的工作量。
  2. 如果有在用多云,并且在多个公有云监控控制台来回切换不方便,希望监控数据、监控视图都是统一的,有更一致的用户体验,同时降低给所有的工程师开通公有云控制台权限带来的安全隐患。
  3. 告警太多,工作老被打断, 可以利用我们提供的 OnCall 值班平台(类似于 PagerDuty),支持告警聚合、降噪、认领、升级、排班,可以在飞书、钉钉、企微中接收和处理告警。
相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
存储 Prometheus Kubernetes
OpenTelemetry 简析
OpenTelemetry 是 CNCF 的一个可观测性项目,旨在提供可观测性领域的标准化方案,解决观测数据的数据模型、采集、处理、导出等的标准化问题,提供与三方 vendor 无关的服务。 2021.02.10,OpenTelemetry 的 tracing spec 达到 1.0 版本 (link),基于这个里程碑,笔者对 OpenTelemetry 进行了探索,判断在可观测性领域带来的价值和发展前景。 下面给出笔者对 OpenTelemetry 的理解,抛砖引玉。由于笔者能力有限,理解不当的地方请大家指正。
OpenTelemetry 简析
|
存储 Web App开发 JSON
OpenTelemetry Log规范解读
本文主要介绍OpenTelemetry Log规范,这一规范来自于Google、Microsoft、AWS、Splunk、DataDog、ES、Fluntd等众多优秀的公司和项目成员,其中有很多点是我们在平时开发、运维需要关注的知识和经验,值得大家一观。
5334 0
OpenTelemetry Log规范解读
|
1月前
|
安全 编译器 API
C++系统日志库精选:深入剖析glog与log4cplus,轻松搭建高效日志系统
C++系统日志库精选:深入剖析glog与log4cplus,轻松搭建高效日志系统
470 0
|
7月前
|
存储 Prometheus Cloud Native
OpenTelemetry项目
OpenTelemetry项目
|
Java Apache
java日志框架详解-Log4j2
java日志框架详解-Log4j2
249 0
|
存储 Java 数据库
Java日志
Java日志
|
Java 大数据
快速入门日志组件logback
你好看官,里面请!今天笔者讲的是快速入门日志组件logback。不懂或者觉得我写的有问题可以在评论区留言,我看到会及时回复。 注意:本文仅用于学习参考,不可用于商业用途,如需转载请跟我联系。
221 2
快速入门日志组件logback
|
网络协议 Java API
【日志技术专题】「logback入门到精通」彻彻底底带你学会logback框架的使用和原理(入门介绍篇)
【日志技术专题】「logback入门到精通」彻彻底底带你学会logback框架的使用和原理(入门介绍篇)
149 0
|
Python
Python编程:scrapy中使用logging,日志出现多次
Python编程:scrapy中使用logging,日志出现多次
136 0