症状表现为:perl脚本在主机上运行一切正常,但是通过nagios后却显示不出变量值,而常量值则正常显示。

      碰到这种症状在一开始的时候就应该想到是权限问题引起,果不其然,通过nagios账户测试后发现了原因所在。

     解决:

       1、因为脚本是通过perl连接mysql获取数据并分析slow-queries.log日志文件的,而nagios脚本则需要nagios账户运行,所以首先要确保nagios账户的连接性;

       2、分析日志文件的时候要确保权限足够,不然还是会出错,这里测试后最少也要赋予日志文件其他组用户的r和x权限;

综上,问题解决!