精华内容
下载资源
问答
  • linux监控服务运行并自动重启

    千次阅读 2018-09-04 17:31:17
    linux监控服务运行并自动重启 需求 在应用中都有好多服务需要一直开着,不能关闭。关闭的话产品就会出现一定的问题,当机器的内存不足时,很有可能会造成进程崩溃,但是又不能及时发现和重启,这个时候就需要一...

    linux监控服务运行并自动重启

    需求

    在应用中都有好多服务需要一直开着,不能关闭。关闭的话产品就会出现一定的问题,当机器的内存不足时,很有可能会造成进程崩溃,但是又不能及时发现和重启,这个时候就需要一个定时的监控,来监控进程。

    实现

    使用一个简单的shell脚本就可以进行监控服务,并重启。并写入文件中,留作记录。如果想做的高级点可以加上报警机制。

    #!/bin/sh  
    i=1
    while (($i > 0))
    do
       ps -ef | grep HiveServer2 | grep -v grep > /tmp/zsw.log
       a=$(awk  '{print $8}' /tmp/zsw.log | sed  -n 1p)
       if [ $a == /opt/third/jdk/bin/java ]
         then
            echo “服务运行正常”
         else
            nohup hiveserver2 &
       fi
       sleep 6000
    done 

    可以根据自己的需求改动,非常简单使用的小脚本

    展开全文
  • Linux监控器 监控Linux服务器的状态
  • sigar监控linux服务器

    2019-12-13 17:28:53
    利用sigar实现对linux服务器进行监控,其中有java代码的示例,参照写即可 利用sigar实现对linux服务器进行监控,其中有java代码的示例,参照写即可 利用sigar实现对linux服务器进行监控,其中有java代码的示例,...
  • Linux-服务监控的搭建

    千次阅读 2018-08-24 16:03:46
    监控服务 监控是什么?监控的重要性是什么?为什么要做监控?需要监控什么? 从应用层来角度来看: 你公司业务的WEB 服务器拒绝连接了? 客户无法给你们的邮箱发邮件了? 论坛的大量用户无法登陆? DNS 无法正常...

    监控服务

    监控是什么?监控的重要性是什么?为什么要做监控?需要监控什么?

    从应用层来角度来看:

    你公司业务的WEB 服务器拒绝连接了?
    客户无法给你们的邮箱发邮件了?
    论坛的大量用户无法登陆?
    DNS 无法正常解析?
    数据库服务器宕机了,用户无法写入数据了?
    ...
    

    从服务器、应用和网络设备的角度来看:

    目前服务器的CPU 负载多少,一天中那个时刻负载高,一个月中哪一天服务器CPU 的负载比较高?
    磁盘的使用率是多少?
    内存的使用率是多少?
    ...
    

    我想上面的任何一个问题出现的话,对我们的业务造成的影响都是巨大的。

    不同的公司,不同的应用,就会增加更多需要监控的对象。通过上面列举的比较常见的问题,我想,监控的重要性就不言而喻了。我们如何及时的获得这些应用的运行状态信息,在出现问题时能够及时知道,这就是监控要做的事情。

    当然今天不是来说:ZABBIX (比较火的一个开源的企业级的监控服务方案),但是会做一个简单的介绍。

    ZABBIX

    zabbix是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。开源这个很舒服。
    zabbix能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
    zabbix由2部分构成,zabbix server与可选组件zabbix agent。
    注意:
    要想搭建一个Zabbix的工作环境,需要从服务器入手。与服务器通信,管理员需要使用一个Zabbix前端界面,与Zabbix服务器和数据库进行通信。三个关键(界面、服务器和数据库)可以安装在同一台服务器上,但是如果你拥有一个更大更复杂的环境,将它们安装在不同的主机上也是一个选项。Zabbix服务器能够直接监控到同一网络中的设备,如果其他网络的设备也需要被监控,那还需要一台Zabbix代理服务器。

    今天主要是就服务端口监控来说一个小demo,所以我们直接上正文吧。想要学习zabbix的可以到官网了解一下。
    ZABBIX官网https://www.zabbix.com

    基于端口的监控服务

    刚好我的服务器上刚刚装了swoole,我们就以swoole里的websocket服务为例,来做一个监控ws服务的监控服务。
    1.首先我们启动ws服务,注意我的端口是:9503
    这里写图片描述
    因为我们是写demo,所以不用展示Ws.php的代码了。这个端口你测试的时候可以拿mysql的3306,redis的6379等等,所以,他只是为了启动一个服务。
    我们看下,这个服务到底启动了没,再开个窗口看下:
    这里写图片描述
    ok,完美启动了。

    2.那么我们怎么监控呢
    我们先来看下这条命令吧(以当前demo监控的9503端口为例)

    netstat -anp | grep 9503 | grep LISTEN | wc -l
    //意思就是说这个端口一共有多少行的意思,启动了当然就是1行,如果没有启动就是0行

    试着运行一下这条命令看一下,你会发现,打印出来了一个数字:1
    这里写图片描述
    我们就可以拿这个数字做文章。
    有些人会问了,为什么这时候我打印这条命令的时候和上图类似显示了一条提示语句,然后跟了一个数字1,有的却是像下面一样只显示一个数字1呢?
    这里写图片描述
    注意:一定要注意你的用户什么,第一张是以guwenjie普通用户进行查看的,那条提示语句也说的很明显(…but you should be root),第二章是以root用户身份进行查看的,so…
    所以我们需要将那条提示语处理掉,我们只需要那个数字才对。像这样:

    netstat -anp 2>/dev/null | grep 9503 | grep LISTEN | wc -l

    将多余的信息输出过滤到/dev/null
    这里写图片描述

    接下来就好做了:在Ws.php目录下创建一个Guard.php文件

    <?php
    /**
     * Created by PhpStorm.
     * User: 0375
     * Date: 2018/8/24
     * Time: 15:03
     */
    class Guard{
        const PORT = 9503;
    
        public function port()
        {
            $shell = "netstat -anp 2>/dev/null | grep ".self::PORT." | grep LISTEN | wc -l";
            $result = shell_exec($shell);//PHP执行shell脚本函数(shell_exec())
            if($result != 1){
                //说明此事端口已经挂掉,发送报警服务,比如向管理员邮箱发送邮件或者直接发送短信提醒
                echo date("Y-m-d H:i:s")."-ERROR\n";
            }else{
                echo date("Y-m-d H:i:s")."-SUCCESS\n";
            }
        }
    }
    (new Guard())->port();

    ok,;来测试一波吧(如果服务正常肯定走else区间否则就是if区间,我先测试启动情况然后测试未启动情况)
    这里写图片描述
    未启动的时候:
    这里写图片描述

    定时任务实现实时监控

    上面的程序已经实现了监控功能,但是我们需要的是它自己实时监测,说白了就是需要一个定时任务。
    那么,可以采取两种方案。

    1.Linux中的crontab定时任务
    2.使用swoole的定时任务
    

    crontab定时任务的粒度为分钟,就是最小是精确到分钟的,而swoole的定时任务的粒度是毫秒级,当然也包括秒了。所以如果你想要更精确的监控可以采用swoole的定时任务,分钟级crontab也是没问题的。

    如果你对crontab定时任务不太熟悉,可以查看我另一篇关于crontab定时任务的文章:Linux中的Crontab定时任务详解
    在这里,我们使用swoole的定时任务来实现这个实时监控。
    swoole,可能有些人会说不知道怎么安装,这种教程网上一大把,之后我也会写一个swoole的编译安装的文章,最好自己动手操作下,就是,下载,解压,./configure make -j make install 然后在php.ini配置文件中加入swoole.so扩展文件,扩展的编译安装大同小异,自己动手几次就学会了。

    我们使用这个方法:swoole_timer_tick()
    仔细看一下其中的参数说明和使用案例。那么上面的代码稍作改动即可:

    <?php
    /**
     * Created by PhpStorm.
     * User: 0375
     * Date: 2018/8/24
     * Time: 15:03
     */
    class Guard{
        const PORT = 9503;
    
        public function port()
        {
            $shell = "netstat -anp 2>/dev/null | grep ".self::PORT." | grep LISTEN | wc -l";
            $result = shell_exec($shell);
            if($result != 1){
                //说明此时端口已经挂掉,发送报警服务,比如向管理员邮箱发送邮件或者直接发送短信提醒
                echo date("Y-m-d H:i:s")."-ERROR\n";
            }else{
                echo date("Y-m-d H:i:s")."-SUCCESS\n";
            }
        }
    }
    
    //2000毫秒,每两秒执行一次
    swoole_timer_tick(2000,function ($timer_id){
        (new Guard())->port();
    });

    来试试吧,
    这里写图片描述
    可以很明显的看到,两秒钟打印一次,刚开始服务未开启,ERROR,开启后变为SUCCESS。

    后台服务化

    到此已经实现了实时监控了,但是我们总不可能一直开一个窗口放在这里,所以,我们需要把他做成后台服务,让他在后台自己去监控,然后将打印的信息输出到日志文件中,这样的效果会更好。

    这个时候,只需要执行以下命令即可:

    //nohup 用途:不挂断地运行命令。
    nohup /usr/local/php/bin/php /home/wwwroot/script/Guard.php > /home/wwwroot/script/guard-log.txt &

    注意:首先php一定要带上php所在路径,后面的路径信息一定要使用你的,以上都是我的路径信息,最后的 & 符号一定不要落掉。该命令表示,在后台不间断运行Guard.php脚本,并且日志信息输出到guard-log.txt文件中
    这里写图片描述
    这个时候你会发现那个日志文件就会不停的打印进东西:
    这里写图片描述
    PS:tail -f 挺好用的,比vim方便

    如果你想查看该服务是否在后台运行,除了上面的查看日志文件也可以这样:

    ps aux | grep /home/wwwroot/script/Guard.php

    上面执行完nohub命令后,会返回进程号,如果你想要终止这个后台进程可以暴力杀死即可,例如:kill 27317

    好了,一个简单的监控服务就搭建完成了,你也可以用来监控不通的服务。

    展开全文
  • linux系统java服务自启动shell脚本及服务cpu内存占用监控脚本
  • 1.Linux监控概述 Linux服务器要保证系统的高可用性,需要实时了解到服务器的硬件、操作系统、应用服务等的运行状况,各项性能指标是否正常,需要使用各种LINUX命令。做到自动化运维就需要,将上述各项监控指标在同...

    1.Linux监控概述

          Linux服务器要保证系统的高可用性,需要实时了解到服务器的硬件、操作系统、应用服务等的运行状况,各项性能指标是否正常,需要使用各种LINUX命令。做到自动化运维就需要,将上述各项监控指标在同一个软件中展显出来,图形化监控,消息报警机制,日志检看,资产管理等等

    2.Linux监控的对象

    2.1 硬件监控

             (1)服务器:如电源,风扇,磁盘,CPU等,可以使用IPMI监控,在LINUX下安装IPMITOOL

                     不同的服务器厂商都在服务器上配有远程控制卡BMC: 如DELL(iDRAC) ,IBM (IMM) ,HP(ILO)

                     LINUX下只需安装:#yum install -y OpenIPMI ipmitool   这二个工具就可以

                      IPMI命令可以在服务器本地运行,也可以通过网络远程调用,IPMI在服务器上可以配置单独的IP地址和访问密码


             (2)网络设备:交换机,防火墙,路由器等,使用SNMP进行监控

                      在被监控的设备上开启SNMP代理,到时可以通过工具进行获取数据,如ZABBIX

                        1.LINUX上安装

                       #yum list |grep snmp

                       #yum install -y net-snmp net-snmp-utils

                       安装好后要配置snmpd.conf文件

                        rocommunity snmptest 172.16.20.89  #172.16.20.89表示仅这IP地址才可以来访问snmp信息

                        #systemctl start snmpd   启动SNMP ,netstat -nulp  ,netstat -ntlp 查看snmp启来的端口udp=161 ,TCP=199

                        #关于SNMP trap和OID,参见:https://blog.csdn.net/openbox2008/article/details/79958092

                        通过SNMP命令可以获取监控信息:

                        #snmpget -v2c -c snmptest 172.16.20.89 1.3.6.1.2.1.1.3.0 #1.3.6.1.2.1.1.3.0为OID

                        2.交换机上开启

                             snmp-server community public ro 

             (3)定期机房巡检,查看设备运行情况

    2.2 操作系统监控

           安装sysstat工具,包括了iostat、vmstat、sar、mpstat、nfsiostat、pidstat (yum install -y sysstat  #rpm -ql sysstat)

           (1)CPU (CPU调度上下文切换 ,运行队列 负载,CPU使用率)

                    确定服务类型:IO密集型(如:数据库),CPU密集型(如:WEB)

                  1.cpu利用率内核态: 30%和用户态:70%

                  2.cpu运行队列:1~3线程 1CPU=4核 队列不超过12个

                  3.上下文切换:尽量少,结合cpu利用率


               4.#top命令 (显示CPU和内存信息,M按内存使用率排序,P按CPU使用率排序,Q退出)


                 CPU百分比各项指标: us:用户态  sy:内核态   ni:进程间优先级更换 id:空闲   wa:IO等待 hi:硬中断 si:软件中 st:虚拟

                   5.CPU监控的各种命令:top ,vmstat , mpstat, uptime ,ps cpu进程情况,pstree 以树形结构显示进程之间的关系

           (2)内存

                    1. free -m :显示内存信息

                    2.vmstat  :来监控虚拟内存  #vmstat 1 10 每隔1秒共10次获取监控信息

           (3)磁盘

                     1.iostat:命令用来显示存储子系统的详细信息,通常用它来监控磁盘 I/O 的情况。

                     2.iotop:需要yum另外安装,yum install -y iotop

           (4)网络

                     0.ping :测试网络

                     1.netstat: -ntlp 、-nulp、-na 等显示了网络相关的信息

                     2.iftop -n:显示网络信息的类似top的程序. #yum install -y iftop

                     3.tcpdump:网络监控工具,用来做基本的协议分析,看看那些进程在使用网络以及如何使用网络

                     4.Wireshark:windows网络抓工具

           (5)整体性能(CPU和内存、磁盘)

                     1.top:实时显示CPU和内存、磁盘信息

                     2.mpstat:实时系统监控工具,多CPUs系统里,其不但能查看所有CPU的平均状况信息

                     3.vmstat  :来监控虚拟内存  #vmstat 1 10 每隔1秒共10次获取监控信息

                     4.sar:可用来显示 CPU 使用率、内存页数据、网络 I/O 和传输统计、进程创建活动和磁盘设备的活动详情

            (6)nmon:性能报表,IBM开源工具,二进制直接下载使用,配合EXECL表可以图形分析                 

                      1.nmon下载:http://nmon.sourceforge.net/pmwiki.php

                     2. nmon analyser下载:https://sourceforge.net/projects/jnmonanalyser/

                      3.nmon analyser—生成 AIX 性能报告参见:             

                         https://www.ibm.com/developerworks/cn/aix/library/nmon_analyser/ 


    2.3 应用服务监控

          (1)Ngin监控 

               首先安装nginx编译相关 :#yum install -y gcc glibc gcc-c++ pcre-devel opensshl-level

                下载nginx源码安装,编译时加上监控参数:

                #./configure --prefix=/usr/local/nginx  --user=www --group=www --with-http_stub_status_module  --with-http_ssl_module

                #make && make install 

                #测试启动:#/usr/local/nginx/sbin/nginx -t 配置文件没有问题就可以启动了

                配置nginx.conf文件,增加在server段内

                location /nginx_status {
                        stub_status on;
                        access_log  off;
                        allow 192.168.2.0/24;
                        deny all;

                 }

                 打开浏览器访问:192.168.2.1/nginx-status

    2.4 生产业务监控



    3.使用SHELL脚本监控

          这里找到四个脚本(performance.sh 性能监控,process.sh 进程监控,network.sh 流量监控,tongji.sh流量分析统计),并使用crontab定时执行脚本进行监控数据的记录,形成每天的监控日志放在如下相应的文件夹,并且超过自己设定的告警值后发邮件通知,那些有免费短信通知功能的邮箱如腾讯企业邮箱,163邮箱可以尝试一下,收到邮件告警后很快就能收到短信了,很方便。 

    (1)性能监控脚本 performance.sh

       

     #!/bin/bash
     #---------------------------------------------------------------------------------
     # 说明,Linux服务器--性能监控脚本 ,网址来源:http://bbs.51cto.com/thread-937759-1.html
     # 主要监控: 01.监控cpu系统负载 02. 监控cpu使用率 03. 监控交换分区 04. 监控磁盘空间
     # 生成的性能监控日志 $path/performance_%Y%m%d.log
     # 2017.06.25 djp
     #---------------------------------------------------------------------------------
      
     path='/tmp/monitor/performance'
      
     #01.监控cpu系统负载
     { #{{{
     IP=`ifconfig eth0 | grep "inet addr" | cut -f 2 -d ":" | cut -f 1 -d " "`
     cpu_num=`grep -c 'model name' /proc/cpuinfo`
     count_uptime=`uptime |wc -w`
     load_15=`uptime | awk '{print $'$count_uptime'}'`
     average_load=`echo "scale=2;a=$load_15/$cpu_num;if(length(a)==scale(a)) print 0;print a" | bc`
     average_int=`echo $average_load | cut -f 1 -d "."`
     load_warn=0.70
     if [ $average_int -gt 0 ]
     then
     echo "$IP服务器单个核心15分钟的平均负载为$average_load,超过警戒值1.0,请立即处理!!!$(date +%Y%m%d/%H:%M:%S)" >>$path/performance_$(date +%Y%m%d).log
     echo "$IP服务器单个核心15分钟的平均负载为$average_load,超过警戒值1.0,请立即处理!!!$(date +%Y%m%d/%H:%M:%S)" | mail -s "$IP服务器系统负载严重告警" XXXX@qq.com
     else
     echo "$IP服务器单个核心15分钟的平均负载值为$average_load,负载正常 $(date +%Y%m%d/%H:%M:%S)">>$path/performance_$(date +%Y%m%d).log
     fi
     } #}}}
      
     #02. 监控cpu使用率
     { #{{{
     cpu_idle=`top -b -n 1 | grep Cpu | awk '{print $5}' | cut -f 1 -d "."`
     if [ $cpu_idle -lt 20 ]
     then
      
     echo "$IP服务器cpu剩余$cpu_idle%,使用率已经超过80%,请及时处理。">>$path/performance_$(date +%Y%m%d).log
      
     echo "$IP服务器cpu剩余$cpu_idle%,使用率已经超过80%,请及时处理!!!" | mail -s "$IP服务器cpu告警" XXXX@qq.com
     else
      
     echo
     "$IP服务器cpu剩余$cpu_idle%,使用率正常">>$path/performance_$(date +%Y%m%d).log
     fi
     } #}}}
      
     #03. 监控交换分区
     { #{{{
     swap_total=`free -m | grep Swap | awk '{print $2}'`
     swap_free=`free -m | grep Swap | awk '{print $4}'`
      
     swap_used=`free -m | grep Swap | awk '{print $3}'`
      
     if [ $swap_used -ne 0 ]
     then
     swap_per=0`echo "scale=2;$swap_free/$swap_total" | bc`
     swap_warn=0.20
     swap_now=`expr $swap_per \> $swap_warn`
     if [ $swap_now -eq 0 ]
     then
     echo "$IP服务器swap交换分区只剩下 $swap_free M 未使用,剩余不足20%,使用率已经超过80%,请及时处理。">>$path/performance_$(date +%Y%m%d).log
      
     echo "$IP服务器swap交换分区只剩下 $swap_free M 未使用,剩余不足20%, 使用率已经超过80%, 请及时处理。" | mail -s "$IP服务器内存告警" XXXX@qq.com
     else
     echo "$IP服务器swap交换分区剩下 $swap_free M未使用,使用率正常">>$path/performance_$(date +%Y%m%d).log
     fi
      
     else
     echo "$IP服务器交换分区未使用" >>$path/performance_$(date +%Y%m%d).log
     fi
     } #}}}
      
     #04. 监控磁盘空间
     { #{{{
     disk_sda1=`df -h | grep /dev/sda1 | awk '{print $5}' | cut -f 1 -d "%"`
     if [ $disk_sda1 -gt 80 ]
     then
     echo "$IP服务器 /根分区 使用率已经超过80%,请及时处理。">>$path/performance_$(date +%Y%m%d).log
      
     echo "$IP服务器 /根分区 使用率已经超过80%,请及时处理。 " | mail -s "$IP服务器硬盘告警" XXXX@qq.com
     else
     echo "$IP服务器 /根分区 使用率为$disk_sda1%,使用率正常">>$path/performance_$(date +%Y%m%d).log
     fi
      
     #监控登录用户数
     users=`uptime |awk '{print $6}'`
     if [ $users -gt 2 ]
     then
      
     echo "$IP服务器用户数已经达到$users个,请及时处理。">>$path/performance_$(date +%Y%m%d).log
      
     echo "$IP服务器用户数已经达到$users个,请及时处理。" | mail -s "$IP服务器用户登录数告警" XXXX@qq.com
     else
      
     echo "$IP服务器当前登录用户为$users个,情况正常">>$path/performance_$(date +%Y%m%d).log
     fi
     ###############################################################################
      
     } #}}}
     

    2) 进程监控脚本 process.sh 

    #!/bin/bash
     
     #!/bin/bash#---------------------------------------------------------------------------------
     # 说明,Linux服务器--进程监控脚本 ,网址来源:http://bbs.51cto.com/thread-937759-1.html
     # 主要监控:
     # 生成的进程监控日志
     # 2017.06.25 djp
     #---------------------------------------------------------------------------------
      
     path='/tmp/monitor/process'
      
     IP=`ifconfig eth0 | grep "inet addr" | cut -f 2 -d ":" | cut -f 1 -d " "`
      
     #tomcat_dir="/opt/apache-tomcat-7.0.8"
     #mysql_dir="/usr/local/mysql/bin/mysqld_safe"
     #vsftp_dir="/usr/sbin/vsftpd"
     tomcat_dir=""
     mysql_dir=""
     vsftp_dir=""
     ssh_dir="/usr/sbin/sshd"
      
     #进程监控
     { #{{{
     for dir in $tomcat_dir $mysql_dir $vsftp_dir $ssh_dir
     do
     process_count=$(ps -ef | grep "$dir" | grep -v grep | wc -l)
      
     for service in tomcat mysql vsftp ssh
     do
     echo "$dir" |grep -q "$service"
     if [ $? -eq 0 ]
     then
     if [ $process_count -eq 0 ]
     then
     echo "$service is down at $(date +%Y%m%d%H:%M:%S)" >>$path/process_$(date +%Y%m%d).log
     echo "$service is down at $(date +%Y%m%d%H:%M:%S)" | mail -s "$IP服务器 $service服务关闭告警" XXXX@qq.com
     else
     echo "$service is running at $(date +%Y%m%d%H:%M:%S)" >>$path/process_$(date +%Y%m%d).log
     fi
     else
     continue
     fi
     done
     done
     } #}}}

    (3) 流量监控脚本 network.sh

    #!/bin/bash
     #---------------------------------------------------------------------------------
     # 说明,Linux服务器--流量监控脚本 ,网址来源:http://bbs.51cto.com/thread-937759-1.html
     # 主要监控: 流量监控
     # 生成的流量监控日志
     # 2017.06.25 djp
     #---------------------------------------------------------------------------------
      
     path='/tmp/monitor/network'
     mkdir -p $path
     R1=`cat /sys/class/net/eth0/statistics/rx_bytes`
     T1=`cat /sys/class/net/eth0/statistics/tx_bytes`
     sleep 1
     R2=`cat /sys/class/net/eth0/statistics/rx_bytes`
     T2=`cat /sys/class/net/eth0/statistics/tx_bytes`
     TBPS=`expr $T2 - $T1`
     RBPS=`expr $R2 - $R1`
     TKBPS=`expr $TBPS / 1024`
     RKBPS=`expr $RBPS / 1024`
     echo "上传速率 eth0: $TKBPS kb/s 下载速率 eth0: $RKBPS kb/s at $(date +%Y%m%d%H:%M:%S)" >>$path/network_$(date +%Y%m%d).log

    (4) 流量分析统计脚本 tongji.sh

    #!/bin/bash
     #---------------------------------------------------------------------------------
     # 说明,Linux服务器--流量分析脚本 ,网址来源:http://bbs.51cto.com/thread-937759-1.html
     # 主要监控: 流量分析
     # 生成的流量分析日志
     # 2017.06.25 djp
     #---------------------------------------------------------------------------------
      
     path='/tmp/monitor/network'
     mkdir -p $path
      
     TX=0;
     RX=0;
     MAX_TX=0;
     MAX_RX=0;
     while read line
     do
     a=`echo $line | grep "eth0" |awk '{print $3}'`
     if [ $a -ge 0 ]
     then
     TX=$a
     if [ $TX -ge $MAX_TX ]
     then
     MAX_TX=$TX
     fi
     fi
     b=`echo $line | grep "eth0" |awk '{print $7}'`
     if [ $b -ge 0 ]
     then
     RX=$b
     if [ $RX -ge $MAX_RX ]
     then
     MAX_RX=$RX
     fi
     fi
     done < $path/network_$(date +%Y%m%d).log
     echo "最高上传速度为 $MAX_TX kb/s at $(date +%Y%m%d)">>$path/tongji.log
      
     echo "最高下载速度为 $MAX_RX kb/s at $(date +%Y%m%d)">>$path/tongji.log
     ###############################################################################


    4.使用Zabbix监控

    Zabbix将以上监控都集中在一起,可以实时数据,图形展显,详见Zabbix监控



    展开全文
  • 主要介绍了zabbix监控Linux系统服务的流程,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
  • Jmeter 监控linux服务器资源

    千次阅读 2019-04-24 18:32:44
     3)jmeter服务被启动,可以正常看到操作界面 3、服务端环境搭建  1)将 ServerAgent-2.2.1 放在一个目录下  2)运行:进入程序目录,执行ServerAgent.bat,没有报错视为启动成功 4、添加配置  ...

    1、运行环境

          服务器:CentOS 7

          客户端:win 10

          准备插件:JMeterPlugins-Standard-1.4.0(链接:https://pan.baidu.com/s/1kX1DfqkM136t6-dnR3Xnfw    提取码:nybt )
                            ServerAgent-2.2.1(链接:https://pan.baidu.com/s/14opV5Bxblk4-kr3FpRCXZw     提取码:bv1b)

    2、客户端环境搭建

         1)下载Jmeter版本 apache-jmeter-5.1.1

         2)将JMeterPlugins-Standard-1.4.0.zip解压,将其中的\lib\ext\JMeterPlugins-Standard.jar包复制到jmeter安装目录下的\lib\ext

         2)运行:进入DOS窗口,进入到jmeter的bin目录下,执行jmeter.bat 

        3)jmeter服务被启动,可以正常看到操作界面

    3、服务端环境搭建

         1)将 ServerAgent-2.2.1 放在一个目录下

         2)运行:进入程序目录,执行ServerAgent.bat,没有报错视为启动成功

    4、添加配置

         1)添加线程组,线程属性可以选择“永远”或根据实际测试进行配置,其它不用变

    2)点击线程组添加http请求,不用修改配置参数

     3)点击TestPlan添加监听器,选择如下图

    4)配置监听器参数

    5)可以根据情况添加聚合报告,汇总图,响应时间图等

          注意:需要指定一个存报告的位置及要生成报告的文件名,如图

    5、运行

          点击开始键,运行脚本

    6.查看监控的实时数据

    展开全文
  • Linux 监控tomcat,自动重启tomcat服务Linux 监控tomcat,自动重启tomcat服务Linux 监控tomcat,自动重启tomcat服务Linux 监控tomcat,自动重启tomcat服务
  • Linux简单监控服务脚本

    千次阅读 2018-09-05 23:16:47
    [root@hechaojie monitor]# cat process.sh #!/bin/sh ctime=`date +%Y-%m-%d\ %H:%S:%S` server_name=hechaojie server_dir=/data/$server_...echo $ctime' 监听服务运行状态,'$server_name function checkser...
  • 监控Linux服务器状态

    千次阅读 2018-06-28 20:58:53
    详细信息 top 在第一行的load average是比较重要的数据,分别是服务器1,5,15分钟的负载状态。 如果三个数的平均值在5以上,表示服务器已经处于高负荷状态。 下方式服务器进程详细信息。...
  • 目录一、前言二、六大监控模块指标及相关监控命令2.1 CPU2.2 IO/Disk2.3 Swap(交换分区)2.4 System2.5 Network2.6 Memory三、写在最后 一、前言 如果将Linux系统当做一个车间的话,CPU就是"工人",当CPU使用率过...
  • 今天就来学习一下linux的常用命令吧~ what&amp;amp;amp;amp;amp;How man命令 // 查看所有命令的使用方法 例如: man ls 输出结果: top命令 //实时监控系统运行状态,并且可以按照cpu 及内存进行排序 top ...
  • 转载的,记录一下。用过第二个iftop 还不错 ... 这些工具使用不同的机制来制作流量报告。...而一些工具使用pcap库来捕获所有数据包,然后计算总数据量,从而估计流量负载。 ...监控总体带宽使用――...
  • linux 监控平台介绍

    千次阅读 2018-07-26 19:58:08
    linux 监控平台介绍 常见的开源监控软件   cacti、nagios、zabbix、smokeping、open-falcon等等。  cacti、smokeping偏向于基础监控,成图漂亮。  cacti、nagios、zabbix服务端监控中心,需要php环境支持,...
  • Linux监控程序运行/停止+邮件通知

    千次阅读 2021-01-12 21:24:03
    首先运行并测试下面代码,将QQ换成要监控的进程名称 sudo vim monitor.sh # 创建文件 #将下面文件复制到monitor.sh中 chmod +x monitor.sh # 添加运行权限 ./monitor.sh # 运行 if [ `ps -ef|grep QQ | grep -v ...
  • JVisualVM远程监控linux服务器 tomcatJVisualVM远程监控linux服务器 tomcatJVisualVM远程监控linux服务器 tomcat
  • 主要为大家分享一个监控linux进程的shell脚本,当程序异常退出时可以自动重启,涉及到捕获进程信号与重启进程的命令与知识
  • 本文介绍在Linux系统下几种常见的监控需求及其shell脚本的编写。 文章目录: 1.Linux使用 Shell 检查进程是否存在 2.Linux使用 Shell检测进程 CPU 利用率 3.Linux使用 Shell检测进程内存使用量 4.Linux使用 Shell...
  • 主要介绍了监控Linux系统节点和服务性能的方法,本文给大家介绍的非常详细,具有参考借鉴价值,需要的朋友可以参考下
  • Linux监控脚本监控后台进程,当进程死掉后重新启动服务本次代码主要检测nvr_service、apche2进程,如有另外的需要可以一次添加,步骤如下:一、创建函数function CheckProcess() { # Check whether the parameter is...
  • Windows 下 批量管理,批量监控,批量操作,批量安全扫描 linux Solaris Aix HP-Unix Windows 等操作系统界面最简洁的图形工具。 批量执行多台服务器命令,批量修改密码,批量执行服务器脚本,批量上传文件,解放...
  • 需要监控Linux服务器系统性能吗?尝试下面这些系统内置或附件的工具吧。大多数Linux发行版本都装备了大量的监控工具。这些工具提供了能用作取得相关信息和系统活动的量度指标。你能使用这些工具发现造成性能问题可能...
  • 很简单, 监控linux某进程内存的脚本
  • zabbix监控linux服务/进程状态

    千次阅读 2019-11-13 16:31:20
    zabbix有时候需要监控一些我们自己搭的服务监控这些服务是否正常运行,当服务挂掉的时候及时发送报警。 这时候用zabbix自带的监控方式就可以了 1.首先创建模板,然后编写监控项 2.创建监控项,使用默认监控项 这...
  • linux服务器监控视频

    2018-05-18 13:53:33
    最新版 linux服务器监控视频教程,使用大中监控服务架构企业
  • 应该可运行所有linux环境. 参考网上资料整理代码 , 供参考. 监控 CPU 温度, 内存使用量MB, CPU单核使用率(此项不太准), 网络流入差量KB , 流出差量KB, 运行时间 (小时数),磁盘剩余空间MB, 定时 15秒,将数据上传到...
  • 目的:通过监控观察压测结果,根据各项数据尝试调整各项参数完成单机调优,主要关注内存、cpu等数据。 目前,自动化构建+压测是这么一个过程: 项目(java案例)提交时通过webhook执行jenkins构建 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 295,156
精华内容 118,062
关键字:

linux监控服务

linux 订阅