观测云对接 Jaeger 最佳实践
引言
在微服务架构中,服务间的调用关系错综复杂,对性能和问题的监控变得尤为重要。Jaeger 和观测云作为两个强大的工具,可以联合起来提供全面的分布式追踪和监控解决方案。
Jaeger
Jaeger 是由 Uber 技术团队开发的开源分布式追踪系统。它帮助开发人员通过分布式事务的监控和诊断,理解服务之间的依赖关系和性能瓶颈。Jaeger 的核心组件包括:
Client: 兼容 OpenTracing API,用于在应用中埋入信息采集点。
Agent: 轻量级进程,用于接收和转发来自应用程序的追踪数据。
Collector: 负责接收 Trace 数据,并将其存储到后端存储系统中。
Query: 提供 REST API,用于查询追踪数据。
Storage: 存储追踪数据,支持多种后端存储选项,如 Elasticsearch、Cassandra 等。
观测云
观测云是新一代的一体化的监控观测平台,提供日志、指标、追踪等多种数据的收集、存储和分析功能。它通常具备用户友好的界面,支持自定义仪表板和警报,能够简化监控和故障排查的过程。观测云完全兼容 jaeger 协议,可以直接接收 jaeger 发送的应用链路数据,替代 jaeger 的 agent,collector,Query 和 Storage 等组件。
前提条件
操作步骤
1、登录观测云,并获取 datakit 的安装命令
2、执行安装命令安装 datakit
3、开启 jaeger 采集器
进入 DataKit 安装目录下的 /usr/local/datakit/conf.d/jaeger
目录,复制 jaeger.conf.sample
并命名为 jaeger.conf
,修改 jaeger udp 监听地址,示例如下:
4、保存配置文件后重启 DataKit 服务:
5、修改应用参数配置 Web 应用的端口和服务名字:
6、配置 Jaeger
引用依赖:
配置连接属性:
7、启动 Demo 应用,在观测云上查看 trace 数据
启动并访问 Demo 服务,随后即可在观测云控制台,点击「应用性能监测」选择顶部「链路」查看对应的应用链路性能数据。
评论