我正在尝试通过WMI从
Windows Server 2012查询DNS统计信息.
如果我在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
有两个同名的统计数据?完全不同的价值观?什么?所以我开始调查underlying class,我发现该类实际上有:
uint32 UdpAlloc; uint32 TcpAlloc;
这看起来很明显,上面的两个值很可能就是那两个.但是 – 哪一个是哪个?
看起来似乎是一个明显的假设,即较大的数字是UDP,较小的数字是TCP.但是,由于存在多个重复的统计数据而不仅仅是这一个,并且其中一些具有可能是TCP或UDP的低值,因此这进一步复杂化.
有没有其他人见过这个并在其周围工作过?
解决方法
这不是一个很好的答案,但我所看到的行为在具有此计数器的所有Windows Server版本(包括2016年)之间是一致的.
最后,我只是将重复的计数器(我在这个项目的过程中发现了很多)整合到一个计数器中,并决定不担心它们是TCP还是UDP请求/响应.