我们没有任何合适的服务器监控解决方案(我想在今年夏天纠正这种情况),但我有一个特别想要监控的服务。我们目前的监控系统,等待客户来电问题,工作良好,广泛使用的系统,但这并不影响多少人,例如,DHCP.
我正在运行所有正确的类型3服务器(叹息)一个OS X 10.3 (豹)盒因为它不会在更新的东西上自动启动,我们的软件采购人员真的不想得到更新的软件。客户端软件运行良好的学生的机器,在OS 10.5 (豹)。
现在,我偶尔接到一个电话,这台服务器关机了,机器本身还在运转!,我更希望在有人拿起电话之前知道。这个过程似乎被称为"atrtserv.osx“。虽然它确实使用了网络,但如果它的文档谈到了如何发送消息以查看服务是否已经启动,那么我将感到非常不安,因为这是一种粗粒度的方法,比如每五分钟检查一次进程是否存在。
是否有一种简单的方法来监视一项服务(尤指。在Mac上?
发布于 2009-05-29 20:44:15
我并不保证这段代码工作正常(尤其是以"RUNNING=“开头的行,而是替换您自己的一些测试,这些测试可以在字符串运行时返回字符串,而在没有字符串时返回字符串。
#!/bin/bash
while true ; do
RUNNING=`ps aux | grep atrtserv | grep -v grep`
if [ -n "$RUNNING" ] ; then
echo "atrtserv.osx is broken" | mail -s "atrtserv down" whoever@whatever.com
sleep 300
else
sleep 300
fi
done
编辑使用上面的pgrep代替我的hack
发布于 2009-05-29 20:42:47
好吧,最简单的方法可能是:
pgrep atrtserv.osx >/dev/null || (
date |
mail -s 'atrtserv.osx down on yourmachine.foo' yourSMSphonenumber@yourtelco.com
)
在以您选择的间隔运行的cron作业中。
发布于 2009-05-29 20:41:11
您可以编写一个运行ps的小脚本,并让cron每5分钟运行一次。
如果发现有什么问题,邮件会寄给你。
我认为,总实施时间可达15分钟。
https://serverfault.com/questions/15110
复制相似问题