Linux下设置监控tomcat端口脚本,优化版

领导要求脚本要长时间在系统后台运行,于是修改了上次的脚本,加了守护进程。我的脚本如下:

#!/bin/bash

echo "Start"

URL="http://127.0.0.1:8080/"

curlit()

{

#echo "??"

curl --connect-timeout 10 --max-time 20 --head --silent "$URL" | grep '200'

# 上面的15是连接超时时间,若访问localhost的HTTP服务超过15s仍然没有正确响应200头代码,则判断为无法访问。

}

doit()

{

if ! curlit; then

# 如果localhost的apache服务没有正常返回200头,即出现异常。执行下述命令:

# echo "TD"

sleep 20

#top -n 1 -b >> /var/log/log.log

kill `ps -ef|grep java|grep -v grep |awk '{print $2}'` > /dev/null 2>&1

# 这条语句中ps -ef|grep java|grep -v grep为查询进程中java进程同时排除本身语句,用awk找到第二列信息,返回状态扔到黑洞中。

sleep 2

cd /home/test/tomcat6/bin/

nohup /home/test/tomcat6/bin/startup.sh >/home/jiankong.log &

#echo "EN"

echo $(date) “Tomcat Restart” >> /var/log/log.log

# 写入日志

sleep 60

# 重启完成后等待,然后再次尝试一次

if ! curlit; then

# 如果仍然无法访问,则:

echo "@"

echo $(date) “Failed!” >> /var/log/log.log

# 写入apache依然重启失效的日志

fi

参考资料解释:

在启动weblogic的时候我们经常看到如下的命令:

nohup ./startWebLogic.sh >out.log 2>&1 &

从09年开始用weblogic到现在已经过去3年多了 ,今天终于将该命令理解清楚了。

其中 0、1、2分别代表如下含义:
0 – stdin (standard input)
1 – stdout (standard output)
2 – stderr (standard error)

nohup ./startWebLogic.sh >out.log 2>&1 &

nohup+最后面的& 是让命令在后台执行

>out.log 是将信息输出到out.log日志中

2>&1 是将标准错误信息转变成标准输出,这样就可以将错误信息输出到out.log 日志里面来。

本文出自 “ghost” 博客,请务必保留此出处http://fangwei009.blog.51cto.com/5234706/1632947

更多相关文章
  • iOS 开发学习的第一个选择往往是自学与培训.自学的一般不是不信邪就是穷,这是不言自明的.在学习初期,遇到的新手朋友们经历各异,有刚毕业的应届生,有干了几年其它平台想转行的老程序员,也有风马牛不相及的兴趣转行青年.<?xml:namespace prefix="o" ns= ...
  • 很多微博和文章都说,股指期货的收盘价对第二天开盘价影响很大,因为股指多交易15分钟,因此对股市的第二天开盘价影响非常大,网上有一个文章是这样说的: “股指期货开盘早于股市15分钟,收盘又晚15分钟,国泰君安研究员曾统计,股指期货晚收盘15分钟的涨跌对于次日期指走势的预测准确率达到了70%.” 看看这 ...
  • 自印有"12"字样的苹果公司发布会邀请函在上周公布以来,关于苹果将推出新款iPhone的市场预期大幅升温,市场再次掀起全球范围内的苹果"完美风暴".不仅苹果公司股价大幅上涨,涉及苹果概念的国内A股公司也出现了逆势上涨,另外,三星电子.诺基亚和索尼等品牌手机商接 ...
  • 蓝色导航为图片,用background-image实现. 排版用到ul,li标签,下划线运用border-bottom中的dashed,右边文字用到CSS浮动float. 实例: 代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Tra ...
  • 原文地址--http://blog.csdn.net/qq525099302/article/details/47253641 SELECT * FROM b_role_authority as of timestamp to_timestamp('2015-07-25','yyyy-mm-dd') ...
  • 明天要做关于发送邮件的接口,虽然我之前已用Java Mail做过许多关于邮件的发送.但同事说有点难点,虽我还不知难点在哪,还是要复习下.凡事预则立,不预则废嘛~ 所需的包: Java Mail : 目前,可从如下地址下载:JavaMail API Activation : 目前,可从如下地址下载:J ...
一周排行
  • 好久没发文了,不过这不是重点. - 直接上干货吧,不废话了,如题. 直接在html文档中使用 来表示空格,在不同浏览器中的占位大小是不一样的. 为什么呢,因为不同浏览器默认的字体是不一样的,不同字体下的空格表示 占位 ...
  • 一直感觉QQ最近联系人那个侧滑删除功能挺高大上的,经过几经波折,终于在新的一年里实现了该功能.实现这个功能真是费了老劲了,好几次有了想法,兴奋的去写代码实现,结果让代码打了自己一个耳光,最终还是用margin的方式实 ...
  • 对于希望按需快速部署.监控和扩展网络应用的云计算架构师和开发人员来说,AWS的Elastic Beanstalk (测试版)是一个非常有用的工具.他们所要做的就是上传代码并让Elastic Beanstalk自动处理 ...
  • 这是VirtualBox社区的信.   Today Sun released VirtualBox 3.1, a major update introducing the following major new fe ...
  • 8月底9月初照例是学校开学的高峰期,虽然小伙伴们纷纷喊着"暑假,我不想和你分手",但依然改变不了新学期开始的事实.在开学之际,众多学生跟家长纷纷着手准备开学装备,掀起学生消费高峰.时下,随着网络购 ...
  • 高可用性(HA)和双机热备(FT)是VMware vSphere 5.1最重要的一部分,高可用并不是vSphere独有的,企业使用高可用就是为了服务的连续性和数据的安全性,HA是以一组ESXi服务器为主的群集功能,主 ...
  •    某日与一位NGO中的同事谈工作,谈到我们的一家免费服务供应商帮NGO做事的事情.这位同事谈到,这家供应商的老总.副总与NGO的合作态度非常好,得感谢才是:只是他们承诺要帮NGO办的事,不好说什么时候能办好,得看 ...
  • 方法一: WinExec( "notepad.exe,SW_SHOW "); 方法二: ShellExecute(NULL, "open ", "notepad.ex ...
  •  有客户遇到SQL性能不稳定,突然变差导致系统性能出现严重问题的情况.对于大型的系统来说,SQL性能不稳定,有时突然变差,这是常常遇到的问题.这也是一些DBA的挑战.对于使用Oracle数据库的应用系统,有时会出现运 ...
  • 腾讯近期推出X5浏览器服务,主要帮助那些需要内置浏览内核的App或者HTML5的游戏.主要特点是支持Web的各种新特性,对近26种视频格式和42种文件格式也支持,并且会提供基于黑名单的运网址检测能力.主打的功能是稳定 ...