顾自然
腾讯云监控产品经理,硕士毕业于墨尔本大学。目前主要负责腾讯云业务层监控相关产品策划工作。
前言
在日常运维中,数据库是 IT 运维人员重点关注的核心,绝大多数应用程序的正常运行与数据库的稳定性密不可分,一旦某个数据库出现了问题,该数据库上下游的应用都将面临巨大的挑战。因此,很多企业会引入腾讯云数据库智能管家 DBbrain ,帮助实时诊断优化数据库异常。
数据库智能管家 DBbrain 是腾讯云推出的一款提供数据库性能、安全、管理等功能的数据库自治云服务,将大量传统人工的数据库运维工作智能化,服务于云上和云下企业,有效保障数据库服务的安全、稳定及高效运行。
当您在进行应用性能监控时,往往会发现,影响应用性能的问题不仅来源于应用程序自身性能,还会来源于该应用相关的基础组件的故障。对于基础组件-数据库来说,IT 部门运维人员往往需要在复杂环境下,对应用程序和数据库的性能进行全面地排查,尤其是监控应用程序和数据库之间的依赖关系,而不是只关注单个数据库或应用本身。
因此,腾讯云应用性能观测(APM)联合数据库智能管家(DBbrain),对数据库和链路监控进行深度碰撞和融合,在国内云厂商中,首个提供了数据库自治云服务与应用性能服务关联分析能力。
关联后支持数据库调用异常诊断、数据库上下游应用的性能指标分析,数据库调用语句健康状况分析等功能。在关系复杂的数据库故障后,您可以进行根因分析,事故现场还原、历史事件追踪等,还可以提前分析数据库健康状态。实现了从应用到数据库内部的全面洞察,应用运行情况与数据库运行情况的关联,帮助用户更高效地进行故障排查。
最佳实践
腾讯云应用性能观测(APM)联动腾讯云数据库智能管家(DBbrain),深度集成了数据库内部监控和上下游应用的调用,帮助查看数据库与应用之间的调用情况,包含了数据库拓扑图、数据库-应用调用间的次数和吞吐量,以及更多下钻功能。
控制台链接 腾讯云 APM : https://console.cloud.tencent.com/apm 腾讯云 DBbrain: https://console.cloud.tencent.com/dbbrain/board
1. DBbrain 联动
在腾讯云数据库智能管家 DBbrain 控制台 →【诊断优化】→【异常诊断】中,选择您关注的数据库,查看该数据库的基础指标实时诊断时,点击右上角【调用关系图】,即可查看当前数据库上下游应用情况(使用前提:需要开通腾讯云 APM)。
(DBbrain-诊断优化-异常诊断)
(DBbrain-诊断优化-异常诊断-调用关系图)
a. 数据库-应用拓扑
在该图中,可查看到当前关注的数据库与其链接的应用之间的调用健康情况。如下图,当前数据库与某应用之间的曲线标红,显示调用出现了明显的异常, hover 曲线后可查看到当前的吞吐量/错误率/相应时间,以及 SQL 的调用数量及错误数;而点击应用的 Node节点后,即可跳转至腾讯云 APM 控制台查看该应用的详细信息。
b. TOP5 吞吐量应用
在调用者吞吐量图表中,可查看到该数据库 TOP5 上游组件/应用调用的吞吐量趋势,以及该时间段内的调用次数;点击跳转,可在腾讯云 APM 控制台查看到该应用详细监控信息。
2. 应用视角的关联,查看数据库运行状况
在腾讯云应用性能观测 (APM) 控制台中,选择【应用详情】,即可查看到该应用的上下游拓扑图,查看到当前关联的数据库,以及该应用-该数据库之间的慢 SQL,点击拓扑图连线,即可查看应用到数据库之间的吞吐量,响应时间,以及 TOP 错误率/响应时间的接口。
(应用详情-调用分析)
选择下方 Tab 页【数据库监控】,将会列出该应用所关联的所有数据库,点击某一关注的数据库,即可查看当前数据库的平均相应时间,吞吐量,以及 TOP 慢调用的语句。更可下钻跳转到该数据库/慢 SQL,查看详细信息。
(应用详情-数据库监控)
3. 数据库视角的关联应用详情
在腾讯云应用性能观测 APM 控制台中,可以通过【数据库调用监控】- 【数据库概览】,查看到关注的数据库,以及该数据库上下游调用应用的健康情况,不仅能观测到当前数据库,还能关注到调用该数据库的应用调用请求的错误率。
更可下钻到某调用语句(包含 SQL 和 NoSQL ),查看某应用下所有 SQL 的调用语句的吞吐量、耗时、错误率。
4. 方法级调用链排障定位
当关注到某数据库/SQL 的问题时,即可通过曲线图/调用查询下钻到某链路,查看到链路瀑布图。
点击瀑布图上某调用,即可查看详情,查看异常信息,如图所示,可查看到 error.message,error.object 和 stack 信息。
客户案例
某头部公司运维团队在日常监控中,巡检数据库基础监控时并未发现延迟问题。
(数据库基础监控)
使用腾讯云应用性能监控(APM),巡检重点应用时,发现某应用调用的数据库延迟较高,整体调用请求响应时间突增。
(应用详情页-某应用关联数据库监控)
通过具体调用语句,下钻到该应用-数据库调用的具体链路 Trace,定位到具体调用请求 Span,查看异常信息,当前异常说明 Redis 数据库访问异常。
(Trace链路详情页-调用详情)
腾讯云 APM 还协助该头部公司,发现了一个罕见的 bug-由于 Redis 数据库组件升级触发了网络抖动,造成了连接数突增。
腾讯云 APM 通过探针埋点上报的方式,从用户侧采集更加真实准确的应用数据,提供用户实际的使用情况,能够准确反映应用和数据库之间调用的健康情况。
总结
腾讯云应用性能观测(APM)联动腾讯云数据库智能管家(DBbrain),为您提供数据库调用异常分析、数据库健康状态分析等功能,您可实时把握数据库和应用的健康状况。当前腾讯云应用性能观测(APM)为新用户提供了15天总共一亿 Span 的免费试用期,还提供免费体验 Demo ,您无需接入,即可体验 APM 全功能!快点击阅读原文薅羊毛吧~
联系我们
如有任何疑问
欢迎扫码进入官方交流群~
应用性能监控相关文章:
欢迎关注腾讯云监控,了解最新动态