0

我有这个简单的性能计数器设置。问题是这个性能计数器完全没用。它在 60 秒的时间跨度内测量 CPU 使用百分比并记录该数字。我需要做的是以某种方式让它过滤数据,以便它只记录 CPU 利用率高的数字,比如 80%+。我不想用垃圾数据夸大日志。

diagnosticMonitorConfiguration.PerformanceCounters.ScheduledTransferPeriod = TimeSpan.FromMinutes(2D);
diagnosticMonitorConfiguration.PerformanceCounters.BufferQuotaInMB = 10;
TimeSpan perfSampleRate = TimeSpan.FromSeconds(60D);

 diagnosticMonitorConfiguration.PerformanceCounters.DataSources.Add(new PerformanceCounterConfiguration()
{
    CounterSpecifier = @"\Processor(_Total)\% Processor Time",
    SampleRate = perfSampleRate
});
4

1 回答 1

0

您所要求的实际上是不可能的。您可以将 CPU 值以每实例每分钟一次的频率传输到表中。但是您需要对 WADPerformanceCountersTable 使用自定义查询,以获取仅超过某个阈值的值。

你想做什么?最终目标?

于 2012-04-07T01:20:12.330 回答