首页 > 系统相关 >Server monitoring shell

Server monitoring shell

时间:2024-08-27 09:39:34浏览次数:11  
标签:LOAD shell REMOTE Server CURRENT HTML monitoring echo

#!/usr/bin/env bash

REMOTE_OK=remote_ok
REMOTE_FAIL=remote_fail
TIMESTAMP=`date +%F%H%M%S`
CURRENT_HTML=/var/www/html/${TIMESTAMP}.html
CURRENT_INDEX=/var/www/html/index.html
LN=/bin/ln
SERVER_LIST=server_list
PASS=pass

cat <<EOF > $CURRENT_HTML
<html>
<head>
<title>Server Alive Monitor</title>
</head>
<body>
<table width="50%" border="1" cellpading="1" cellspaceing="0" >
<caption><h2>Server Alive Status</h2></caption>
<tr><th>Server Name</th><th>Server Satus</th><th>Server Load</th></tr>
EOF
while read SERVERS
    do

    REMOTE_RESULT=`sshpass -f $PASS ssh -n root@$SERVERS "uptime"` # "-n" redirects stdin from /dev/null

            if [ $? -eq 0 ];then

                STATUS=OK
                COLOR=blue
                echo $REMOTE_RESULT > $REMOTE_OK
                REMOTE_LOAD=`cat ${REMOTE_OK}| awk -F ":" '{print $4}'`

echo "<tr><td>$SERVERS</td><td><font color=$COLOR>$STATUS</font></td><td>$REMOTE_LOAD</td></tr>" >> $CURRENT_HTML

            else
                STATUS=FALSE
                COLOR=red
                echo "Server is unavailable" > $REMOTE_FAIL
                REMOTE_LOAD=$(cat $REMOTE_FAIL)

echo "<tr><td>$SERVERS</td><td><font color=$COLOR>$STATUS</font></td><td>$REMOTE_LOAD</td></tr>" >> $CURRENT_HTML

            fi

done < $SERVER_LIST

cat <<EOF >> $CURRENT_HTML
</table>
</body>
</html>
EOF

$LN -sf $CURRENT_HTML $CURRENT_INDEX

 

标签:LOAD,shell,REMOTE,Server,CURRENT,HTML,monitoring,echo
From: https://www.cnblogs.com/abc0012383/p/18382014

相关文章

  • ldap shell
    #!/usr/bin/envbashNUM1=10000000NUM2=3600NUM3=24NUM4=90if[-syad];then>yadfi/usr/bin/ldapsearch-Hldap://xxx.com-YGSSAPI-N-bou=xxx,dc=xxx,dc=com'(&(objectClass=user)(userAccountControl=512))'|greppwdLastSet|a......
  • Breach shell
    #!/usr/bin/bashif[-sbreach];then>breachfi/usr/bin/ldapsearch-Hldap://xxxx-YGSSAPI-N-bcn=xxx,ou=Groups,ou=xxx,ou=Corporate,dc=xxx,dc=xxx|grep-i"member"|awk-F":"'{print$2}'|awk-F","......
  • backup shell
    #!/bin/bashecho"USBbackuproutineforcopyinglocalsondrelZFSpoolandLVMvolumestoUSBraidarraymountedat/BackupBox"PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bi......
  • 29server:10001端口和设置防火墙
    1、允许10.225.65.143、10.225.6.29等IP访问10001端口sudoiptables-AINPUT-ptcp--dport10001 -s10.225.65.143-jACCEPTsudoiptables-AINPUT-ptcp--dport10001 -s10.225.6.29-jACCEPTsudoiptables-AINPUT-ptcp--dport10001 -s127.0.0.1 -jACCE......
  • 大白话【8】WindowsServer2016搭建DNS服务
    1.DNS服务功能介绍2.DNS服务器搭建2.0准备环境2.1把该DNS服务器设置成静态IP2.2修改主机名(可省略)2.3安装DNS服务DNS服务器名为www;IP为192.168.2.1003.客户机测试在网内可网络连通的客户机如何验证DNS服务器域名解析有效性?3.1可以ping不通,只要看到解析就行。......
  • 大白话【7】windows server2016共享目录配置
    1.windows权限模型案列共享目录搭建过程1.创建共享目录2.为人力资源部,销售部,IT部,等创建工作组3.创建用户关联用户组4.修改共享目录权限,允许xx工作组用户进入目录5.根据需求设置XX目录权限6.开启目录共享打开本地用户和组Win+R 输入lusrmgr.msc引申-普通用户想要使......
  • 网站提示5xx Server Errors(服务器错误状态码)怎么办
    当遇到“5xxServerErrors”时,这意味着服务器在处理请求时遇到了错误,这些错误通常与服务器端的问题有关。5xx系列的状态码包括但不限于:500InternalServerError:服务器遇到了一个未曾预料的状况,导致它无法完成对请求的处理。501NotImplemented:服务器不支持请求的功能或API......
  • SQLserver中的触发器和存储过程
    在SQLServer中,触发器是一种特殊的存储过程,它在指定的数据库表上发生特定的数据修改事件时自动执行。触发器可以用于执行各种任务,如数据验证、数据审计、自动更新相关表等。触发器的类型SQLServer支持以下几种类型的触发器:INSERT触发器:在向表中插入新行时触发。UPD......
  • sql server导入mysql,使用python多线程
    概述在上一篇文章中,链接:https://www.cnblogs.com/xiao987334176/p/18377915使用工具SQLyog进行导入,传输过程是单进程的,一个表一个表的传,一条条数据插入,所以传输速度会比较慢。如果sqlservermdf文件在200m左右,传输需要花费30分钟左右。如果来了一个10GB左右的mdf的文件,需要25......
  • Android fork 进程 process(init/Zygote/SystemServer)
    ##Android的init/Zygote/SystemServer Android手机先开机,init/Zygote/SystemServer,然后启动Framework,然后启动Launcher;【安装APP(PMS),】然后启动APP(AMS)。所有的Android应用进程都是有Zygote进程fork出来的。Android系统启动流程(一)解析init进程-http://blog.csdn.net/itach......