使用性能计数器进行 ATA 故障排除

适用于:高级威胁分析版本 1.9

ATA 性能计数器可针对 ATA 的每个组件的性能提供见解。 ATA 中的组件按顺序处理数据,以便在出现问题时,可能会导致沿组件链部分流量被删除。 若要解决此问题,必须找出哪个组件正在反文件,并在链的开头修复问题。 使用性能计数器中找到的数据来了解每个组件的工作方式。 请参阅 ATA 体系结构,了解内部 ATA 组件的流。

ATA 组件过程

  1. 当组件达到其最大大小时,它会阻止上一个组件向其发送更多实体。

  2. 然后,最终上一个组件将开始增加自己的大小,直到它阻止先前的组件发送更多实体。

  3. 这一切将一路传回 NetworkListener 组件,当它无法再转发实体时,该组件将删除流量。

检索性能监视器文件进行故障排除

若要从各种 ATA 组件检索性能监视器文件 (BLG):

  1. 打开 perfmon。
  2. 停止名为:Microsoft ATA 网关或 Microsoft ATA 中心的数据收集器集。
  3. 转到数据收集器集文件夹(默认情况下为“C:\Program Files\Microsoft Advanced Threat Analytics\Gateway\Logs\DataCollectorSets”或“C:\Program Files\Microsoft Advanced Threat Analytics\Center\Logs\DataCollectorSets”)。
  4. 拷贝最近修改的 BLG 文件。
  5. 重启名为:Microsoft ATA 网关或 Microsoft ATA 中心的数据收集器集。

ATA 网关性能计数器

在本部分中,对 ATA 网关的每个引用都适用于 ATA 轻型网关。

可以通过添加 ATA 网关的性能计数器来观察 ATA 网关的实时性能状态。 为此,可以打开性能监视器并为 ATA 网关添加所有计数器。 性能计数器对象的名称为:Microsoft ATA 网关

下面是要注意的主要 ATA 网关计数器列表:

计数器 说明 阈值 疑难解答
Microsoft ATA Gateway\NetworkListener PEF Parsed Messages\Sec ATA 网关每秒处理的流量。 无阈值 帮助你了解 ATA 网关正在分析的流量。
NetworkListener PEF Dropped Events\Sec ATA 网关每秒删除的流量。 这个数字应该一直为零(罕见的短速下降是可以接受的)。 检查是否有任何组件达到其最大大小,并一直阻止以前的组件到 NetworkListener。 请参阅上面的“ATA 组件过程”

检查 CPU 或内存是否存在问题。
Microsoft ATA Gateway\NetworkListener ETW Dropped Events\Sec ATA 网关每秒删除的流量。 这个数字应该一直为零(罕见的短速下降是可以接受的)。 检查是否有任何组件达到其最大大小,并一直阻止以前的组件到 NetworkListener。 请参阅上面的“ATA 组件过程”

检查 CPU 或内存是否存在问题。
Microsoft ATA Gateway\NetworkActivityTranslator Message Data # Block Size 排队用于转换为网络活动 (NA) 的流量。 应小于最大值减去 1(默认最大值:100,000) 检查是否有任何组件达到其最大大小,并一直阻止以前的组件到 NetworkListener。 请参阅上面的“ATA 组件过程”

检查 CPU 或内存是否存在问题。
Microsoft ATA Gateway\EntityResolver Activity Block Size 排队解决的网络活动 (NA) 数。 应小于最大值减去 1(默认最大值:10,000) 检查是否有任何组件达到其最大大小,并一直阻止以前的组件到 NetworkListener。 请参阅上面的“ATA 组件过程”

检查 CPU 或内存是否存在问题。
Microsoft ATA Gateway\EntitySender Entity Batch Block Size 排队发送到 ATA 中心的网络活动 (NA) 量。 应小于最大值减去 1(默认最大值:1,000,000) 检查是否有任何组件达到其最大大小,并一直阻止以前的组件到 NetworkListener。 请参阅上面的“ATA 组件过程”

检查 CPU 或内存是否存在问题。
Microsoft ATA Gateway\EntitySender Batch Send Time 发送最后一批所需的时间。 大部分时间应小于 1000 毫秒 检查 ATA 网关和 ATA 中心之间是否存在任何网络问题。

注意

  • 计时计数器以毫秒为单位。
  • 使用“报告”图类型监视计数器的完整列表有时更方便(例如:所有计数器的实时监视)

ATA 轻型网关性能计数器

性能计数器可用于轻型网关中的配额管理,以确保 ATA 不会从安装了它的域控制器中耗尽太多资源。 若要度量 ATA 在轻型网关上强制实施的资源限制,请添加这些计数器。

为此,可以打开性能监视器并为 ATA 轻型网关添加所有计数器。 性能计数器对象的名称包括:Microsoft ATA 网关和 Microsoft ATA 网关更新程序

计数器 说明 阈值 疑难解答
Microsoft ATA Gateway Updater\GatewayUpdaterResourceManager CPU Time Max % 轻型网关进程可以使用的最大 CPU 时间(百分比)。 无阈值。 这是保护域控制器资源免受 ATA 轻型网关使用的限制。 如果看到进程经常在一段时间内达到最大限制(进程达到限制,然后开始删除流量),则意味着需要向运行域控制器的服务器添加更多资源。
Microsoft ATA Gateway Updater\GatewayUpdaterResourceManager Commit Memory Max Size 轻型网关进程可以使用的最大提交的内存量(以字节为单位)。 无阈值。 这是保护域控制器资源免受 ATA 轻型网关使用的限制。 如果看到进程经常在一段时间内达到最大限制(进程达到限制,然后开始删除流量),则意味着需要向运行域控制器的服务器添加更多资源。
Microsoft ATA Gateway Updater\GatewayUpdaterResourceManager Working Set Limit Size 轻型网关进程可以使用的最大物理内存量(以字节为单位)。 无阈值。 这是保护域控制器资源免受 ATA 轻型网关使用的限制。 如果看到进程经常在一段时间内达到最大限制(进程达到限制,然后开始删除流量),则意味着需要向运行域控制器的服务器添加更多资源。

若要查看实际使用情况,请参阅以下计数器:

计数器 说明 阈值 疑难解答
Process(Microsoft.Tri.Gateway)%Processor Time 轻型网关进程实际使用的 CPU 时间(百分比)。 无阈值。 将此计数器的结果与 GatewayUpdaterResourceManager CPU Time Max % 中发现的限制进行比较。 如果看到进程经常在一段时间内达到最大限制(进程达到限制,然后开始删除流量),则意味着轻型网关需要专用更多资源。
Process(Microsoft.Tri.Gateway)\Private Bytes 轻型网关进程实际使用的提交的内存量(以字节为单位)。 无阈值。 将此计数器的结果与 GatewayUpdaterResourceManager Commit Memory Max Size 中发现的限制进行比较。 如果看到进程经常在一段时间内达到最大限制(进程达到限制,然后开始删除流量),则意味着轻型网关需要专用更多资源。
Process(Microsoft.Tri.Gateway)\Working Set 轻型网关进程实际使用的物理内存量(以字节为单位)。 无阈值。 将此计数器的结果与 GatewayUpdaterResourceManager Working Set Limit Size 中发现的限制进行比较。 如果看到进程经常在一段时间内达到最大限制(进程达到限制,然后开始删除流量),则意味着轻型网关需要专用更多资源。

ATA 中心性能计数器

可以通过添加 ATA 中心的性能计数器来观察 ATA 中心的实时性能状态。

为此,可以打开性能监视器并为 ATA 中心添加所有计数器。 性能计数器对象的名称为:Microsoft ATA 中心

下面是要注意的主要 ATA 中心计数器列表:

计数器 说明 阈值 疑难解答
Microsoft ATA Center\EntityReceiver Entity Batch Block Size 由 ATA 中心排队的实体批处理数。 应小于最大值减去 1(默认最大值:10,000) 检查是否有任何组件达到其最大大小,并一直阻止以前的组件到 NetworkListener。 请参阅前面的“ATA 组件过程”

检查 CPU 或内存是否存在问题。
Microsoft ATA Center\NetworkActivityProcessor Network Activity Block Size 排队处理的网络活动 (NA) 数。 应小于最大值减去 1(默认最大值:50,000) 检查是否有任何组件达到其最大大小,并一直阻止以前的组件到 NetworkListener。 请参阅前面的“ATA 组件过程”

检查 CPU 或内存是否存在问题。
Microsoft ATA Center\EntityProfiler Network Activity Block Size 排队分析的网络活动 (NA) 数。 应小于最大值减去 1(默认最大值:100,000) 检查是否有任何组件达到其最大大小,并一直阻止以前的组件到 NetworkListener。 请参阅前面的“ATA 组件过程”

检查 CPU 或内存是否存在问题。
Microsoft ATA Center\Database * Block Size 排队要写入数据库的特定类型的网络活动数。 应小于最大值减去 1(默认最大值:50,000) 检查是否有任何组件达到其最大大小,并一直阻止以前的组件到 NetworkListener。 请参阅前面的“ATA 组件过程”

检查 CPU 或内存是否存在问题。

注意

  • 计时计数器以毫秒为单位
  • 使用“报告”图类型监视计数器的完整列表有时更方便(例如:所有计数器的实时监视)。

操作系统计数器

下表列出了要注意的主要操作系统计数器:

计数器 说明 阈值 疑难解答
Processor(_Total)% Processor Time 处理器执行非空闲线程所用时间的百分比。 平均小于 80% 检查是否有特定进程花费的处理器时间是否比预期多得多。

添加更多处理器。

减少每个服务器的流量。

在虚拟服务器上,“Processor(_Total)% Processor Time”计数器可能不太准确,在这种情况下,更准确测量处理器电源缺乏情况的方法是通过“System\Processor Queue Length”计数器进行测量。
System\Context Switches\sec 所有处理器从一个线程切换到另一个线程的组合速率。 少于 5000 个*核心(物理核心) 检查是否有特定进程花费的处理器时间是否比预期多得多。

添加更多处理器。

减少每个服务器的流量。

在虚拟服务器上,“Processor(_Total)% Processor Time”计数器可能不太准确,在这种情况下,更准确测量处理器电源缺乏情况的方法是通过“System\Processor Queue Length”计数器进行测量。
System\Processor Queue Length 准备执行且正在等待计划的线程数。 少于五个*核心(物理核心) 检查是否有特定进程花费的处理器时间是否比预期多得多。

添加更多处理器。

减少每个服务器的流量。

在虚拟服务器上,“Processor(_Total)% Processor Time”计数器可能不太准确,在这种情况下,更准确测量处理器电源缺乏情况的方法是通过“System\Processor Queue Length”计数器进行测量。
Memory\Available MBytes 可用于分配的物理内存量 (RAM)。 应大于 512 检查是否有特定进程花费的物理内存是否比预期多得多。

增加物理内存量。

减少每个服务器的流量。
LogicalDisk(*)\Avg. Disk sec\Read 从磁盘读取数据的平均延迟(应选择数据库驱动器作为实例)。 应小于 10 毫秒 检查是否存在使用数据库驱动器的特定进程是否比预期更多。

咨询存储团队/供应商,确定此驱动器是否可以提供当前工作负荷,同时延迟小于 10 毫秒。 可以使用磁盘利用率计数器来确定当前工作负荷。
LogicalDisk(*)\Avg. Disk sec\Write 向磁盘写入数据的平均延迟(应选择数据库驱动器作为实例)。 应小于 10 毫秒 检查是否存在使用数据库驱动器的特定进程是否比预期更多。

咨询存储团队\供应商,确定此驱动器是否可以提供当前工作负荷,同时延迟小于 10 毫秒。 可以使用磁盘利用率计数器来确定当前工作负荷。
\LogicalDisk(*)\Disk Reads\sec 对磁盘执行读取操作的速率。 无阈值 排查存储延迟问题时,磁盘利用率计数器可以提供更多见解。
\LogicalDisk(*)\Disk Read Bytes\sec 每秒从磁盘读取的字节数。 无阈值 排查存储延迟问题时,磁盘利用率计数器可以提供更多见解。
\LogicalDisk*\Disk Writes\sec 对磁盘执行写入操作的速率。 无阈值 磁盘利用率计数器(可在排查存储延迟问题时提供更多见解)
\LogicalDisk(*)\Disk Write Bytes\sec 每秒向磁盘写入的字节数。 无阈值 排查存储延迟问题时,磁盘利用率计数器可以提供更多见解。

另请参阅