Zabbix MSSQL 監控 - 失敗:無法透過路徑從 json 中提取值

Zabbix MSSQL 監控 - 失敗:無法透過路徑從 json 中提取值

我已經在 zabbix 5.0 LTS 上建立新主機用於監視 SQL Server (2012)。我使用 zabbix 的預設模板(Template DB MSSQL by ODBC)。

我在主機上設定的這個宏

{$MSSQL.DSN} => devdb
{$MSSQL.INSTANCE} => DBDEV115\DBDEV115
{$MSSQL.PASSWORD} => passworduserdb
{$MSSQL.PORT} => 4019
{$MSSQL.USER} => zabbix

之後我在每個項目上看到我收到這樣的錯誤訊息

Failed: cannot extract value from json by path "$[?(@.object_name=='DBDEV115\DBDEV115:Databases' && @.counter_name=='Transactions/sec' && @.instance_name=='dbColaFlakes')].cntr_value.first()": unsupported construct in jsonpath starting with: "'DBDEV115\DBDEV115:Databases' && @.counter_name=='Transactions/sec' && @.instance_name=='dbColaFlakes')].cntr_value.first()"

這個錯誤是受實例名稱影響嗎?還是zabbix不支持?

因為我從這樣的查詢中得到了實例名稱

select @@servername

答案1

解決方案:
1 - 您必須找到真實的實例名稱,並且可以像這樣使用查詢mssql:

SELECT object_name, counter_name, cntr_value <br>
FROM sys.dm_os_performance_counters<br>
WHERE [object_name] LIKE '%Buffer Manager%'<br>
AND [counter_name] = 'Page life expectancy'<br>

輸出必須是這樣的: 像這樣輸出查詢

2 - 查找後物件名稱在 Zabbix {$MSSQL.INSTANCE} 巨集中設定。
像這樣 :Zabbix配置

相關內容