我在 Centreon 中使用我的探空儀(插件)之一時遇到問題。
在我的輪詢伺服器上,我啟動以下命令:
/usr/bin/perl /usr/lib/nagios/plugins/centreon-plugins-master/centreon_plugins.pl --plugin=os::linux::snmp::plugin --mode=storage --hostname=XXX.XXX.XXX.XXX --warning-usage=80 --critical-usage=90 --snmp-version=2c --snmp-community=supervision --space-reservation=5 --verbose --explode-perfdata-max --name --regexp --storage='^(?!(/mnt.*)$)'
它工作完美。
當我在 Centreon 管理控制台中配置我的主機並執行它時,出現錯誤:(執行命令失敗)
/usr/bin/perl /usr/lib/nagios/plugins/centreon-plugins-master/centreon_plugins.pl
--plugin=os::linux::snmp::plugin
--mode=storage
--hostname=XXX.XXX.XXX.XXX
--warning-usage=80
--critical-usage=90
--snmp-version=2c
--snmp-community=supervision
--space-reservation=5
--verbose
--explode-perfdata-max
--name
--regexp
--storage='^(?!(/mnt.*)
它不起作用,因為它刪除了我的正規表示式的最後一個簡單引用。我試圖搜索如何解決它,但實際上什麼也沒找到。
有人可以幫我嗎? :)
答案1
我在官方 Centreon Slack 上找到了答案:)
Centreon引擎解釋$,所以解決方案之一就是這樣加倍:
--name --regexp --storage='^(?!(/mnt.*)$$)'
這正確的解決方案就是使用巨集。在我使用的命令範本中,我添加瞭如下內容$_SERVICEEXCLUDEFS$
:當我創建一個時它會出現像這樣的服務。然後我可以將其用於該特定主機(並且沒有雙 $)