Я пытаюсь запросить статистику 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.
Кто-нибудь еще сталкивался с этим раньше и решил эту проблему?
решение1
Не самый лучший ответ на этот вопрос, но поведение, которое я наблюдал, было одинаковым для всех версий Windows Server, в которых был этот счетчик, включая 2016.
В конце концов я просто объединил дублирующиеся счетчики (я нашелмногобольше в ходе этого проекта) в один счетчик и решил не беспокоиться о том, были ли это запросы/ответы TCP или UDP.