我正在尝试检查mysql查询输出,并将结果与我的Nagios服务检查的某些值进行比较 可能有更好的方法来解决这个问题(如果是这样的话 - 请分享:))... 现在,我正在尝试这种方法:
./check_mysql_health --username root --password MyPassw0rd --mode sql --name 'show variables like 'max_connections'' --name2 "max_connections 4096"
PS:我的max_connections是4096
mysql -Bse "show variables like 'max_connections';"
max_connections 4096
输出结果为:
Use of uninitialized value $value in numeric gt (>) at ./check_mysql_health line 1237.
Use of uninitialized value $value in numeric gt (>) at ./check_mysql_health line 1238.
OK - max_connections 4096:
如果我将name2中的值更改为不等于“max_connections 4096”的值,如“G1Li”,则输出返回OK状态。
./check_mysql_health --username root --password MyPassw0rd --mode sql --name 'show variables like 'max_connections'' --name2 "G1Li"
Use of uninitialized value $value in numeric gt (>) at ./check_mysql_health
line 1237.
Use of uninitialized value $value in numeric gt (>) at ./check_mysql_health line 1238.
OK - g1li:
# echo $?
0
有什么想法吗?
吉利答案 0 :(得分:0)
我也是新手,这可能有所帮助,
./check_mysql_health --username root --password MyPassw0rd --mode sql \
--name 'show 1,variables like 'max_connections'' --name2 "status max_connections 4096"
我们正在将此用于Oracle。我不确定这个状态,但是1是正确的。
或者您可以自定义,如添加更多模式(有两个主要部分,一个是远程/本地执行sql查询,另一个是解析nagios / icinga的结果数据),你想要的插件!这将是一个更好的解决方案。