Home

Awesome

AutoPilot Observability

License Doc LiveDemo

欢迎访问 在线 Demo 体验产品。更多详情请查看官方网站

AutoPilot Observability (简称APO)是什么?

功能

自动安装 OpenTelemetry 探针,无需手动配置

通过 OneAgent 技术,支持在传统服务器和容器环境自动安装多语言的 OpenTelemetry 探针,减少用户配置工作。

一站式可观测性中心,一个页面完成故障定位

APO 集成了链路、指标、日志和事件等数据,能够一站式解决可观测性和故障定位的需求。 homepage

基于业务接口级别的拓扑

APO 将相同应用的不同接口调用区分开,清楚地给出应用执行某类业务时的调用关系,相同的应用节点可能会按照调用顺序出现多次。完整拓扑结构太复杂,没有实现拓扑本身应该具有的“地图导航”引导用户找到疑似故障节点的功能,因此 APO 利用延时曲线相似度来收缩相似度较低的节点,更多节点采用表格形式展示,避免拓扑过于复杂无法分析。当用户需要查看下游依赖节点时,可以点击节点名快速切换到不同节点的详情页面。 more-topo-flow

基于相似度算法排序高效识别级联的故障节点

在请求延时发生故障时,很多节点都会被级联的影响到,从传统告警中看是很多节点都有告警,在APO中,每个节点都会将其下游依赖的延时进行相似度曲线匹配,从而找到延时最相似的节点,最相似的节点是根因的可疑性更高,这里的下游依赖包括直接下游和下游依赖的依赖。 dependency-line dependency-relevance

北极星因果指标主因判定算法

单纯的分析链路数据会留下很多盲区,难以快速判断延时升高时是自身导致还是依赖导致。北极星因果指标主因算法能够直接给出延时波动是由何种原因导致的,给出了故障原因的方向。例如下图给出的主因是对外网络调用延时变化导致了应用延时变化,结合网络延时指标可以判断出原因到底是网络延时变化还是下游节点延时变化。 abnormaly-detection 利用eBPF技术采集的北极星因果指标直接给出故障定位方向,大致分为以下几个方向:

快速找到故障链路和日志

根据延时、错误率和日志错误数量曲线可以快速定位故障可能发生时间点,从而查看时间点附近的日志或链路数据。 show-me-the-logs

avg-duration-linelogs-list

特点

保留故障现场的热数据,降低数据存储成本

故障现场的热数据 vs. 传统可观测性数据

基于故障现场的热数据关联带来了不同数据之间跳转的极致流畅的体验。此外基于故障现场的热数据为未来优化存储、节约可观测性的成本带来了更多的可能性。

无惧数据膨胀,高效地在数据间关联跳转

APO 利用 eBPF 技术为原始数据生成并保存了“索引”数据,“索引“数据的大小明显小于原始数据,即使原始数据膨胀,APO 仍然能够通过查询索引数据快速给出可观测性数据结果。同时利用 eBPF 技术在内核中为不同类型的数据增加元信息标签,增强数据间的关联性,使用户在不同数据之间能够无缝跳转。

相比于其他可观测性方案,APO 在保存相同时间周期的数据时,占用更少的存储成本同时能够更快地给出数据结果。

事件指标化联动与更加直观的故障提示

快速开始

查看安装文档快速开始使用APO。

文档

请查看官方文档.

架构

下图为 APO 组件的数据流图:

architecture

详细的架构与组件介绍请查看架构文档

社区 & 支持

如果您在使用过程中有任何问题,欢迎通过下方的方式联系我们:

License

Apache License 2.0