首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >填充NAGIOS主机从数据库获取状态数据

填充NAGIOS主机从数据库获取状态数据
EN

Stack Overflow用户
提问于 2011-02-23 01:10:21
回答 2查看 1.3K关注 0票数 2

我们有一个Nagios服务器,我们用它来监控我们的主机。

现在,我们有了一个旧系统,它在mysql数据库中报告某些特定主机的状态。我想知道是否有一种方法(如果有可能的话)可以编写一个插件,可以从数据库获取数据并填充Nagios监视器。

让我们想象一下数据库有一个这样的表: IP、主机名、状态、CPU_TEMP、HDD_TEMP

我想把这些数据放到Nagios监视器中。有可能吗?

没有办法通过nagios守护进程连接客户端,我只能从这个数据库获取数据。

谢谢!问候

EN

回答 2

Stack Overflow用户

发布于 2011-03-22 16:33:44

如果您可以直接从nagios访问数据库,我会这样做一些bash脚本:

代码语言:javascript
复制
mysql -uuser -ppass -H monitoringDb.mydomain.com -e "select HOSTNAME,STATUS,CPU_TEMP,HDD_TEMP from monitoring where STATUS != "OK" OR CPU_TEMP > '40' OR HDD_TEMP > '20'" > /tmp/check_monitoring

if [[ `wc -l /tmp/check_monitoring` > 0 ]]; # If that query returned anything, you have an issue
     then echo "CRITICAL: `cat /tmp/check_monitoring`" && exit 2
fi

echo "OK: Monitoring DB Checks passed" && exit 0

SQL可能有一两个bug,但您应该明白这一点。如果你想获得更好的效果,你可以做更多的If语句的警告级别,并返回1。

票数 1
EN

Stack Overflow用户

发布于 2011-03-08 03:43:34

您需要制作一个插件,该插件将连接到数据库,查询给定的主机名或IP,并检查状态是否在参数范围内。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5081402

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档