为 VM 监视配置事件中心

VM 监视可以将信号数据发送到预配置的事件中心

本文提供有关配置事件中心以访问 VM 监视收集的信号的说明

先决条件

本文假设你熟悉以下内容:

启用事件中心输出

1:为 VM 监视准备事件中心

重要

VM 监视支持托管标识、SAS 令牌和连接字符串作为身份验证方法。 提供多个身份验证方法时,托管标识的优先级为最高,而连接字符串则分配为最低优先级。

2:为虚拟机监控启用事件中心输出

对于每个事件中心身份验证方法,需要组合通用参数设置和身份验证特定的参数设置。 为每个身份验证方案提供说明。 对于虚拟机和虚拟机规模集,请在 JSON 配置中 vmWatchSettings 指定以下设置。 有关如何使用 ARM 模板vmWatchSettingsPowerShell 进行访问的说明,请参阅“配置 VM 监视”。

事件中心输出的常见参数

对于所有身份验证方法,以下参数集适用:

参数 必需 说明
EVENT_HUB_OUTPUT_NAMESPACE 是的 事件中心名称空间名称,不带域名 ".servicebus.chinacloudapi.cn"
EVENT_HUB_OUTPUT_NAME 是的 给定命名空间中的事件中心名称
EVENT_HUB_OUTPUT_DOMAIN_NAME 事件中心域名。 默认值 "servicebus.chinacloudapi.cn"
EVENT_HUB_OUTPUT_CLOSE_TIMEOUT 客户端关闭超时。默认值为 30 秒
EVENT_HUB_OUTPUT_PARTITION_ID 用于事件分区键的指标标记或字段名称。 默认值为 null
EVENT_HUB_OUTPUT_MAX_MESSAGE_SIZE 最大批消息大小(以字节为单位)。 将此参数设置为 0 意味着使用 Azure 事件中心客户端库中的默认大小(1,000,000 字节)。 默认值为 0
SEND_INTERNAL_TELEMETRY_TO_EVENT_HUB 若要接收 VM 监视内部指标(启动和检测信号事件),请将此值设置为“true”。默认值为“false”
事件中心输出的身份验证特定参数
参数 必需 说明
EVENT_HUB_OUTPUT_USE_MANAGED_IDENTITY 将此值设置为“true”。默认值为“false”
EVENT_HUB_OUTPUT_MANAGED_IDENTITY_CLIENT_ID 如果使用特定的托管标识进行身份验证,请指定此值

例如,以下 VM 监视 JSON 配置设置环境变量 EVENT_HUB_OUTPUT_NAMESPACEEVENT_HUB_OUTPUT_NAME以及 EVENT_HUB_OUTPUT_USE_MANAGED_IDENTITY。 这允许事件中心使用托管标识作为身份验证方法,而无需指定托管标识客户端 ID。

{
  "vmWatchSettings": {
    "enabled": true,
    "parameterOverrides": {
      "EVENT_HUB_OUTPUT_NAMESPACE": "<example event hub namespace>",
      "EVENT_HUB_OUTPUT_NAME": "<example event hub name>",
      "EVENT_HUB_OUTPUT_USE_MANAGED_IDENTITY": "true"
    }
  }
}

3:检查事件中心中的事件

成功将 VM 监视设置配置为使用事件中心作为输出后,VM 监视将重启。 事件在几分钟内开始流入事件中心。 可以使用 Azure 门户 观察传入的消息。

以下屏幕截图显示了流入事件中心的数据

显示 VM 监视数据流入事件中心的屏幕截图。

此外,还可以使用事件中心数据资源管理器功能查看传入的事件和内容。

以下屏幕截图显示了事件中心数据资源管理器

显示事件中心数据资源管理器的屏幕截图。

事件中心事件架构

每个事件中心事件具有以下架构:

字段名称 数据类型 说明
DateTime 时间 发出信号的时间
SignalType 字符串 信号的类型,可以是“StartUp”、“Heartbeat”、“Check”、“Metric”或“EventLog”
SignalName 字符串 信号的名称
SubscriptionId 字符串 VM 订阅 ID
ResourceGroup 字符串 VM 资源组名称
ResourceId 字符串 VM 的 Azure 资源 URI
VmId 字符串 从 VM 中的 IMDS 终结点查询的 VM 的唯一 ID
Vmss 字符串 虚拟机规模集名称(如果适用)
Offer 字符串 Azure VM 优惠方案
VmSize 字符串 VM 大小
MeasurementTarget 字符串 信号所测量的目标。 搭配使用 Name 字段和 MeasurementTarget 聚合原始信号
SignalValue json 此信号的值,具体架构取决于 SignalType
Version 字符串 事件中心(Event Hub)输出事件架构的版本

调试事件中心连接问题

如果几分钟后事件中心没有事件,请检查以下虚拟机或虚拟机规模集目录中的 VM 监视日志,以诊断问题:

/var/log/azure/Microsoft.ManagedServices.ApplicationHealthLinux/vmwatch.log

后续步骤