Linux系统资源获取并写入数据库

本文介绍了如何通过C++和shell脚本实时获取Linux系统资源,包括CPU使用率、磁盘空间、内存使用率、网络流量等,并将数据写入数据库。详细列举了各脚本的功能,并解析了获取CPU使用率的原理。
摘要由CSDN通过智能技术生成

一、说明:

       之前在做srs流媒体压测时,系统资源相关的数据查看不方便,于是就使用C++ 加上shell脚本,实时获取Linux系统资源情况并将数据写入到数据库中。


二、脚本目录介绍:

     流媒体服务器(172.18.152.*3)

     脚本目录介绍:
     /root/GetSystemInfo    //脚本目录
     GetSystemInfo.cpp      //主程序
     cpurate.sh                   //获取cpu使用率
     getsize.sh                    //获取磁盘空间
     memrate.sh                 //获取内存使用率
     network_recev.sh        //获取网络接收流量
     network_send.sh         //获取网络发送流量
     getonline.sh                //获取在线个数
     runtest.sh                    //编译并运行主程序


     推流端(172.18.152.*6)

     脚本目录介绍:
     /root/                                //目录
     kill_rtmp_pid.cpp              //调用GetPidAndKill.sh脚本
     GetPidAndKill.sh               //获取pid并杀掉
     rtmp_publish_test.sh        //开始推流脚本
     runtest.sh                         //编译并运行kill_rtmp_pid.cpp


     拉流端(172.18.151.*4)  

     脚本目录介绍:
     /root/                                //目录
     kill_rtmp_pid.cpp              //调用GetPidAndKill.sh脚本
     GetPidAndKill.sh               //获取pid并杀掉
     rtmp_load_test.sh             //开始拉流脚本
     runtest.sh                         //编译并运行kill_rtmp_pid.cpp



三、系统资源的获取

        1、  cpu使用率获取:
        原理是读取系统的 (/proc/stat)文件,然后再提取出想要的数据,再对其进行计算,如图:

        

     

第一行的数值表示的是CPU总的使用情况,所以我们只要用第一行的数字计算就可以了。下面对各项参数进行解释说明:

      user (1581512)
      从系统启动开始累计到当前时刻,用户态的CPU时间,不包含 nice值为负进程。

       nice (9124)
      从系统启动开始累计到当前时刻,nice值为负的进程所占用的CPU时间

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值