基于 eBPF 技术打造的 LightAPM 应用监控,效果如何

本文涉及的产品
应用实时监控服务-应用监控,每月50GB免费额度
可观测可视化 Grafana 版,10个用户账号 1个月
可观测监控 Prometheus 版,每月50GB免费额度
简介: 本文介绍如何利用LightAPM解决“古早应用”(如银行老核心、证券交易系统)的监控难题。这些基于C/C++或老旧JDK的系统封闭且难以改造,传统字节码增强技术无法适用。通过部署集成eBPF技术的OneAgent,LightAPM实现无侵入、开箱即用的监控,自动绘制服务拓扑、发现服务并采集应用与基础设施指标,支持多JDK混合环境。结合因果AI,还可智能告警与根因定位,为遗留系统提供高效可观测性方案。

前言

笔者最近跑了一些客户,发现虽然云化趋势明显,但很多客户依然存在着大量的“古早应用”在线运行(很早期开发的应用系统),比如银行的老核心、证券业的交易系统、制造业的生产系统等等,他们大多为C、C++甚至汇编语言编写、大量JDK老版本。

这些系统相对封闭,不适合采用当下流行的字节码增强技术,想要对他们上点监控,动作要求相当苛刻。

e1.jpg

图:"古早"应用示意图

01 实验场景

我们先来构建一套实验场景,在环境里搭建包含 JDK6、JDK8、JDK11 的混合运行环境:

JDK 8:

JDK8.png

JDK 11:

JDK11.png

JDK 6:

JDK6.png

然后在主机上部署几个服务实例,各服务的运行关系如下所示:

E2.png

图:各服务之间的调用关系

02监控实施

笔者公司在产品设计时,已经将 LightAPM 的采集能力封装在了 OneAgent 内部,因此用户不需要单独部署独立的 eBPF 代理,只需要安装一个OneAgent 就够了。

在databuff 平台上复制安装命令并在服务器上执行,即可完成 OneAgent 安装(OneAgent 默认开启LightAPM的采数功能),整个过程无需修改配置或重启应用进程。

E3.png

图:复制OneAgent安装命令

E4.png

图:在主机上执行安装OneAgent命令

LightAPM 的部署方式真正实现了开箱即用的监控体验,为大规模分布式系统的可观测性建设提供了极致简化的解决方案。

03 监控效果

3.1服务拓扑自动绘制

OneAgent 部署完成后,LightAPM 会自动绘制出 服务拓扑图,直观呈现各服务之间的调用关系,且各服务是以servicename的形式展现在画布上,如下图所示。

E5.png

图:服务调用拓扑图

在拓扑图上:

  • 节点颜色, 表示服务健康状态;

  • 点击节点, 可查看性能指标;

  • 左侧布局, 展示节点所属的 Pod、进程及所在主机或 Node;

  • 右侧面板, 展示告警、请求数、错误率、响应时间等关键指标。

点击拓扑图上的节点,弹出的右侧抽屉会展示该节点的相关信息:属性、告警、KPI指标曲线。

E6.gif

图:空间拓扑及节点指标监控

说明:想象一下,任何一套黑盒的老旧系统,我们在主机上安装 OneAgent 之后,服务资产及调用架构就全部自动完成了。

3.2 服务自动发现

部署完成后,LightAPM 会将采集到的数据上报到 应用性能监控模块,平台会自动生成服务并展示在服务列表中。(LightAPM会直接使用通用APM模块的功能界面)我们打开服务列表可以看到如下的数据:

E7.png

图:服务列表

请求耗时:提供 P95、P99 延迟趋势;

调用次数:各节点 QPS 波动情况;

错误监控:错误率及详细错误信息;

系统指标:CPU 使用率、内核态/用户态耗时、网络重传情况等。

点击其中一个服务,进入 服务详情页,可以看到:

E8.gif

图:服务详情页

  • 服务的上下游调用关系;
  • 各类基础指标(可按实例维度下钻);
  • 服务告警与网络数据;
  • 与主机、进程、Pod 的关联信息。

让人惊喜的是,除应用性能指标外,服务相关的基础设施层指标(CPU、内存、流量等) 也能同步获取,自动的实现了应用与基础设施的关联观测。

3.3 服务监控指标

除了拓扑可视化,LightAPM 还提供强大的告警配置和根因定位功能。当触发预设检测规则时,平台通过智能收敛算法聚合告警信息。

Databuff 的 因果AI 同样适用于LightAPM采上来的数据分析,可以输出自动化的问题根因、提供精准的处置建议,如图所示:

E9.png

图:LightAPM的指标告警详情

E10.png

图:LightAPM的根因分析详情

04 结尾

今天的分享就到这里,我们可以看到过去一直让通用APM、日志监控方案束手无策的“古早应用”的监控难题,LightAPM 可以帮助解决。

后续,笔者会准备系列文章,一步步的带大家认识 LightAPM 的能力,它是如何与通用APM形成互补、共同构成可观测整体方案。

相关文章
|
2月前
|
监控 安全 数据可视化
开发更可控,部署更便捷:AgentScope 迈入1.0时代
AgentScope 1.0 是通义实验室推出的开源多智能体开发框架,旨在打造稳定、安全、开箱即用的智能体生产级解决方案。通过“核心框架+运行时+可视化工具”三层架构,支持智能体的构建、部署、监控全生命周期管理,具备实时干预、高效工具调用与智能上下文管理能力,助力开发者实现从“能跑”到“可控、可落地”的跨越。
1050 0
|
2月前
|
监控 算法 搜索推荐
JVM性能优化实战手册:从监控到调优策略
本文基于DataBuff监控数据,系统探讨JVM性能优化实战,涵盖监控体系构建、GC调优、内存与线程管理等关键策略。通过调整堆大小、启用G1回收器等参数优化,有效降低Full GC频次,提升应用稳定性,为Java性能调优提供可落地的实践指南。(238字)
|
3月前
|
人工智能 监控 安全
Gartner报告:可观测性平台魔力象限
本文由Gregg Siegfried等作者撰写,阐述了可观测性平台如何通过遥测数据采集、AI分析与成本优化,助力企业提升系统健康度与业务韧性,并详解市场定义、核心功能及主流供应商优劣势。
Gartner报告:可观测性平台魔力象限
|
2月前
|
数据采集 关系型数据库 MySQL
如何从零开发一款 OneAgent
Databuff自研轻量级OneAgent,专为智能可观测时代打造。具备低资源占用、自动服务发现、SQL查询支持与采集即治理等特性,兼容多语言插件扩展,助力AI-Agent集成与全栈监控统一管理。
|
2月前
|
人工智能 运维 关系型数据库
惊喜!接入 skywalking 也能直接故障定位了
Databuff推出商业化可观测平台,一键接入SkyWalking数据,通过DataHub管道与因果AI引擎,实现故障秒级定位。本文演示如何将SkyWalking agent数据路由至Databuff,快速构建智能监控体系,提升运维效率。
|
2月前
|
存储 人工智能 缓存
运维智能体(SRE Agent)技术分级能力要求
本标准规范了运维智能体在场景应用、协同能力、能力建设及底座构建方面的技术要求,适用于公共与私有环境下的服务与产品。依据AI技术发展,定义了从初始级到优秀级的三级能力框架,涵盖感知、控制、行动等核心能力,推动运维智能化升级。
运维智能体(SRE Agent)技术分级能力要求
|
2月前
|
人工智能 安全 Java
分布式 Multi Agent 安全高可用探索与实践
在人工智能加速发展的今天,AI Agent 正在成为推动“人工智能+”战略落地的核心引擎。无论是技术趋势还是政策导向,都预示着一场深刻的变革正在发生。如果你也在探索 Agent 的应用场景,欢迎关注 AgentScope 项目,或尝试使用阿里云 MSE + Higress + Nacos 构建属于你的 AI 原生应用。一起,走进智能体的新世界。
561 43
|
存储 数据采集 人工智能
以Trace为核心的根因分析概述
近期一直在学习和复现“根因分析”领域的相关文章,在这里跟大家一起分享下相关内容。这里不在赘述关于“可观测性”和“AIOps”的重要性和必要性,也不过多的陈述在“复杂系统”中进行快速根因诊断的必要性,直接进入到相关算法和系统设计部分。
2192 0
以Trace为核心的根因分析概述
|
2月前
|
监控 前端开发 JavaScript
RUM实践-最大内容绘制(LCP)优化
LCP(最大内容绘制)衡量用户首次看到页面主内容的时间,理想值低于2.5秒。通过RUM工具收集数据,优化服务器响应、减少阻塞资源、图片压缩与预加载等手段,可有效提升LCP,改善用户体验。