学院!
我真的需要在perf_counter中使用通配符。
我们有用于SqlServer计数器的.NET数据提供程序。不幸的是,每次重启后计数器上的ID都会发生变化
现在我有这样的反击:
perf_counter["\.NET Data Provider for SqlServer(_lm_w3svc_3_root-3-131958133162924330[18196])\NumberOfActiveConnectionPools"]
我该如何永久使用它。也许我需要使用这样的通配符:
perf_counter["\.NET Data Provider for SqlServer(_lm_w3svc_3_root-3-131958133162924330[*])\NumberOfActiveConnectionPools"]
计数器不支持“无法从收集器获取性能信息”。
我真的需要你的帮助!谢谢你,祝你有美好的一天!
documentation没有提到带有性能指标的通配符。
如果您的计数器在每次重新启动时都发生变化,即使您正在处理单个项目,也需要使用发现规则。
发现规则可以是PowerShell脚本,如:
$result = @{}
$result.data = @()
(get-counter -Listset *).paths | ForEach-Object {
if ($_ -Like "*_lm_w3svc_3_root-3-131958133162924330*\NumberOfActiveConnectionPools") {
$result.data += @{
"{#PATH}" = $_
}
}
}
$result | ConvertTo-Json
将它设置为每小时或更短时间运行并创建像perf_counter["{#PATH}"]
这样的项目原型,这应该可以解决问题。