View a markdown version of this page

按需 DevOps 任务 - AWS DevOps 代理人

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

按需 DevOps 任务

AWS DevOps Agent On Demand Tasks 是一款基于生成式人工智能 (AI) 的对话助手,使运营团队能够使用自然语言查询其应用程序架构、分析系统运行状况并获得调查见解。您可以询问有关 AWS 资源、系统指标、警报状态、部署历史记录和事件模式的问题。聊天根据您的实际基础设施和运营数据提供即时答案,无需在多个 AWS 控制台或监控工具之间导航。

聊天功能集成在 DevOps Agent Space Web 应用程序中,可根据您正在查看的页面提供上下文感知响应。该界面保留对话历史记录,使您能够继续之前的讨论并在先前的查询基础上再接再厉。

任务能力

AWS DevOps 代理按需任务提供全面的功能,可帮助您管理和了解基础架构:

资源查询 -询问代理空间中的 AWS 资源,包括 Lambda 函数、DynamoDB 表、EKS 部署、证书和基础设施配置。Chat 可以根据运行时版本、容量设置或部署状态等属性筛选和分析资源。例如,问 “有多少 Lambda 在使用 Python 3.8?” 或 “我有即将过期的证书吗?”

系统运行状况分析 -查询当前和历史系统运行状况指标,包括警报状态、错误率、CPU 利用率和服务可用性。聊天可以生成涵盖特定时间段的运行状况摘要,并确定系统行为的趋势。提出诸如 “过去 24 小时内触发了哪些警报?” 之类的问题 或者 “过去一小时内有 5xx 错误吗?”

调查见解 — 访问已完成和正在进行的调查的信息,包括根本原因分析、探讨的假设、审查的日志和解决模式。聊天可以确定常见的事件原因并根据历史数据提供建议。查询 “上个月最常见的事件原因是什么?” 或 “已完成调查的平均解决时间是多少?”

调查指导 — 查看调查详情页面时,通过指示代理专注于特定日志、探索特定假设或更新根本原因分析来指导调查。提供指导性意见,例如 “关注支付服务的日志并更新您的 RCA” 或 “探索 DynamoDB 限制导致问题的假设”。

聊天对象 -生成结构化报告和文档,例如运营状况摘要、错误报告和事件分析。构件显示在专用面板中,支持对话中的版本化编辑。

文件附件 -将图像、文档和代码文件附加到消息中,以便 Chat 可以在上下文中对其进行分析。例如,附上警报仪表板的屏幕截图、YAML 配置文件或运行手册 PDF,然后询问 Chat 下一步该怎么做。有关详细信息,请参阅发送文件附件

建议筛选 -根据特定标准查询事件预防建议,例如与特定服务或运营问题相关的建议。Chat 解释了每项建议的影响和实施注意事项。例如,“向我显示可防止涉及 DynamoDB 的事件的建议” 或 “哪些建议可以帮助我更快地检测请求延迟问题?”

调查提示

在 AWS DevOps 代理聊天中,当复杂问题需要更深入的根本原因分析时,您会看到提示您创建正式调查。您无需等待对话中的全面分析。选择提示启动调查,进行全面的分步分析。

访问聊天

聊天可作为永久面板在 DevOps Agent Space Web 应用程序中使用。左侧边栏包括 “+ 新建聊天” 按钮、一个用于导航到 “事件、改进和拓扑” 的 “页面” 部分,以及一个显示你最近对话的 “聊天” 部分。选择 “查看全部” 以查看您的完整对话历史记录。

您还可以通过将?newChat查询参数添加到代理空间的任何 DevOps Agent Web 应用程序 URL 来开始新的聊天。使用此参数链接到来自外部工具、运行手册或书签的新对话。

聊天根据您的访问位置提供情境感知响应:

拓扑 — 询问有关您的代理空间资源、架构和运行状况的一般性问题。Chat 可以全面查看所有关联的账户和服务。在此上下文中,您可以查询资源配置、部署历史记录、拓扑信息和可观测性工具集成。

事件响应 -查看事件响应页面时,询问有关整个代理空间的调查趋势、解决时间和事件模式的问题。Chat 可以分析历史调查数据,以确定常见原因和改进机会。

调查详情 — 在查看特定调查时,Chat 会提供有关该调查的情境感知回复。询问已审查的日志、探讨的假设、根本原因结论和缓解计划。您还可以提供指导性意见以指导调查重点。

预防 — 在预防页面上,使用过滤器查询建议,了解提出建议的原因,并探索实施方法。聊天可以帮助您确定事故预防建议的优先顺序并了解其影响。

当您在页面之间切换时,聊天界面仍然可用,但是上下文会发生变化,以提供当前视图的相关信息。当你开始新的对话时,它是在没有事先背景的情况下开始的。当您继续现有对话时,Chat 会保留后续问题的完整对话历史记录。

Context-aware 回应

聊天会根据您在 DevOps Agent Space网络应用程序中查看的页面调整其响应。这种情境感知可确保您无需指定要询问的调查或资源范围即可获得相关信息。

查看调查详情页面时,Chat 会自动了解您询问的是该具体调查。诸如 “你看了什么日志?” 之类的问题 或者 “你探索了哪些假设?” 请参阅当前显示的调查结果。当你提供指导意见时,Chat 会将其应用于正在进行的调查,并在适当时创建新的根本原因版本。

在预防页面上,Chat 了解到您对事件预防建议感兴趣。查询会自动筛选和分析代理空间上下文中的建议。系统会识别您询问的是一般性建议还是具体建议的详细信息。

从 “拓扑” 页面访问 Chat 时,Chat 可广泛查看代理空间中的所有资源、指标和历史数据。您可以询问任何资源、服务或运营问题,而无需指定调查或建议背景。

这种情境感知使您无需重复指定所引用的调查、建议或资源范围,从而创建了更自然的对话流程。

管理对话

Chat 会保留对话历史记录,使您能够继续之前的讨论并参考之前的查询。

创建新对话 -在聊天面板中选择 “新建会话” 按钮,在没有事先上下文的情况下开始新的对话。新的对话不会继承以前聊天中的信息,因此您可以毫无混淆地提出无关的问题。

访问对话历史记录 -选择 “历史记录” 以查看代理空间中以前的所有对话。对话是按时间顺序组织的,带有时间戳和预览文本。

继续对话 -从历史记录中选择任何对话,从上次停下来的地方继续。聊天保留了之前消息的完整上下文,使您能够提出引用对话前面部分的后续问题。当您在查看对话时切换页面时,对话上下文将保留,但特定页面的上下文会根据您的当前位置进行更新。

请注意,对话历史记录在每个代理空间内是隔离的。一个代理空间中的对话不可见或无法从其他代理空间访问。这种隔离可确保敏感信息根据您的组织边界进行划分。

从 Chat 开始调查

在 AWS DevOps 代理聊天中,当出现复杂问题时,您会看到提示您创建正式调查。调查提供了结构化的、分步式的分析,比对话交流更深入。

当你看到调查提示时,选择它来创建新的调查。调查将在 “事件响应” 视图中打开。在调查进行期间,你可以继续聊天。

有关调查的更多信息,请参阅自主事件响应

生成工件

AWS DevOps 代理支持聊天对象,即代理在对话期间生成的结构化、版本控制文档。Artifacts 在聊天界面中提供了一个专用的交互式面板,用于查看和编辑操作报告、错误摘要和运行状况评估等 AI-generated 内容。

您可以从 DevOps Agent Space Web 应用程序中的任何页面请求构件。聊天使用当前页面上下文来限定对象内容的范围。

人工制品的工作原理

当你要求 Chat 创建或更新内容时,Chat 会生成一个对象(通常是格式化文档),并将其显示在对话旁边的构件面板中。

生成 -发送自然语言请求以创建报告或文档。例如,询问 “为我的代理空间生成每周运行状况报告” 或 “向我显示上周的 4xx 错误报告”。

审阅 — 该工件出现在对话旁边的专用面板中。您可以在继续与 Chat 互动的同时查看完整内容。

编辑 -通过聊天请求对工件进行更改。例如,询问 “添加有关 Lambda 冷启动的部分” 或 “更新报告以包含上个月的数据”。Chat 会根据您请求的更改创建工件的新版本。

查看和检索工件

您可以直接在对话中阅读和列出 Chat 为您生成的工件,无需离开聊天。例如,询问聊天 “列出你在此对话中创建的项目” 或 “向我显示你之前生成的健康报告”。聊天直接在对话中显示对象或所有对象的列表。

使用此功能,您可以在对话中的任何时候查找和重复使用代理输出。您无需记住某个神器出现在哪里,也无需向后滚动浏览聊天记录即可找到它。

发送文件附件

您可以将文件附加到聊天消息中,这样 Chat 就可以将它们与您的问题一起阅读。使用附件分享您正在查看的内容(仪表板或警报的屏幕截图、配置文件、源代码、操作手册),并要求代理直接对此进行推理。

文件仅限于您的代理空间——它们在其他代理空间中不可见,访问权限受与 Chat 其余部分相同的 IAM 权限的限制。连接文件后,立即将其上传到托管的代理空间存储。

如何附加文件

您可以通过三种方式向消息中添加文件:

  • 在聊天输入工具栏中选择上传图标,然后从您的设备中选择一个或多个文件。

  • 将一个或多个文件拖放到聊天输入区域。

  • 直接从剪贴板粘贴图像,例如在截屏之后。

您附加的每个文件都以芯片的形式出现在聊天输入中,并带有上传进度指示器。要预览文件,请选择其芯片。要删除文件,请选择芯片上的 X。当任何附加文件仍在上传时,“发送” 按钮保持禁用状态。

支持的文件类型

聊天接受以下三类文件:

  • 图片 png,jpeg,jpg,gif, webp

  • 文档 pdf,csv,doc,,docx,xls,xlsx,html,txt, md

  • 文本和代码文件 json,yaml,yml,xml, jsts,py,java,rb,go,rs,sh,bash,log,cfg,ini, toml

这些类别之外的文件在上传前会被拒绝。

限制

以下限制适用于每封邮件:

限制
最大文件大小 3.75 兆字节
每封邮件的附件(任何类型的组合) 20
其中,二进制文档(PDF、DOC、DOCX、XLS、XLSX) 最多 5

此外,您的消息文本和附件内容必须符合模型的每条消息上下文窗口。如果消息及其附件过大,Chat 会拒绝该消息,并要求您在发送之前缩小附件的大小或数量。

使用案例

在 DevOps 代理中使用文件附件的常用方法:

  • 附上警报或错误仪表板的屏幕截图,让 Chat 解释失败的地方以及接下来要去哪里查看。

  • 附上服务源代码,让 Chat 审查变更、提出修复建议或解释其行为。

  • 附上配置文件(例如 YAML、JSON 或 TOML 配置),并让 Chat 排除部署、警报或集成行为异常的原因。

  • 附上操作手册或事后报告 PDF,并让 Chat 将其转换为技能 — 代理提取该程序并将其保存到您的代理空间,以便将来的调查可以自动将其应用于该技能。

示例查询

以下示例演示了您可以向 Chat 提问的问题类型。这些示例按用例和上下文组织。

工件生成查询

在 DevOps Agent Space Web 应用程序的任何页面上:

  • 为我的 Agent Space 生成每周运行状况摘要

  • 为上周的所有 4xx 错误创建报告

  • 生成过去 30 天的事件摘要报告

  • 创建本周支付服务的警报活动摘要

  • 生成过去 7 天的部署历史报告

  • 将所有未处理的建议汇总成一份报告

资源信息查询

在 DevOps Agent Space Web 应用程序的任何页面上:

  • 有多少 Lambda 函数在使用 Python 3.8?

  • 我有即将过期的证书吗?

  • 列出所有按需计费的 DynamoDB 表

  • 向我展示生产中的 EKS 集群

  • 在过去 90 天内未部署哪些 Lambda 函数?

  • 列出未启用版本控制的 S3 存储桶

  • 哪些 RDS 实例正在运行数据库版本 X?

系统运行状况查询

来自拓扑或事件响应页面:

  • 过去 24 小时内触发了哪些警报?

  • 过去一小时有没有 5xx 错误吗?

  • 向我显示支付服务的 Lambda 错误趋势

  • 我的 ECS 集群的 CPU 利用率是多少?

  • 我的负载均衡器中是否有任何不健康的目标?

  • 向我显示昨天的 API Gateway 限制事件

  • 上周哪些服务的错误率最高?

  • 给我一份涵盖过去 24 小时的总体健康报告

可观测性工具查询

来自拓扑:

  • 列出 Splunk 日志组

  • 向我显示 Prometheus 指标及其警报阈值

  • 为此服务配置了哪些 Datadog 监视器?

  • 列出新的 Relic 警报策略

  • 向我显示 Dynatrace 仪表板配置

调查见解查询

来自 “事件响应” 页面:

  • 上个月最常见的事件原因是什么?

  • 已完成调查的平均解决时间是多少?

  • 总结上周的调查及其 RCA

  • 有多少事件是由 DynamoDB 限制引起的?

  • 向我展示过去一个季度的调查趋势

  • 哪些服务发生的事件最频繁?

调查细节查询

在 “调查详情” 页面上:

  • 你看了什么日志?

  • 你探索了哪些假设?

  • 你提出的缓解措施有多危险?

  • 这起事件发生的时间表是什么?

  • 你为什么得出结论,这是根本原因?

  • 哪些证据支持您的根本原因分析?

  • 谁在你的调查期间提供了指导?

  • 给我一个事件调查的摘要

调查指导查询

在 “调查详情” 页面上:

  • 在 UTC 时间 14:00-15:00 之间关注支付服务的日志并更新您的 RCA

  • 探索 DynamoDB 限制导致问题的假设

  • 检查 ECS 群集配置,看看这是否导致了警报

  • 只检查过去 2 小时的日志,而不是一整天的日志

  • 调查下午 3 点错误激增的情况

  • 查看 API 网关日志而不是 Lambda 日志

预防建议查询

来自 “预防” 页面:

  • 我的三大事故预防建议是什么?

  • 向我显示可防止涉及 DynamoDB 的事件的建议

  • 哪些建议可以帮助我更快地检测请求延迟问题?

  • 列出可以防止类似事件的可观测性改进

  • 向我显示支付服务的基础设施建议

  • 哪些建议对系统弹性的影响最大?

在代理空间中启用聊天功能

聊天功能可在所有 DevOps Agent Space 网络应用程序中使用。安装过程取决于您有新的还是现有的代理空间。

新的代理空间

创建新的代理空间时,聊天功能会自动启用。无需额外的配置或 IAM 权限设置。配置 A DevOps gent Space Web 应用程序后,聊天将立即作为永久面板在 Web 应用程序中使用。

现有代理空间

如果您在 Chat 发布之前创建了代理空间,则必须启用所需的 IAM 权限。你有两个选择:

选项 1:撤消并重新启用运营商应用程序访问权限

导航到 AWS DevOps 代理管理控制台,找到 “操作” 下拉列表,然后禁用当前的操作员访问配置。

操作下拉菜单显示了突出显示的选项,包括 “禁用操作员访问权限”。

然后启用操作员访问权限的自动创建选项。

操作员访问部分 Auto-create ,选择了新的 AWS DevOps 代理角色选项。

这会自动应用聊天所需的 IAM 权限以及所有其他当前操作员权限。

选项 2:手动添加 IAM 权限

将以下 IAM 权限添加到您现有的操作员访问角色中:

  • aidevops:ListChats— 查看聊天对话记录

  • aidevops:CreateChat— 创建新的聊天对话

  • aidevops:SendMessage— 发送消息和接收回复

导航到 AWS IAM 控制台,找到您的 DevOps 代理操作员角色,并将这些权限添加到角色策略中。添加权限后,聊天将立即可用。

完成任一选项后,刷新您的 DevOps Agent Space 网络应用程序,聊天面板将显示在 Web 应用程序中。