shell学习之十五--网站web服务监控

网站web服务的监控6中方法
1、端口
本地:ss netstat lsof
远程:telnet、nmap,nc
2、本地进程
3、header(http code)curl -I 返回200就ok
4、URL(wget、curl),模拟用户的方式
5、php、java写监控程序,模拟用户方式。

实例:
本地端口
[root@node01 day7]# lsof -i :80     (大于等于1)
COMMAND      PID   USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
clock-app   2195   root   21u  IPv4 604135      0t0  TCP bogon:45729->199.239.182.178:http (ESTABLISHED)
httpd     130342   root    4u  IPv6 329242      0t0  TCP *:http (LISTEN)
httpd     130348 apache    4u  IPv6 329242      0t0  TCP *:http (LISTEN)
httpd     130349 apache    4u  IPv6 329242      0t0  TCP *:http (LISTEN)
httpd     130350 apache    4u  IPv6 329242      0t0  TCP *:http (LISTEN)
httpd     130351 apache    4u  IPv6 329242      0t0  TCP *:http (LISTEN)
httpd     130352 apache    4u  IPv6 329242      0t0  TCP *:http (LISTEN)
httpd     130353 apache    4u  IPv6 329242      0t0  TCP *:http (LISTEN)
httpd     130354 apache    4u  IPv6 329242      0t0  TCP *:http (LISTEN)
httpd     130355 apache    4u  IPv6 329242      0t0  TCP *:http (LISTEN)
[root@node01 day7]# lsof -i :80|wc -l
11

远程端口
[root@node01 day7]# nmap 192.168.145.130 -p 80     (等于1)

Starting Nmap 5.51 ( http://nmap.org ) at 2017-08-01 21:26 CST
Nmap scan report for bogon (192.168.145.130)
Host is up (0.000038s latency).
PORT   STATE SERVICE
80/tcp open  http


Nmap done: 1 IP address (1 host up) scanned in 0.03 seconds
[root@node01 day7]# nmap 192.168.145.130 -p 80|grep open
80/tcp open  http
[root@node01 day7]# nmap 192.168.145.130 -p 80|grep open|wc -l
1

进程
[root@node01 day7]# ps -ef|grep apache|wc -l  (大于等于2)
9

curl
[root@node01 day7]# curl -I 192.168.145.130 2>/dev/null|head -1
HTTP/1.1 403 Forbidden
[root@node01 day7]# curl -I -s -w "%{http_code}" 192.168.145.130 -o /dev/null (等于200)
200
[root@node01 ~]# curl -I -s -w "%{http_code}" www.baidu.com -o /dev/null               
200

wget
[root@node01 day7]# wget --spider --timeout=100 --tries=2 192.168.145.130 &>/dev/null (返回值为0)
[root@node01 day7]# echo $?

以上每种方法都有不同的命令实现,详细可以看man。

实际检查脚本:
[root@node01 day7]# vi check_web.sh 
#!/bin/sh
http_code=`curl -I -s -w "%{http_code}" 192.168.145.130 -o /dev/null`
if [ $http_code -ne 200 ]
   then
     echo "web is error"
else
   echo "web is ok" 
fi
[root@node01 day7]# sh check_web.sh 
web is error

[root@node01 day7]# vi check_web.sh
#!/bin/sh
http_code=`curl -I -s -w "%{http_code}" www.baidu.com -o /dev/null`
if [ $http_code -ne 200 ]
   then
     echo "web is error"
else
   echo "web is ok" 
fi
[root@node01 day7]# sh check_web.sh 
web is ok

====================================
curl -I -m 10 -o /dev/null -s -w %{http_code} www.baidu.com
-I 仅测试HTTP头
-m 10 最多查询10s
-o /dev/null 屏蔽原有输出信息
-s silent
-w %{http_code} 控制额外输出
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值