加入收藏 | 设为首页 | 会员中心 | 我要投稿 武陵站长网 (https://www.50888.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

nginx监控脚本

发布时间:2022-10-17 05:32:01 所属栏目:MsSql教程 来源:网络
导读: 13.# 运行: webservermonitor.sh &
14.#
15.
16.# php-cgi 监听的IP和端口
17.V_PHP_CGI_PORT="127.0.0.1:9000 127.0.0.1:9001"
18.
19.# nginx重启的脚本
20.V_NGINX="/usr/local/nginx/s

13.# 运行: webservermonitor.sh &

14.#

15.

16.# php-cgi 监听的IP和端口

17.V_PHP_CGI_PORT="127.0.0.1:9000 127.0.0.1:9001"

18.

19.# nginx重启的脚本

20.V_NGINX="/usr/local/nginx/sbin/restart.sh"

21.

22.# 日志文件

23.V_LOG="/tmp/webservermonitor.log"

24.

25.# 函数定义:重启nginx

26.function restart_nginx(){

27. echo "----- `date` -----" >> $V_LOG

28. echo "------------------" >> $V_LOG

29. echo "`ps aux |grep 'nginx'`" >> $V_LOG

30. echo "------------------" >> $V_LOG

31. echo "`ps aux |grep 'php-cgi'`" >> $V_LOG

32. echo "------------------" >> $V_LOG

33. echo "`netstat -nlpt | grep 'php-cgi'`" >> $V_LOG

34. echo "------------------" >> $V_LOG

35. $V_NGINX >> $V_LOG

36.}

37.

38.# 循环执行,不采用 crontab ,国为 crontab 最小单位是分钟mssql 脚本,时间太长了

39.while :

40.do

41.

42. # 1:先检测 nginx 主进程是否存在

43. V_NGINX_NUM=`ps axu |grep 'nginx' |grep -v 'grep' |wc -l`

44. if [ $V_NGINX_NUM -lt 1 ];then

45. restart_nginx

46. continue

47. fi

48.

49. # 2:再检查php-cgi是否有进程存在

50. V_PHP_CGI_NUM=`ps axu |grep 'php-cgi' |grep -v 'grep' |wc -l`

51. if [ $V_PHP_CGI_NUM -lt 1 ];then

52. restart_nginx

53. continue

54. fi

55.

56. # 3:再判断端口是否正常

57. for PORT in $V_PHP_CGI_PORT

58. do

59. V_NUM=`eval "netstat -nlpt | grep '${PORT}' | wc -l"`

60. if [ $V_NUM -lt 1 ];then

61. restart_nginx

62. continue

63. fi

64. done

65.

66. # 休眠

67. sleep 5

68.done

(编辑:武陵站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!