在我对自己的所有问题发出反应之前,我以为我会让你们经营它,看看你是否可以指点我或传递一些技巧。
我正在编写一个非常基本的监控脚本,以确保我的一些Web应用程序还活着并回答。如果出现问题,我会从cron中解雇它并发送警报电子邮件。
所以我正在寻找的是关于要注意什么的建议。获取wget的输出可能会让我感觉到,但我想知道是否有更多的编程方法可以从wget和我生成的网页中获取健壮的状态信息。
这是一个普遍的问题,我只是在寻找之前碰巧做过这种事情的人的提示。
答案 0 :(得分:1)
检查退出代码,
wget --timeout=10 --whatever http://example.com/mypage
if [ $? -ne 0 ] ; then
there's a pproblem, mail logs, send sms, etc.
fi
答案 1 :(得分:1)
我更喜欢curl --head
这种用法:
% curl --head http://stackoverflow.com/
HTTP/1.1 200 OK
Cache-Control: public, max-age=60
Content-Length: 359440
Content-Type: text/html; charset=utf-8
Expires: Tue, 05 Oct 2010 19:06:52 GMT
Last-Modified: Tue, 05 Oct 2010 19:05:52 GMT
Vary: *
Date: Tue, 05 Oct 2010 19:05:51 GMT
这将允许您检查返回状态以确保它是200(或您预期的任何内容)和内容长度以确保它是预期值(或至少不为零。)它如果连接有任何问题,将退出非零。
如果要检查页面内容的更改,请通过md5管道输出,然后比较您获得的预先计算的已知值:
wget -O - http://stackoverflow.com | md5sum