我尝试在 ubuntu 中安装插件以监控 tomcat 我从下载插件文件
http://exchange.nagios.org/directory/Plugins/Java-Applications-and-Servers/Apache-Tomcat
但是如何在 nagios-server 中配置这个插件,以便我可以使用 web-console 监控 tomcat
我尝试在 ubuntu 中安装插件以监控 tomcat 我从下载插件文件
http://exchange.nagios.org/directory/Plugins/Java-Applications-and-Servers/Apache-Tomcat
但是如何在 nagios-server 中配置这个插件,以便我可以使用 web-console 监控 tomcat
下载插件后,将此插件移动到插件文件夹,默认为 /usr/local/nagios/libexec/。
将插件的权限改为nagios
chown nagios:nagios /usr/local/nagios/libexec/check_tomcat.pl
在 command.cfg file.Location(/usr/local/nagios/etc/objects/commands.cfg) 中添加此插件的命令定义
define command{
command_name check_tomcat
command_line /usr/local/nagios/libexec/check_tomcat.pl
}
提及插件所需的参数
在您的服务文件中添加命令可能是 localhost.cfg 或单独的文件。
define service{
use generic-service ; Name of service template to use
hostgroup_name Host1
service_description Tomcat
check_command check_tomcat
contacts contact1
notifications_enabled 1
}
重新启动 nagios 和 xinetd(如果您使用)
现在您可以在 Web 控制台中查看服务监控 tomcat。
我想充实 Priya 的答案,并从我自己的磨难中添加一些见解,以使该插件正常工作。
我遇到的主要问题与 ePN(嵌入式 Perl Nagios)有关:显然该插件不符合 ePN 的标准,并且在从命令行成功运行脚本后,我一直收到此错误:
**ePN /usr/lib64/nagios/plugins/check_tomcat: "Subroutine LWP::UserAgent::get_basic_credentials redefined at (eval 1) line 222,".
我搜索了全局禁用 ePN,但发现这个Nagios 文档页面有这个有用的建议:
要告诉 Nagios 不要对特定脚本使用嵌入式 Perl 解释器,请将此行添加到 Perl 脚本:
# nagios: -epn
任何一行都必须位于脚本的前 10 行中,以便 Nagios 检测到它。
添加该评论清除了“未知”错误,插件开始工作。
安装
我通过 EPEL 存储库安装了 Nagios。我保留了与安装时相同的大多数权限,包括安装为root:root
. 我所做的一项更改是将所有CFG
文件更改/etc/nagios/objects
为root:nagios
:我将自己添加到nagios
组中,因此编辑更容易。对于我的 CentOS 安装,插件安装到/usr/lib64/nagios/plugins
. 我下载check_tomcat.pl
到该目录,将其重命名为 just check_tomcat
(没有真正好的理由),chmod 755
对其进行了操作,然后添加# nagios: -epn
到其中。
CFG
以下是我的文件的摘录:
命令.cfg:
# 'check_tomcat' command definition
define command{
command_name check_tomcat
command_line $USER1$/check_tomcat -H $HOSTADDRESS$ -p $ARG1$ -l $ARG2$ -a $ARG3$ -w $ARG4$ -c $ARG5$
}
本地主机.cfg:
# Define a service to check the state of a Tomcat service
define service{
use local-service
host_name localhost
service_description Tomcat
check_command check_tomcat!8080!tomcat!tomcat!25%,25%!10%,10%
}
$HOSTADDRESS$
作为host_name
别名从服务传递到命令。
谢谢,