注意
本文引用了 CentOS,这是一个处于生命周期结束 (EOL) 状态的 Linux 发行版。 请相应地考虑你的使用和规划。 有关详细信息,请参阅 CentOS 生命周期结束指南。
Azure Monitor 代理 (AMA) 疑难解答旨在帮助识别代理的问题并执行常规运行状况评估。 它可以执行各种检查,以确保正确安装和连接代理,还可以从被诊断的计算机收集与 AMA 相关的日志。
备注
AMA 疑难解答是一个可执行文件,高于 1.25.1(适用于 Linux)的所有版本的代理都随附此文件。
Linux AMA 疑难解答要求在计算机上安装 Python 2.6+ 或 Python 3 版本。
若要检查计算机上是否安装了 python,请复制以下命令并在 Bash 中作为根运行:
sudo python -V
sudo python3 -V
可以安装多个版本的 Python 并设置别名 - 如果安装了多个版本,请使用:
ls -ls /usr/bin/python*
如果虚拟机使用的发行版默认情况下不包括 Python 3,则必须进行安装。 以下示例命令将在不同的发行版上安装 Python 3:
sudo yum install -y python3
此外,需要以下 Python 包才能运行(Python 2 或 Python 3 的默认安装应具有所有这些包):
Python 包 | Python 2 必需? | Python 3 必需? |
---|---|---|
copy | 是 | 是 |
datetime | 是 | 是 |
json | 是 | 是 |
os | 是 | 是 |
平台 | 是 | 是 |
re | 是 | 是 |
请求 | 否 | 是 |
shutil | 是 | 是 |
subprocess | 是 | 是 |
url lib | 是 | 否 |
xml.dom.minidom | 是 | 是 |
检查诊断的计算机上是否存在 AMA 代理疑难解答目录,以确认安装代理疑难解答:
/var/lib/waagent/Microsoft.Azure.Monitor.AzureMonitorLinuxAgent-{version}
若要验证是否存在 Azure Monitor 代理故障排除程序,请复制以下命令并在 Bash 中作为根运行:
ls -ltr /var/lib/waagent | grep "Microsoft.Azure.Monitor.AzureMonitorLinuxAgent-*"
如果目录不存在或安装失败,请按照基本故障排除步骤操作。
如果目录存在,请继续运行疑难解答。
在要诊断的计算机上,运行代理疑难解答。
日志模式启用日志收集,然后可将日志压缩为 .tgz 格式进行导出或评审。 交互模式允许用户积极参与故障排除方案,并直接在 shell 中查看输出。
若要在日志模式下启动代理疑难解答,请复制以下命令并在 Bash 中作为根运行:
备注
需要更新 {version} 以匹配已安装的版本号。 在下面的示例中,当前版本是 1.28.11。
cd /var/lib/waagent/Microsoft.Azure.Monitor.AzureMonitorLinuxAgent-{version}/ama_tst/
sudo sh ama_troubleshooter.sh -L
输入输出日志的路径。 例如,可能会使用 /tmp。
它运行一系列活动,并将 .tgz 文件输出到指定的输出目录。 请耐心等待此过程完成。
无法通过复制代理来使用疑难解答诊断旧版代理。 必须拥有最新版本的代理,才能正常运行疑难解答。