你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

从 Azure 资源收集和分析资源日志

资源日志提供有关 Azure 资源详细操作的见解,有助于监控其运行状况和可用性。 Azure 资源会自动生成资源日志,但你必须创建诊断设置来收集它们。 本教程将指导你完成创建诊断设置的过程,以将资源日志发送到 Log Analytics 工作区,从而可以使用日志查询对这些日志进行分析。

在本教程中,你将了解如何执行以下操作:

  • 在 Azure Monitor 中创建 Log Analytics 工作区
  • 创建诊断设置以收集资源日志
  • 创建简单的日志查询以分析日志

先决条件

完成本教程中的步骤需要具备以下各项:

  • 要监视的 Azure 资源。 你可以使用 Azure 订阅中支持诊断设置的任何资源。 要确定资源是否支持诊断设置,请在 Azure 门户中前往其菜单,并验证菜单的“监视”部分是否有“诊断设置”选项 。

注意

此过程不适用于 Azure 虚拟机,因为 Azure 虚拟机的“诊断设置”菜单用于配置诊断扩展。

创建 Log Analytics 工作区

Azure Monitor 中的日志数据存储在 Log Analytics 工作区中。 如果已在订阅中创建工作区,可以使用该工作区。 还可以选择使用在每个 Azure 订阅中创建的默认工作区。

如果要创建新的 Log Analytics,可以执行以下过程。 如果要使用现有的 Log Analytics,请前进到下一部分。

在 Azure 门户的“所有服务”中选择“Log Analytics 工作区”。

在 Azure 门户中选择“Log Analytics 工作区”

单击“创建”以创建新工作区。

“创建工作区”按钮

在“基本信息”选项卡上,为工作区选择订阅、资源组和区域 。 这些不需要与受监视资源相同。 提供一个名称,该名称在所有 Azure Monitor 订阅中必须是全局唯一的。

工作区基本信息

单击“查看 + 创建”以创建工作区。

创建诊断设置

诊断设置定义特定资源的日志所发送到的位置。 单个诊断设置可具有多个目标,但在本教程中,我们将只使用 Log Analytics 工作区。

在资源菜单的“监视”部分下,选择“诊断设置”并单击“添加诊断设置” 。

注意

某些资源可能需要其他选择。 例如,存储帐户会要求你在显示“添加诊断设置”选项之前选择资源。 你可能还会注意到某些资源的”预览“标签,因为其诊断设置目前以公共预览版提供。

诊断设置

每个诊断设置都有三个基本组成部分:

  • Name:此部分影响不大,只提供描述信息。
  • 类别:要发送到每个目标的日志类别。 每个 Azure 服务的类别集将有所不同。
  • 目标:要将日志发送到的一个或多个目标。 所有 Azure 服务共享同一组可能的目标。 每个诊断设置都可以定义一个或多个目标,但不能定义特定类型的多个目标。

输入诊断设置的名称,然后选择要收集的类别。 请参阅每个服务的文档以了解其可用类别的定义。 AllMetrics 将向工作区发送在资源的 Azure Monitor指标中提供的相同平台指标。 这让你可以使用日志查询以及其他监视数据来分析此数据。 选择“发送到 Log Analytics 工作区”,然后选择所创建的工作区 。

诊断设置详细信息

单击“保存”以保存这些设置 。

使用日志查询来检索日志

使用以 Kusto 查询语言 (KQL) 编写的日志查询从 Log Analytics 工作区检索数据。 许多 Azure 服务都有一组预先创建的查询,因此你无需了解 KQL 即可开始使用。

从资源的菜单中选择“日志”。 Log Analytics 随即打开,其中包含“查询”窗口,该窗口中提供了为“资源类型”预生成的查询。

注意

如果“查询”窗口未打开,请单击右上方的“查询”。

屏幕截图显示了使用资源日志的示例查询。

浏览可用的查询。 确定要运行的一个查询,然后单击“运行”。 该查询将添加到查询窗口,然后会返回结果。

屏幕截图显示了示例日志查询的结果。

后续步骤

收集资源日志后,请创建日志查询警报,以便在日志数据中识别出需要关注的数据时主动接收通知。