mcpField
A
azure-diagnostics

azure-diagnostics

官方
github.com/microsoft测试与质量1.6k572.4k 次安装今天更新
代码仓库

关于 azure-diagnostics

azure-diagnostics 是一个用于排查 Azure 生产问题的 skill,覆盖 Container Apps、App Service、Function Apps、AKS、虚拟机连接及消息服务等。它提供系统化的诊断流程、各服务的排障指南以及 AppLens、Azure Monitor 等 MCP 工具的使用方法。

主要功能

  1. 01系统化的诊断流程
  2. 02按服务类型选择排障指南
  3. 03资源健康与日志检查
  4. 04AppLens 与 Azure Monitor 诊断
  5. 05仅基于提供的证据进行分析

适用场景

  1. 01排查 App Service 高 CPU 或部署失败
  2. 02排查 Function App 调用失败与超时
  3. 03排查 Event Hubs 或 Service Bus 连接错误

MCP 相关

该 skill 使用 AppLens、Azure Monitor 与资源健康等 Azure MCP 工具进行诊断和日志查询。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/microsoft/azure-skills --skill azure-diagnostics

安装后在 Claude Code 中输入/azure-diagnostics确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
azure-resource-graph.md
kql-queries.md
references/app-service/
README.md
references/container-apps/
README.md
references/functions/
durable.md
README.md
triggers.md
scripts/
aks-baseline.ps1
aks-baseline.sh
appservice-diagnostics.ps1
appservice-diagnostics.sh
containerapp-diagnostics.ps1
containerapp-diagnostics.sh
pod-evidence.ps1
pod-evidence.sh
run-ig.ps1
run-ig.sh
test-messaging-connectivity.ps1
test-messaging-connectivity.sh
troubleshooting/aks/
aks-troubleshooting.md
general-diagnostics.md
load-balancer-and-ingress.md
network-policy.md
networking.md
node-issues.md
optional-aks-operations.md
pod-failures.md
troubleshooting/aks/references/
aks-mcp.md
command-flows.md
inspektor-gadget.md

详细介绍

Azure 诊断

权威指南——必须遵守

本文档是调试和排查 Azure 生产问题的官方来源。请遵循这些说明,系统地诊断和解决常见的 Azure 服务问题。

触发条件

当用户希望执行以下操作时,启用此技能:

  • 调试或排查生产问题
  • 诊断 Azure 服务中的错误
  • 分析应用日志或指标
  • 修复映像拉取、冷启动或运行状况探测问题
  • 调查 Azure 资源故障的原因
  • 查找应用错误的根本原因
  • 排查 App Service 问题(CPU 使用率高、部署失败、崩溃、响应缓慢、TLS/自定义域名)
  • 响应类似“排查 app service”“app service CPU 使用率高”或“app service 部署失败”的提示
  • 排查 Azure Function Apps 问题(调用失败、超时、绑定错误)
  • 查找与 Function App 关联的 App Insights 或 Log Analytics 工作区
  • 排查 AKS 集群、节点、Pod、入口或 Kubernetes 网络问题
  • 排查 Azure VM 连接问题(RDP/SSH 失败、端口 3389/22 超时、NSG 或防火墙阻止连接、凭据重置)
  • 排查 Azure Messaging SDK 问题(Event Hubs、Service Bus 连接失败、AMQP 错误、消息锁问题)
  • 查明看起来像是运行时正常、但目标位置错误的问题的根本原因(例如,更改配置后,遥测数据/消息不再流向预期资源)——即使 MCP 工具单独就能回答表面问题,也要调用此技能查看对照表

规则

  1. 从系统化诊断流程开始
  2. 优先使用提供的证据。如果用户要求仅基于证据进行分析,或禁止实时访问 Azure,则不要查询或修改 Azure。根据提供的日志、指标和时间线进行诊断;指出假设,并提供可选的验证步骤。
  3. 如果可用,请使用 AppLens(MCP)进行 AI 驱动的诊断
  4. 深入查看日志之前,先检查资源运行状况
  5. 根据服务类型选择合适的故障排查指南
  6. 记录调查结果和尝试过的修复步骤
  7. 在允许实时收集数据且已知标识符的情况下,优先使用打包的诊断脚本,而不是临时调用。如果提供的证据已足够,或禁止实时访问,则不要运行脚本;否则先运行适用的脚本。
  8. 将 AKS 事件转交给专用的 AKS 故障排查文档
  9. 即使缺少、被拒绝或不受宿主支持,可选的 aks-skills 附加组件,也要保留基础 AKS 诊断功能

快速诊断流程

  1. 确认症状 - 哪些内容发生故障?
  2. 检查资源运行状况 - Azure 是否运行正常?
  3. 查看日志 - 日志显示了什么?
  4. 分析指标 - 性能模式如何?
  5. 调查近期变更 - 有什么变更?

按服务划分的故障排查指南

服务常见问题参考
Container Apps映像拉取失败、冷启动、运行状况探测、端口不匹配container-apps/
App ServiceCPU 使用率高、部署失败、崩溃、响应缓慢、TLS/自定义域名app-service/
Function Apps应用详情、调用失败、超时、绑定错误、冷启动、缺少应用设置functions/
AKS集群访问、节点、kube-system、调度、崩溃循环、入口、DNS、升级AKS 故障排查
ComputeVM RDP/SSH 连接、NSG/防火墙阻止连接、凭据重置、VM 代理/工具问题VM 连接故障排查
MessagingEvent Hubs 和 Service Bus SDK 错误、AMQP 故障、消息锁、连接问题Messaging 故障排查

路由

  • 在此父级技能中保留 Container Apps 和 Function Apps 诊断。
  • 将 AKS 故障排查、AKS 专项问题受理、证据收集和修复指导转至 AKS 故障排查。
  • 将 Azure VM RDP/SSH 连接、NSG/防火墙、凭据重置和 VM 代理故障排查转至 VM 连接故障排查。
  • 将 Azure Messaging SDK 故障排查(Event Hubs、Service Bus)转至 Messaging 故障排查。

快速参考

常用诊断命令
# Check resource health
az resource show --ids RESOURCE_ID
# View activity log
az monitor activity-log list -g RG --max-events 20
# Container Apps logs
az containerapp logs show --name APP -g RG --follow
# Function App logs (query App Insights traces)
az monitor app-insights query --apps APP-INSIGHTS -g RG \
  --analytics-query "traces | where timestamp > ago(1h) | order by timestamp desc | take 50"
AppLens(MCP 工具)

如需 AI 驱动的诊断,请使用:

mcp_azure_mcp_applens
  intent: "diagnose issues with <resource-name>"
  command: "diagnose"
  parameters:
    resourceId: "<resource-id>"

Provides:
- Automated issue detection
- Root cause analysis
- Remediation recommendations
Azure Monitor(MCP 工具)

如需查询日志和指标:

mcp_azure_mcp_monitor
  intent: "query logs for <resource-name>"
  command: "logs_query"
  parameters:
    workspaceId: "<workspace-id>"
    query: "<KQL-query>"

常见诊断查询请参阅 kql-queries.md。


检查 Azure 资源运行状况

使用 MCP
mcp_azure_mcp_resourcehealth
  intent: "check health status of <resource-name>"
  command: "get"
  parameters:
    resourceId: "<resource-id>"
使用 CLI
# Check specific resource health
az resource show --ids RESOURCE_ID

# Check recent activity
az monitor activity-log list -g RG --max-events 20

参考资料

评论

支持 Markdown