VM 监视收集器套件

VM 监视收集器旨在通过在 VM 中执行运行状况检查,收集磁盘和网络等各种资源中的 VM 运行状况数据。 此收集器套件有助于识别问题、监视性能趋势和优化资源,以提高整体用户体验。

本文汇总了 VM 监视中的所有可用收集器,以及相应的检查、指标、日志和参数配置。 有关每个检查、指标和日志的详细说明,请参阅 VM 监视概述 页。

先决条件

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

注释

名称 说明
收藏家 可收集检查、指标和日志以确定特定资源的运行状况的类似测试的逻辑分组
信号 为反映 VM 的运行状况而发出的内容。 发出的三种类型的信号是检查、指标和日志
指示收集器是核心组还是可选组的一部分。 默认情况下,核心组收集器处于启用状态,而可以根据要求启用或禁用可选的组收集器
标记 用于对检查、指标和日志进行分类和筛选
资格 根据指定的环境属性确定收集器是否符合执行条件
默认行为 将遵循的标准设置和动作(如果未提供任何自定义配置)。
可覆盖的参数 可自定义以替代默认配置的关联参数

分组、类别以及相应检查、指标和事件日志

收集器名称 标记 支票 指标 事件日志
outbound_connectivity 核心 网络
  • outbound_connectivity
DNS(域名系统) 核心 网络
  • DNS(域名系统)
TCP统计数据 核心 网络
  • SegmentsRetransmitted
  • TCPSynRetransmits (仅限 Linux)
  • NormalizedSegmentsRetransmitted
  • ConnectionResets
  • NormalizedConnectionResets
  • 连接尝试失败次数
  • NormalizedFailedConnectionAttempts
  • ActiveConnectionOpenings
  • PassiveConnectionOpenings
  • CurrentConnections
  • SegmentsReceived
  • SegmentsSent
clock_skew 核心 时钟
  • clockskew
disk_io 核心 磁盘
  • disk_io
  • 已用空间(字节)
  • FreeSpaceInBytes
  • 字节容量 (CapacityInBytes)
  • UsedPercent
disk_iops 核心 磁盘
  • WriteOps
  • ReadOps
imds 核心 IMDS
  • imds
过程 核心 流程
  • 过程
process_memory 核心 流程
  • ProcessRSSPercent
  • ProcessPageFaults
  • 机器内存总量(字节)
  • 机器内存使用百分比
  • TotalPageFaults
process_cpu 核心 流程
  • ProcessCPUCoreUsage
  • ProcessCPUMachineUsage
  • 机器总CPU使用率
进程监控器 可选 流程
  • process_monitor
  • UpTime
系统错误 核心 操作系统
  • 系统错误
az_storage_blob 可选 AzBlob
  • az_storage_blob
hardware_health_monitor 可选 硬件
  • hardware_health_monitor
hardware_health_nvidia_smi 可选 硬件
  • hardware_health_nvidia_smi

资格、默认行为和可覆盖参数

收集器名称 资格 默认行为 可覆盖的参数
outbound_connectivity 如果 EnvironmentAttribute 的“OutboundConnectivityDisabled”未设置或设置为“false”,则可以使用 此收集器每 60 秒执行一次。 在每次执行中,它会发送 http GET 请求 http://www.msftconnecttest.com/connecttest.txt ,超时为 5s。 如果请求失败,则最多重试两次,间隔为 10 秒。 如果所有重试失败,验证将标记为“失败”。
  • OUTBOUND_CONNECTIVITY_INTERVAL:收集器的执行间隔。 默认值:60s
  • OUTBOUND_CONNECTIVITY_URLS:此收集器发送 http GET 请求的目标 URL。 URL 以字符串的形式提供,用作 , 分隔符。 默认值:http://www.msftconnecttest.com/connecttest.txt
  • OUTBOUND_CONNECTIVITY_TIMEOUT_IN_MILLISECONDS:http GET 请求超时时间(以毫秒为单位)。 默认值:5000
  • OUTBOUND_CONNECTIVITY_TOTAL_ATTEMPTS:http 请求失败时尝试发送同一请求的总次数。 默认值:3
  • OUTBOUND_CONNECTIVITY_RETRY_INTERVAL_IN_SECONDS:当上一次 http 请求失败时,重试间隔时间(秒)。 默认值:10
DNS(域名系统) 如果 EnvironmentAttribute 的“OutboundConnectivityDisabled”未设置或设置为“false”,则可以使用 此收集器每 180 秒执行一次。 在每次执行中,它都会尝试解析 DNS 名称 www.msftconnecttest.com 。 如果无法解析 DNS 名称,验证将标记为“失败”。
  • DNS_INTERVAL:收集器的执行间隔。 默认值:180s
  • DNS_NAMES:要解析的域名用 , 分隔。 默认值:www.msftconnecttest.com
TCP统计数据 始终可以使用 此收集器每 180 秒执行一次。 在每次运行中,它将收集过去 180 秒的 TCP 统计信息。
  • TCP_STATS_INTERVAL:收集器的执行间隔。 默认值:180s
  •   
clock_skew 如果 EnvironmentAttribute 的“OutboundConnectivityDisabled”未设置或设置为“false”,则可以使用 此收集器每 180 秒执行一次。 在每次执行中,它将检索远程 NTP 服务器 time.windows.com 和 VM 之间的时钟偏移量。 如果时钟倾斜大于 5.0 秒,验证将标记为“失败”。 在 Windows VM 中,如果连接到远程 NTP 服务器失败,它会回退以使用 w32tm 命令检查 Windows 时间服务。 如果 w32tm 命令返回“Leap Indicator: 3(未同步),验证将标记为”失败”。
  • CLOCK_SKEW_INTERVAL:收集器的执行间隔。 默认值:180s
  • CLOCK_SKEW_NTP_SERVER:用于计算时钟倾斜的远程 NTP 服务器。 默认值:time.windows.com
  • CLOCK_SKEW_TIME_SKEW_THRESHOLD_IN_SECONDS:将验证标记为“失败”的时钟偏移量阈值(以秒为单位)。 默认值:5.0
disk_io 未指定装载点时始终可以使用。 如果显式指定了装入点,则仅当数据磁盘附加到 VM 时才符合条件 此收集器每 180 秒执行一次。 在每个执行中,它通过创建文件夹、创建文件、向其写入字节、删除和删除文件夹来验证每个可用装入点中的磁盘 io 可用性。 然后,它会从每个装入点收集磁盘使用情况信息,包括已用空间、可用空间、总容量和已用百分比。
  • DISK_IO_INTERVAL:收集器的执行间隔。 默认值:180s
  • DISK_IO_MOUNT_POINTS:以 , 分隔的装载点。 无默认值
  • DISK_IO_IGNORE_FS_LIST:应忽略的由 , 分隔的文件系统列表。 默认值:tmpfs、devtmpfs、devfs、iso9660、overlay、aufs、squashfs、autofs
  • DISK_IO_FILENAME:用于验证文件读/写的文件的名称。 默认值:vmwatch-{timestamp}.txt
disk_iops 始终可以使用 此收集器每 180 秒执行一次。 在每次执行时,它从每个可用的磁盘设备收集每秒读取和写入操作的指标。
  • DISK_IOPS_INTERVAL:收集器的执行间隔。 默认值:180s
  • DISK_IOPS_DEVICES:以 , 分隔的设备名称。 无默认值
  • DISK_IOPS_IGNORE_DEVICE_REGEX:应忽略的设备名称正则表达式。 默认值:循环
imds 始终可以使用 此收集器每 180 秒执行一次。 在每次执行中,它都会查询 IMDS 终结点 http://169.254.169.254/metadata/instance/compute ,并验证响应正文包含 VM 的信息(SubscriptionId、ResourceGroup、VMId、ResourceId)。 查询超时为 10s。 如果查询失败,则最多重试三次,间隔为 15 秒、30 秒和 45 秒。
  • IMDS_INTERVAL:收集器的执行间隔。 默认值:180s
  • IMDS_ENDPOINT:IMDS 终结点的 URL。 默认:http://169.254.169.254/metadata/instance/compute
  • IMDS_TIMEOUT_IN_SECONDS:每个查询的超时时间(以秒为单位)。 默认值:10
  • IMDS_QUERY_TOTAL_ATTEMPTS:如果上一个请求失败,则发送 http 请求的尝试总数。 默认值:4
  • IMDS_RETRY_INTERVAL_IN_SEONDS:如果上一个 http 请求失败,则重试间隔(以秒为单位)。 默认值:15、30、45
过程 始终可以使用 此收集器每 180 秒执行一次。 在每次执行中,它都会在 Windows 计算机和 ${SYTEM_DIR}\system32\cmd.exe /c echo hello Linux 计算机上创建和执行命令/bin/sh -c echo hello。 进程执行超时为 10s。
  • PROCESS_INTERVAL:收集器的执行间隔。 默认值:180s
  • PROCESS_TIMEOUT:进程执行超时时间。 默认值:10s
process_memory 始终可以使用 此收集器每 180 秒执行一次。 在每个执行中,它选择内存使用率最高的前三个进程,并报告 ProcessRSSPercent、ProcessPageFaults、MachineMemoryTotalInBytes、MachineMemoryUsedPercent 和 TotalPageFaults。
  • PROCESS_MEMORY_INTERVAL:收集器的执行间隔。 默认值:180s
  •   
process_cpu 始终可以使用 此收集器每 180 秒执行一次。 在每个执行中,它会选择 CPU 使用率最高的前三个进程,并报告 ProcessCoreUsage、ProcessMachineUsage 和 MachineTotalCpuUsage。
  • PROCESS_CPU_INTERVAL:收集器的执行间隔。 默认值:180s
  •   
process_monitor(进程监控器) 始终可以使用 未执行。 如果用户显式启用,此收集器将验证所选进程是否正在运行并收集其运行时间(以秒为单位)。
  • PROCESS_MONITOR_INTERVAL:收集器的执行间隔。 默认值:180s
  • PROCESS_MONITOR_PROCESS_NAMES:要监视的进程名称的正则表达式,以 , 分隔。 无默认值
系统错误 Windows 计算机中可用 此收集器每三分钟执行一次。 在每次执行中,它订阅 Windows EventLog 的“系统”通道,并查询 SystemData 中定义的级别 < =2(包括 LOG_ALWAYS、严重、错误)的事件。 measurementTarget 定义为使用默认 Windows 区域设置的 EventLog Source_EventId。 在每个集合中,对不同的测量目标数量的限制为不超过 10 个。
  • SYSTEM_ERROR_MEASUREMENT_TARGET_CAP:每次收集操作应用的 measurementTarget 数量上限。 默认值:10
az_storage_blob 如果 EnvironmentAttribute 的“OutboundConnectivityDisabled”未设置或设置为“false”,则可以使用 未执行。 如果用户显式地启用该功能,此收集器会验证 VM 是否可以通过托管身份标识或 SAS 令牌访问所选的 Azure 存储 Blob。
  • AZ_STORAGE_BLOB_INTERVAL:收集器的执行间隔。 默认值:180s
  • AZ_STORAGE_ACCOUNT_NAME:Azure 存储帐户名称。 无默认值
  • AZ_STORAGE_CONTAINER_NAME:Azure 存储容器名称。 无默认值
  • AZ_STORAGE_BLOB_NAME:Azure 存储 Blob 名称。 无默认值
  • AZ_STORAGE_BLOB_DOMAIN_NAME:Azure 的存储域名。 无默认值
  • AZ_STORAGE_SAS_TOKEN_BASE64:Base64 编码的 Azure 存储 SAS 令牌。 无默认值
  • AZ_STORAGE_USE_MANAGED_IDENTITY:是否使用托管标识进行身份验证。 默认值:false
  • AZ_STORAGE_MANAGED_IDENTITY_CLIENT_ID:用于身份验证的托管标识客户端 ID。 无默认值
hardware_health_monitor Windows 计算机中可用 未执行。 如果用户显式启用,则此收集器将从 Windows 事件日志收集硬件运行状况信息,目前仅收集与磁盘相关的关键事件,包括 ID 为 7、500、504、505、505、512 和 549 的事件。
  • HARDWARE_HEALTH_MONITOR_INTERVAL:收集器的执行间隔。 默认值:180s
  •   
hardware_health_nvidia_smi 在 Linux Ubuntu 计算机中符合条件 未执行。 如果用户显式启用,则此收集器将从 Windows 事件日志收集硬件运行状况信息,目前仅收集与磁盘相关的关键事件,包括 ID 为 7、500、504、505、505、512 和 549 的事件。
  • HARDWARE_HEALTH_NVIDIA_SMI_INTERVAL:收集器的执行间隔。 默认值:60s
  • HARDWARE_HEALTH_NVIDIA_SMI_INTERVAL:运行 /usr/bin/nvidia-smi 命令的超时时间。 默认值:10s
  •  

后续步骤