自主解决应用问题:AWS DevOps Agent(预览版)与Dynatrace
应用问题需要快速解决以维持业务连续性和客户满意度,但手动调查会造成延迟,可能给组织带来巨大的收入和生产力的损失。上周,我们推出了AWS DevOps Agent(预览版),这是一个前沿智能体,能够解决并主动预防事故,持续提升在AWS、多云和混合环境中应用的可靠性与性能。前沿智能体代表了一类新型的AI智能体,它们具有自主性、大规模可扩展性,并且无需持续干预即可工作数小时或数天。
AWS DevOps Agent能像经验丰富的DevOps工程师一样调查事故并识别可改进之处:通过学习你的资源及其关系,与你的可观测性工具、操作手册、代码仓库以及CI/CD流水线协同工作,并关联所有来源的遥测数据、代码和部署数据,以理解你的应用程序资源之间的关系。AWS DevOps Agent与Dynatrace集成,将前沿智能体(这类新型AI智能体)的强大能力与因果及预测性AI相结合,实现完整的事件解决。
这些服务共同提供了自动化的事件管理:从检测性能退化并量化业务影响,到跨基础设施调查根本原因,再到提供可操作的缓解步骤。无需配置自定义告警、无需手动关联日志、无需在不同工具间切换上下文。AWS DevOps Agent作为一个自主智能体,独立地在你的AWS、多云和混合环境中调查问题,而Dynatrace则提供了可观测性基础,用于检测问题并衡量其影响。
在本文中,我们将通过一个真实世界的示例来演示:一个客户关系管理(CRM)应用程序的响应时间突然从1毫秒减慢到1秒。你将看到Dynatrace如何检测问题并量化用户影响,然后AWS DevOps Agent如何自主调查,发现丢失的数据库索引是罪魁祸首,并附带修复该问题的确切SQL语句。虽然我们在这里使用了一个数据库示例,但这种方法适用于所有AWS服务,包括:AWS Lambda函数错误、Amazon Elastic Kubernetes Service(Amazon EKS)容器故障、Amazon Virtual Private Cloud(Amazon VPC)连接性问题以及其他事件。
演练:从性能下降到问题解决
让我们探索自动化调查在实践中是如何工作的。
先决条件
要在您自己的环境中使用AWS DevOps Agent(预览版)与Dynatrace,您需要:
示例场景
我们的示例CRM应用程序有一个React前端,通过Amazon CloudFront从Amazon Simple Storage Service(Amazon S3)提供服务,以及一个后端API,该API使用应用程序负载均衡器(ALB)、运行Python应用程序的Amazon Elastic Compute Cloud(Amazon EC2)实例以及一个用于PostgreSQL数据库的Amazon Relational Database Service(Amazon RDS)构建。下图展示了此架构。
图 1 – 我们示例CRM应用程序的架构
该应用程序通常响应时间为1毫秒,但响应时间突然跃升至1秒或更长。
步骤 1: Dynatrace检测到问题及其业务影响
Dynatrace Davis AI,因果AI引擎,可在无需手动配置的情况下持续对应用性能进行基准测试。它了解每个组件的正常行为,并在出现偏离基线时自动检测。
在性能下降后的片刻,Davis AI就识别出异常。但与仅显示指标峰值变化的传统监控不同,Dynatrace提供了完整的上下文:
图 2 – Dynatrace问题屏幕显示响应时间下降和业务影响
Dynatrace真实用户监控测量用户体验并量化受影响的客户数量。在本例中,有435名用户正在经历性能下降。通过Dynatrace OneAgent进行的后端插桩跟踪每个请求通过架构的路径:从应用程序负载均衡器经过Amazon EC2实例,再到PostgreSQL数据库。Dynatrace Smartscape自动拓扑映射功能将数据库查询定位为性能下降的根源。Davis AI建立基线,检测偏差,通过你的架构追踪原因,并自动量化业务影响。你无需为响应时间阈值配置自定义告警、手动关联规则或仪表板。
然后,Dynatrace自动触发AWS DevOps Agent调查,将问题详细信息移交以进行更深入的根因分析。
步骤 2: AWS DevOps Agent在Dynatrace中的调查结果
AWS DevOps Agent从Dynatrace接收问题详细信息并开始其自主调查。一旦调查完成,结果会直接显示在你的Dynatrace环境中,因此无需切换工具进行初步分类。
图 3 – 由AWS DevOps Agent调查结果增强的Dynatrace问题
此摘要提供了对症状(数据库缓慢)和根本原因(索引丢失)的即时可见性,无需离开Dynatrace。请注意,AWS DevOps Agent如何确认Dynatrace发现的数据库缓慢问题,然后通过发现数据库缓慢的原因来丰富该发现。Dynatrace使用其插桩和跟踪来精确定位数据库是瓶颈,而AWS DevOps Agent则调查配置更改和数据库级别的日志,以揭示丢失的索引是根本原因。
Dynatrace还提供了一个仪表板,显示AWS DevOps Agent调查的历史问题:
图 4 – 包含历史AWS DevOps Agent调查的Dynatrace仪表板
这个历史视图可以帮助你跨问题识别模式,并从过去的调查中学习。
步骤 3: AWS DevOps Agent控制台中的详细调查
如需完整的调查详情,在Dynatrace中选择“Link to investigation”以打开AWS DevOps Agent调查页面。这个单一页面包含了理解发生了什么以及为什么发生的额外信息。
图 5 – 包含时间线、调查结果和交互式聊天的AWS DevOps Agent调查页面
调查时间线显示了AWS DevOps Agent执行的自主工作:
图 6 – AWS DevOps Agent调查时间线
根本原因部分解释了导致问题的原因:
图 7 – AWS DevOps Agent识别出的根本原因
请注意,AWS DevOps Agent从Dynatrace共享的问题描述开始,然后自主地从多个来源收集证据,包括:用于提取拓扑和性能数据的Dynatrace查询语言(DQL)查询、用于请求分析的Dynatrace跟踪、Amazon CloudWatch指标、用于基础设施更改的AWS CloudTrail日志,以及用于慢查询和数据库操作的Amazon RDS PostgreSQL日志。该智能体将索引丢失和性能下降之间的时间关联起来,通过数据库日志和分布式跟踪验证影响,并识别根本原因。
步骤 4: 理解并实施缓解计划
AWS DevOps Agent调查页面不仅仅是一个静态报告;它是交互式的。在同一页面上,你会发现一个聊天界面,你可以在其中提问以加深理解或探索相关问题。
图 8 – AWS DevOps Agent聊天界面
要修复问题,你可以直接从同一页面生成缓解计划。选择“Generate Mitigation Plan”,这将打开一个新标签页,并在几分钟内提供结构化的缓解步骤。该计划遵循系统化的四阶段方法:
- 准备 – 在进行任何更改前识别当前系统状态
- 预验证 – 测试先决条件以确保系统已准备好进行更改
- 应用 – 执行更改以解决问题
- 后验证 – 监控系统健康状况以确认问题已解决
图 9 – AWS DevOps Agent缓解计划
针对我们的数据库索引问题,缓解计划提供了重新创建索引的确切SQL语句,以及确保修复成功的验证步骤。在执行计划后的片刻,响应时间恢复到基线。你的CRM应用程序再次健康运行,并且你拥有了完整的事件审计跟踪:发生了什么、为什么会发生以及如何修复它。
为什么这很重要:自动化故障排除
这不仅仅是更快的故障排除;这是一种根本不同的方法。传统可观测性告诉你什么是慢的。Dynatrace告诉你什么是慢的,问题在你的架构中的哪个位置产生,以及有多少用户受到影响。AWS DevOps Agent通过调查配置更改、部署历史和基础设施修改来“为什么”会这样,从而丰富该发现。Dynatrace的可观测性精确定位到数据库的单条SQL语句是瓶颈,而AWS DevOps Agent的调查则发现索引丢失是数据库缓慢的原因。
除了本文中展示的原生功能之外,AWS DevOps Agent还可以通过模型上下文协议(Model Context Protocol, MCP)服务器进行自定义集成扩展,使你能够添加专业的分析工具,例如用于更深入数据库洞察的PostgreSQL MCP服务器。
我们演练的数据库示例只是众多场景之一。以下是这种自主调查发挥作用的其他示例情况:
- Lambda函数错误 – Dynatrace检测到错误率增加;AWS DevOps Agent调查AWS Identity and Access Management(IAM)权限、环境变量、Amazon VPC配置和最近的代码部署。
- 容器启动失败 – Dynatrace识别出无法启动的Pod;AWS DevOps Agent检查容器镜像可用性、Pod规格、安全组规则和资源配额。
- API限流 – Dynatrace显示延迟增加和限流错误;AWS DevOps Agent调查Amazon API Gateway限流目标、Amazon Lambda并发设置和Amazon DynamoDB容量。
- 网络连接问题 – Dynatrace跟踪显示超时;AWS DevOps Agent检查Amazon VPC路由表、安全组、网络访问控制列表和最近的网络更改。
在每种情况下,你都能获得相同的自动化工作流程:自动检测、业务影响量化、更深入的根因调查以及可操作的缓解计划。
结论:开始使用自主调查
我们已经演练了一个完整的问题生命周期:从Dynatrace检测到CRM应用程序性能下降并量化其业务影响,到AWS DevOps Agent自主调查发现丢失的数据库索引,再到收到修复问题所需的确切SQL语句。这一切都是自动发生的,无需自定义配置、手动日志关联或在工具间切换上下文。
这就是将用于卓越运营的前沿智能体与因果和预测性AI相结合的力量。AWS DevOps Agent访问Dynatrace Davis AI的洞察,关联你的遥测数据,以自主分类操作问题并提供缓解计划。
准备好体验自主问题调查了吗?
开始使用: