我的博客是一个自定义的 ruby/rack 应用程序,每隔几周就会随机崩溃。有时我几天都没有注意到,如果发生这种情况,我希望立即收到通知。
最好的方法是什么? 我正在运行 Centos 5.3、Nginx、Passenger、Rack 等。
我考虑过想办法通过电子邮件将错误日志的末尾发送给自己,因为这样可以帮助我捕获所有内容,而不仅仅是某个应用程序(它会告诉我缺少的链接等)。有没有简单的方法可以做到这一点?
谢谢!
答案1
如果您的网站出现故障时需要收到警报,您应该考虑使用在线通知服务:他们将看到外部视角。
如果您从“自己的机器内部”进行监控,如果它完全崩溃或失去网络连接,您将永远不会收到电子邮件,因为您的脚本将无法再运行或提醒您。
更多服务列于有人可以推荐一个网站监控服务吗?
答案2
我很惊讶没有人提到纳吉奥斯。它功能强大,可以计算正常运行时间百分比、通过电子邮件/即时通讯发送通知、在停机时运行脚本等。它可能是最好的。
答案3
查看 AreMySitesUp (http://aremysitesup.com) 和 Pingdom。两者都有免费选项,当您的网站瘫痪时会发送电子邮件和短信。AreMySitesUp 也有 iPhone 应用程序。
答案4
您只需编写一个使用 wget 的 shell 脚本,然后根据响应代码确定页面是否响应,即可进行基本的连接测试。
#!/bin/bash
WGET='/usr/bin/wget'
URL='http://url.to.check'
${WGET} -O /dev/null --tries=1 ${URL}
if [ $? -eq 0 ]; then
echo "Success!"
# You could write a log file or something here
else
echo "Fail! :("
# run something to mail you that your site isn't responding
fi
这是一个非常基本的示例,可以进行扩展,但如果您只是在寻找一些快速的方法,那么这个就足够了。您可以将其设置为 cron,这样您就可以在一分钟内知道它是否崩溃了。