Zabbix - perf_counter中的通配符用法

问题描述 投票:0回答:1

学院!

我真的需要在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"]

计数器不支持“无法从收集器获取性能信息”。

我真的需要你的帮助!谢谢你,祝你有美好的一天!

wildcard zabbix
1个回答
1
投票

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}"]这样的项目原型,这应该可以解决问题。

© www.soinside.com 2019 - 2024. All rights reserved.