Назад | Перейти на главную страницу

Ошибка в пространстве имен WMI для класса MicrosoftDNS Statistics?

Я пытаюсь запросить статистику DNS из Windows Server 2012 через WMI.

Если я запустил следующую команду в Powershell:

Get-WmiObject -Namespace root\MicrosoftDNS -Class MicrosoftDNS_Statistic | ?{ $_.Name.Contains("UDP messages allocated") } | ft Name,Value

Получаю следующее:

Name                           Value
----                           -----
UDP messages allocated         20550
UDP messages allocated         2596235

Две статистики с одинаковым названием? И совсем другие ценности? Какой? Итак, я начинаю исследовать базовый класс и я вижу, что класс фактически имеет:

uint32 UdpAlloc;
uint32 TcpAlloc;

Что кажется очевидным, и два приведенных выше значения, скорее всего, являются этими двумя. Но - какой из них какой?

Казалось бы, очевидное предположение, что большее число - UDP, а меньшее - TCP. Но это еще больше усложняется тем фактом, что существует несколько дублированных статистических данных, а не только эта, и некоторые из них имеют низкие значения, которые могут быть либо TCP, либо UDP.

Кто-нибудь еще видел это раньше и работал над этим?

Не лучший ответ на этот вопрос, но поведение, которое я наблюдал, было одинаковым для всех версий Windows Server, в которых был этот счетчик, включая 2016.

В итоге я просто объединил дублирующие счетчики (я нашел много больше в ходе этого проекта) в один счетчик и решил не беспокоиться, были ли они запросами / ответами TCP или UDP.