Linux记录-shell实现脚本监控服务器及web应用
1.apache web 服务器
1
2
3
4
5
6
7
8
9
10
|
! / bin / bash # 表示请求链接3秒钟,不要返回的测试数据 nc - w 3 localhost 80 &> / dev / null if [ $? - eq 0 ];then str = "apache web status Running!" else str = "apache web status Shuting!" fi # 发送的主题,邮件地址 echo str |mail - s 'apache web server' admin@lampym.com |
2.监控mysql
1
2
3
4
5
6
7
8
9
10
|
! / bin / bash # 表示请求链接3秒钟,不要返回的测试数据 nc - w 3 localhost 3306 &> / dev / null if [ $? - eq 0 ];then str = "mysql server status Running!" else str = "mysql server status Shuting!" fi # 发送的主题,邮件地址 echo str |mail - s 'mysql server status' admin@lampym.com |
3.监控服务器disk
1
2
3
4
5
6
7
8
9
10
11
12
|
#!/bin/bash :<<! NR表示行数,$ 5 表示第5列,具体的自己根据实际调整 ! ds = `df |awk '{if(NR==4){print int($5)}}' ` # 这里45根据实际需要更改 if [ $ds - lt 45 ];then str = "disk space is less then!!!" else str = "disk space is greate than 45%!!!" fi echo $ str |mailx - s 'linux server disk space' admin@lampym.com |
4.监控服务器monery
1
2
3
4
5
6
7
8
9
10
11
|
#!/bin/bash :<<! 具体的自己根据实际调整 ! mery = `df |awk '{if(NR==2){print int($3*100/$2)}}' ` if [ $mery - lt 50 ];then str = "mery space is less then 50%!!!" else str = "mery space is greate than 50%!!!" fi echo $ str |mailx - s 'linux server mery space' admin@lampym.com |
整合一下
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
|
#!/bin/bash # 功能:监控资源 # 名称:cont.sh # 作者:枫客浪人 # 版本:0.1 # 联系方式:xxxx # apache 应用服务 apache_web(){ nc - w 3 localhost 80 &> / dev / null if [ $? - eq 0 ];then str = "apache web status Running!" else str = "apache web status Shuting!" fi # 发送的主题,邮件地址 echo str |mail - s 'apache web server' admin@lampym.com } # mysql 服务 mysql_db(){ nc - w 3 localhost 3306 &> / dev / null if [ $? - eq 0 ];then str = "mysql server status Running!" else str = "mysql server status Shuting!" fi # 发送的主题,邮件地址 echo str |mail - s 'mysql server status' admin@lampym.com } # 磁盘使用情况 disk_mnt(){ ds = `df |awk '{if(NR==4){print int($5)}}' ` # 这里45根据实际需要更改 if [ $ds - lt 45 ];then str = "disk space is less then!!!" else str = "disk space is greate than 45%!!!" fi echo $ str |mailx - s 'linux server disk space' admin@lampym.com } # 内存使用情况 meny_mnt(){ mery = `df |awk '{if(NR==2){print int($3*100/$2)}}' ` if [ $mery - lt 50 ];then str = "mery space is less then 50%!!!" else str = "mery space is greate than 50%!!!" fi echo $ str |mailx - s 'linux server mery space' admin@lampym.com } min (){ apache_web() mysql_db() disk_mnt() meny_mnt() } |
crontab -e
每天13:10分执行代码发送一份邮件
Linux记录-shell实现脚本监控服务器及web应用的更多相关文章
- shell实现脚本监控服务器及web应用
实际工作中我们需要知道部署在服务器上的应用有没有问题,但是人为的操作太麻烦有咩有简单的方式呢shell来监控我们服务器运行状态以及服务器上部署的应用,如果出现异常就会自动发送一个邮件给我们,开始搞起. ...
- Linux下shell通用脚本启动jar(微服务)
Linux下shell通用脚本启动jar(微服务) vim app_jar.sh #!/bin/bash #source /etc/profile # Auth:Liucx # Please chan ...
- linux 下shell 编写脚本
linux 下shell 编写脚本: 1.程序结构练习:编写一个脚本,给定一个正整数,计算出这个数所有位的数字之和. 例如:程序给定输入123,那么应该返回1+2+3=6. 2.程序结构练习:编写一个 ...
- Linux记录-shell自动化批量部署sql脚本并记录日志信息(转载)
#!/bin/bash #script_version=v110 db_host=127.0.0.1 db_port=3306 db_username=db_test_inst db_passwd=` ...
- Linux记录-shell 100例(转载)
1.编写hello world脚本 #!/bin/bash # 编写hello world脚本 echo "Hello World!" 2.通过位置变量创建 Linux 系统账户及 ...
- Linux CAN Shell 测试脚本程序
2012-01-13 22:57:14 为我的开发板2440做二次开发,添加了can驱动,做了驱动测试程序,没理由不添加一个测试脚本程序啊!修改了测试程序,使应用程序更加灵活,添加了一下传递参数.接着 ...
- Linux记录-shell获取hdfs表查询mysql
#!/bin/sh hdfs dfs -ls /user/hive/warehouse | awk '{print $8}' | awk -F "/" '{print $5}' & ...
- Linux记录-shell获取hdfs used使用
#!/bin/bash export JAVA_HOME=/app/jdk/jdk1.8.0_92 export HADOOP_HOME=/app/hadoop export HADOOP_CONF_ ...
- Linux记录-shell一行代码杀死进程(收藏)
ps -ef |grep hello |awk '{print $2}'|xargs kill -9
随机推荐
- Antenna Placement POJ - 3020 二分图匹配 匈牙利 拆点建图 最小路径覆盖
题意:图没什么用 给出一个地图 地图上有 点 一次可以覆盖2个连续 的点( 左右 或者 上下表示连续)问最少几条边可以使得每个点都被覆盖 最小路径覆盖 最小路径覆盖=|G|-最大匹配数 ...
- Codeforces191 C. Fools and Roads
传送门:>Here< 题意:给出一颗树,和K次操作.每次操作给出a,b,代表从a到b的路径上所有边的权值都+1(边权最开始全部为0).最后依次输出每条边最终的权值 解题思路: 由于n非常大 ...
- 【AGC018F】Two Trees 构造 黑白染色
题目描述 有两棵有根树,顶点的编号都是\(1\)~\(n\). 你要给每个点一个权值\(a_i\),使得对于两棵树的所有顶点\(x\),满足\(|x\)的子树的权值和\(|=1\) \(n\leq 1 ...
- django 报错 : django.core.exceptions.ImproperlyConfigured: The STATICFILES_DIRS setting should not contain the STATIC_ROOT setting
错误原因有可能是在settings中静态文件目录设置的有问题 STATIC_ROOT=os.path.join(BASE_DIR,"static/")#错误 STATIC_ROOT ...
- [2017-7-28]Android Learning Day6
常用控件 Spinner DatePickerDialog TimePickerDiaog RadioButton CheckBox spinner(下拉菜单) <Spinner android ...
- [2017-7-25]Android Learning Day3
最近真的有点迷茫,感觉没有一个完整的教学体系很难进行下去,有的都是自己瞎捉摸,就跟以前ACM的时候一样,动不动就“这就是一道,水题暴力就行了”.“我们枚举一下所有的状态,找一下规律就行了”,mmp哟. ...
- 洛谷 P4705 玩游戏 解题报告
P4705 玩游戏 题意:给长为\(n\)的\(\{a_i\}\)和长为\(m\)的\(\{b_i\}\),设 \[ f(x)=\sum_{k\ge 0}\sum_{i=1}^n\sum_{j=1}^ ...
- centos7搭建ELK Cluster集群日志分析平台(三):Kibana
续 centos7搭建ELK Cluster集群日志分析平台(一) 续 centos7搭建ELK Cluster集群日志分析平台(二) 已经安装好elasticsearch 5.4集群和logst ...
- react-redux单元测试(基于react-addons-test-utils,mocha)
今天补上上次新闻客户端欠下的单元测试.新闻客户端github地址:点我,接上篇博客. 本次单元测试用到了单元测试比较流行的测试框架mocha,用到的是expect断言库,和react官方的测试插件:r ...
- js jquery 判断元素是否在数组内
js jquery 判断元素是否在数组内 一,js方法 var arr = ["a", "b", "c"]; // js arr.index ...