Zabbix - perf_counter 中的通配符用法
Zabbix - wildcard usage in perf_counter
大学!
我真的需要在 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"]
"Cannot obtain performance information from collector" 不再支持计数器。
我真的需要你的帮助!
谢谢你,祝你有美好的一天!
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}"]
的项目原型,这应该可以解决问题。
大学!
我真的需要在 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"]
"Cannot obtain performance information from collector" 不再支持计数器。
我真的需要你的帮助! 谢谢你,祝你有美好的一天!
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}"]
的项目原型,这应该可以解决问题。