记录事件以用来对 Batch 解决方案进行诊断评估和监视

与许多 Azure 服务一样,Batch 服务也会在某些资源的生命周期内针对这些资源生成日志事件。 可以启用 Azure Batch 诊断日志来记录资源(诸如池和任务)的事件,然后使用日志进行进行诊断评估和监视。 Batch 诊断日志中包括诸如池创建、池删除、任务启动、任务完成之类的事件和其他事件。

Note

本文讨论了 Batch 帐户资源本身的日志记录事件,没有讨论作业和任务输出数据。 有关如何存储作业和任务的输出数据的详细信息,请参阅 Persist Azure Batch job and task output(保存 Azure Batch 作业和任务输出)。

先决条件

  • Azure Batch 帐户
  • Azure 存储帐户

    若要暂留 Batch 诊断日志,必须创建一个将用来存储日志的 Azure 存储帐户。 可以在为 Batch 帐户启用诊断日志记录时指定此存储帐户。 启用日志收集时指定的存储帐户与应用程序包任务输出暂留文章中所提到的链接存储帐户不是同一个。

服务日志

Azure Batch 服务日志包含 Azure Batch 服务在 Batch 资源(诸如池或任务)的生命周期内生成的事件。 Batch 生成的每个事件都采用 JSON 格式存储在指定的存储帐户中。 例如,下面是一个池创建事件样本的正文:

{
    "poolId": "myPool1",
    "displayName": "Production Pool",
    "vmSize": "Small",
    "cloudServiceConfiguration": {
        "osFamily": "4",
        "targetOsVersion": "*"
    },
    "networkConfiguration": {
        "subnetId": " "
    },
    "resizeTimeout": "300000",
    "targetDedicatedComputeNodes": 2,
    "maxTasksPerNode": 1,
    "vmFillType": "Spread",
    "enableAutoscale": false,
    "enableInterNodeCommunication": false,
    "isAutoPool": false
}

每个事件正文都位于指定 Azure 存储帐户中的一个 .json 文件中。

服务日志事件

Batch 服务当前会生成以下服务日志事件。 此列表可能不完整,因为自本文最后更新以来可能又添加了其他事件。

服务日志事件
池创建
池删除启动
池删除完成
池调整大小启动
池调整大小完成
任务启动
任务完成
任务失败

后续步骤

除了将诊断日志事件存储在 Azure 存储帐户中之外,还可以将批处理服务日志事件流式传输到 Azure 事件中心

将 Batch 诊断事件流式传输到“事件中心”,这是一项可高度缩放的数据入口服务。 数据中心每秒可以接受数百万事件,然后你可以使用任何实时分析提供程序转换并存储这些事件。

将诊断日志发送到 Log Analytics,可以使用该工具在 Operations Management Suite (OMS) 门户中分析这些日志,或者导出诊断日志以在 Power BI 或 Excel 中进行分析。