首页 > 其他分享 >monitor paramiko

monitor paramiko

时间:2024-07-31 17:51:02浏览次数:10  
标签:grep monitor cpu echo awk print CPU paramiko

#!/bin/bash
# 获取要监控的本地服务器IP地址
IP=`ifconfig | grep inet | grep -vE 'inet6|127.0.0.1' | awk '{print $2}'`
echo "IP地址:"$IP
 
# 获取cpu总核数
cpu_num=`grep -c "model name" /proc/cpuinfo`
echo "cpu总核数:"$cpu_num
 
# 1、获取CPU利用率
################################################
#us 用户空间占用CPU百分比
#sy 内核空间占用CPU百分比
#ni 用户进程空间内改变过优先级的进程占用CPU百分比
#id 空闲CPU百分比
#wa 等待输入输出的CPU时间百分比
#hi 硬件中断
#si 软件中断
#################################################
# 获取用户空间占用CPU百分比
cpu_user=`top -b -n 1 | grep Cpu | awk '{print $2}' | cut -f 1 -d "%"`
echo "用户空间占用CPU百分比:"$cpu_user
 
# 获取内核空间占用CPU百分比
cpu_system=`top -b -n 1 | grep Cpu | awk '{print $4}' | cut -f 1 -d "%"`
echo "内核空间占用CPU百分比:"$cpu_system
 
# 获取空闲CPU百分比
cpu_idle=`top -b -n 1 | grep Cpu | awk '{print $8}' | cut -f 1 -d "%"`
echo "空闲CPU百分比:"$cpu_idle
 
# 获取等待输入输出占CPU百分比
cpu_iowait=`top -b -n 1 | grep Cpu | awk '{print $10}' | cut -f 1 -d "%"`
echo "等待输入输出占CPU百分比:"$cpu_iowait
 
#2、获取CPU上下文切换和中断次数
# 获取CPU中断次数
cpu_interrupt=`vmstat -n 1 1 | sed -n 3p | awk '{print $11}'`
echo "CPU中断次数:"$cpu_interrupt
 
# 获取CPU上下文切换次数
cpu_context_switch=`vmstat -n 1 1 | sed -n 3p | awk '{print $12}'`
echo "CPU上下文切换次数:"$cpu_context_switch
 
#3、获取CPU负载信息
# 获取CPU15分钟前到现在的负载平均值
cpu_load_15min=`uptime | awk '{print $11}' | cut -f 1 -d ','`
echo "CPU 15分钟前到现在的负载平均值:"$cpu_load_15min
 
# 获取CPU5分钟前到现在的负载平均值
cpu_load_5min=`uptime | awk '{print $10}' | cut -f 1 -d ','`
echo "CPU 5分钟前到现在的负载平均值:"$cpu_load_5min
 
# 获取CPU1分钟前到现在的负载平均值
cpu_load_1min=`uptime | awk '{print $9}' | cut -f 1 -d ','`
echo "CPU 1分钟前到现在的负载平均值:"$cpu_load_1min
 
# 获取任务队列(就绪状态等待的进程数)
cpu_task_length=`vmstat -n 1 1 | sed -n 3p | awk '{print $1}'`
echo "CPU任务队列长度:"$cpu_task_length
 
#4、获取内存信息
# 获取物理内存总量
mem_total=`free | grep Mem | awk '{print $2}'`
echo "物理内存总量:"$mem_total
 
# 获取操作系统已使用内存总量
mem_sys_used=`free | grep Mem | awk '{print $3}'`
echo "已使用内存总量(操作系统):"$mem_sys_used
 
# 获取操作系统未使用内存总量
mem_sys_free=`free | grep Mem | awk '{print $4}'`
echo "剩余内存总量(操作系统):"$mem_sys_free
 
# 获取应用程序已使用的内存总量
mem_user_used=`free | sed -n 3p | awk '{print $3}'`
echo "已使用内存总量(应用程序):"$mem_user_used
 
# 获取应用程序未使用内存总量
mem_user_free=`free | sed -n 3p | awk '{print $4}'`
echo "剩余内存总量(应用程序):"$mem_user_free
 
 
# 获取交换分区总大小
mem_swap_total=`free | grep Swap | awk '{print $2}'`
echo "交换分区总大小:"$mem_swap_total
 
# 获取已使用交换分区大小
mem_swap_used=`free | grep Swap | awk '{print $3}'`
echo "已使用交换分区大小:"$mem_swap_used
 
# 获取剩余交换分区大小
mem_swap_free=`free | grep Swap | awk '{print $4}'`
echo "剩余交换分区大小:"$mem_swap_free
 

#5、获取磁盘I/O统计信息
echo "指定设备(/dev/sda)的统计信息"
# 每秒向设备发起的读请求次数
disk_sda_rs=`iostat -kx | grep sda| awk '{print $4}'`
echo "每秒向设备发起的读请求次数:"$disk_sda_rs
 
# 每秒向设备发起的写请求次数
disk_sda_ws=`iostat -kx | grep sda| awk '{print $5}'`
echo "每秒向设备发起的写请求次数:"$disk_sda_ws
 
# 向设备发起的I/O请求队列长度平均值
disk_sda_avgqu_sz=`iostat -kx | grep sda| awk '{print $9}'`
echo "向设备发起的I/O请求队列长度平均值"$disk_sda_avgqu_sz
 
# 每次向设备发起的I/O请求平均时间
disk_sda_await=`iostat -kx | grep sda| awk '{print $10}'`
echo "每次向设备发起的I/O请求平均时间:"$disk_sda_await
 
# 向设备发起的I/O服务时间均值
disk_sda_svctm=`iostat -kx | grep sda| awk '{print $11}'`
echo "向设备发起的I/O服务时间均值:"$disk_sda_svctm
 
# 向设备发起I/O请求的CPU时间百分占比
disk_sda_util=`iostat -kx | grep sda| awk '{print $12}'`
echo "向设备发起I/O请求的CPU时间百分占比:"$disk_sda_util

 

标签:grep,monitor,cpu,echo,awk,print,CPU,paramiko
From: https://www.cnblogs.com/ruiy/p/18335117

相关文章

  • 使用Python Paramiko创建文件目录并上传文件的终极指南
    哈喽,大家好,我是木头左!前言:为何选择Paramiko?在网络运维和自动化领域,SSH(SecureShell)协议是连接和管理远程服务器的常用手段。而Paramiko是一个用于进行SSH2会话的Python库,它支持加密、认证和文件传输等功能。使用Paramiko,可以方便地实现远程命令执行、文件上传下载等操作。准......
  • Monitor - Kubemetes监控
    Kubemetes监控方案基于Kube-StateMetrics、Promethus和Grafana组件的监控方案基于NodeExporter、Promethus和Grafana组件的监控方案两种监控方案类似,区别在于监控采集端不同,前一种方案使用Metrics,而后一种方案使用NodeExporter。Metrics与NodeExporter组件类似,都是数......
  • ControlMyMonitor、MultiMonitorTool、autohotkey 设置笔记本和台式机切换屏幕
    一、背景1.1台笔记本、1台台式机共用一个显示器。2.显示器1个vga输入、1个hdmi输入3.笔记本通过hdmi转vga连到显示器,台式机通过HDMI连到显示器二、需求通过键盘切换显示器输入。三、软件介绍ControlMyMonitor:控制显示器输入方式(选择vga、hdmi)MultiMonitorTool:控制电脑在哪......
  • 网络编程必备:Python中Paramiko和FTP的文件夹与文件检测技巧
    哈喽,大家好,我是木头左!Paramiko是一个用于进行SSH连接的Python库,它支持以加密的形式进行远程命令执行、文件传输等操作。另一方面,FTP即文件传输协议,用于在网络上进行文件的传输。Python中的ftplib模块允许实现FTP客户端的功能,包括列出目录内容、上传和下载文件等。检查文件夹......
  • Python中的Paramiko与FTP文件夹及文件检测技巧
    哈喽,大家好,我是木头左!Python代码的魅力与实用价值在当今数字化时代,编程已成为一种不可或缺的技能。Python作为一种简洁、易读且功能强大的编程语言,受到了全球开发者的喜爱。它不仅适用于初学者入门,也为专业开发者提供了丰富的库和框架,以解决各种复杂问题。在这篇文章中,将重点......
  • python 库 Paramiko
    Paramiko说明Paramiko是一个用于在Python中实现SSH协议的模块,它允许你在远程服务器上执行命令、上传和下载文件等操作。Paramiko组件paramiko.Transportparamiko.Transport是用于建立安全通信隧道的类,它是SSH连接的核心部分。它负责与远程服务器建立连接、身份验证和......
  • Performance Monitoring检测camstar性能
    InsiteXMLServer\ProvateBytes使用内存的字节InsiteXMLServer\WorkingSetPeak高峰Process\%ProcessorTimeCPU占用时间InsiteXMLServer\ElapsedTime占用时间Camstar.Security.LMServer \ElapsedTimeCamstarNotificatuionServer\ElapsedTimeCIMSagent\ E......
  • python paramiko remote 采集监控信息
    #!/usr/bin/python#-*-coding:utf-8-*-#+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++#@auhorbyruiy####pipinstallparamiko-ihttps://pypi.tuna.tsinghua.edu.cn/simple##pipinstallpsutil-ihttps://py......
  • Pyodps2节点连接linux服务器(paramiko 检查文件是否存在)
    在maxcomputer加入paramiko相关资源包1#!/usr/bin/python2#-*-coding:UTF-8-*-34##@resource_reference{"six.zip"}5##@resource_reference{"PyNaCl-1.4.0.zip"}6##@resource_reference{"paramiko-2.7.2.zip"}7##@resource_r......
  • go - Monitoring
    保证高可用的方法1.日志2.链路追踪3.监控 1.业务监控(领导层) OPS/DAU/访问状态httpcode/业务接口(登陆注册聊天上传留言搜索) 2.systemmonitoring (运维) operatingsystem:cpu/memory/diskusage/diskspace/TCP(上w的连接),流量 组件:mysql,redis,kafka 3.......