监控web db三种方法

一监控web方法
1.端口
本地netstat -lantup | grep 3306| wc -l
ss -l lntp |grep 3306 | wc -l
lsof -i :3306
远程(就是)
echo -e "\n" | telnet IP PORT |grep Connection | wc -l
nmap nmap www.baidu.com -p 80 | grep open | wc -l 端口开放的只是说明
rpm -qa | nc
2.进程
本地 ps -ef |grep 进程| wc -l
模拟用户进行判断wget curl 下载文本是否能够或者状态码
数据库的能够经过-e 判断返回值或者返回内容,mysql

if [ `netstat -lnt|grep 3306| ec -l ` -eq 0 ]
    if [ `ps -ef |grep mysql|grep -v grep| wc -l` | -gt 0 ]
    if [ `nc -w 2 localhost 22 &>/dev/null&&echo ok|grep ok| wc -l` -gt 0 ]
    if [ `nmap localhost -p 22 2>/dev/null | grep open |wc -l ` -gt 0 ]
    if [ `netstat -lntup | grep mysqld |wc -l ` -gt 0 ]
    if [ `lsof -i tcp:3306 | wc -l` -gt 0 ]
    lsof -i:端口 或者lsof -i tcp:端口
    反引号能够写成$() 这样写最好,要不反引号容易丢掉

    上面的问题在比对的时候-eq若是是空值和数字比较会报错,因此用-eq的时候必定要考虑空值
    不要取值进行比较,必定要取行进行比较 这样省事

    if [ "`curl -l -s -o -w "%{http_code}\n" http://localhost `" = "200" ] /dev/null -w 
    if [ `curl -I http://127.0.0.1 2>/dev/null |head -l | grep 200 | wc -l ` -eq 1 ]
    if [ `curl -s http://127.0.0.1 &>/dev/null&&echo $?`" ="0" ]

    curl -s http://localhost &>/dev/null
    而后去判断上一个命令的执行结果 $?
    另一个是故意在网站上放一个页面,而后去取下来检查里边的东西是否是固定的
相关文章
相关标签/搜索