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 ...
一周排行
  • Web应用性能优化黄金法则:先优化前端程序(front-end)的性能,因为这是80%或以上的最终用户响应时间的花费所在. 以下是我所总结的前端开发性能优化的方案,参照雅虎14条性能优化原则 1.减少http请求次数 ...
  • 此前小米曾发布了一款容量达到10400mAh的移动电源,其采用铝合金外壳,售价仅为69元.
  • puppet,这是目前运维主流的运维自动化工具,大多数运维管理人员都听说过,或者在使用以及在正在考虑使用中.puppet可以配合cobbler,puppet也可以配合func 实现运维自动化,简单化,化繁杂为简单. ...
  • java分成J2ME(移动应用开发),J2SE(桌面应用开发),J2EE(Web企业级应用),所以java并不是单机版的,只是面向对象语言.建议如果学习java体系的话可以这样去学习: 第一阶段:Java基础,包括j ...
  • 易网科技讯 10月15日消息,据美联社报道,周四AMD首席执行官梅德克在分析师电话会议上表示,苹果的iPad平板正在折磨着电脑行业. 成千上万的人购买平板电脑,行业正在努力计算出平板电脑的销售对其他类型电脑包括上网本 ...
  • 财政部7月18日公布了第一批纳入废弃电器电子产品处理基金补贴范围的处理企业名单.名单显示,15个省的43家企业入选该名单.其中,TCL奥博(天津)环保发展有限公司是由TCL集团(100)控股,江西格林美资源循环有限公 ...
  • 接上一篇文章: WHERE可以使用下面的BETWEEN.LIKE.IN运算子. Between...And Between...And判断表达式的值是否落在指定的范围之中.语法为: expr Between valu ...
  • Iptables防火墙(一) 重点: lLinux防火墙的表.链结构 l使用iptables编写防火墙规则 6.1Linux防火墙基础: Linux包过滤防火墙概述: Ønetfilter §位于Linux内核中的包 ...
  • 在淘宝.当当上买基金?这不是假设,如果一切顺利,有可能上半年投资者就能在一些电商平台上开买基金产品.在2012年的12月底,证监会已开始就电商平台销售基金征求意见.在银行渠道占了基金销售绝大份额的今天,有人说这一新事 ...
  • TCL续航+ P618L还配备了前置500万+后置1300万双摄像头组合,支持中国电信FDD/TDD-LTE网络,让用户随时能够畅游网络 非智能机时代,电池续航问题并不突出,即便是高强度使用也可以做到续航天.而 ...