Linux进程监控

1、ps命令使用

  • ps -aux

USER 进程的用户;
PID进程的ID;
%CPU进程占用的CPU百分比;
%MEM  占用内存的百分比;
VSZ  该进程使用的虚拟内存量(KB);
RSS  该进程占用的固定内存量(KB);
TTY  该进程在哪个终端上运行(登陆者的终端位置),若与终端无关,则显示(?)。若为pts/0等,则表示由网络连接主机进程;
STAT进程状态
START该进程被触发启动时间;
TIME该进程实际使用CPU运行的时间;
COMMAND命令的名称和参数;

STAT状态位常见的状态字符

D无法中断的休眠状态(通常的进程);
R正在运行可中在队列中可过行的;
S处于休眠状态;
T停止或被追踪;
W进入内存交换(从内核2.6开始无效);
X死掉的进程(基本很少见);
Z僵尸进程;
<优先级高的进程;
N优先级较低的进程;
L有些页被锁进内存;
s进程的领导者(在它之下有子进程);
l多进程的(使用CLONE_THREAD,类似NPTLpthreads);
+位于后台的进程组;

​​

2、top命令使用其它详细使用参考链接: http://www.cnblogs.com/peida/archive/2012/12/19/2824418.html

  • top -p pid
  • 进程的状态、cpu、内存等

        PID进程的ID
  USER进程所有者
  PR进程的优先级别,越小越优先被执行
  NInice
  VIRT进程占用的虚拟内存 (KB)
  RES进程占用的物理内存 (KB)
  SHR进程使用的共享内存 (KB)
  S进程的状态。S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值为负数
  %CPU进程占用CPU的使用率
  %MEM进程使用的物理内存和总内存的百分比
  TIME+该进程启动后占用的总的CPU时间,即占用CPU使用时间的累加值。
  COMMAND进程启动命令名称

参考文献: https://www.cnblogs.com/gaojun/p/3406096.html

3、进程监控(一)

ps -aux | grep "test.py" | grep -v grep &> /dev/null
if [ $? -ne 0 ] #检测pgrep命令执行的状态码
then
  echo "`date` test service is stopped. Now it will be restarted." >> test.log
  python test.py > out.txt 2>&1 & 
else
  echo "`date` test service is  running" >> test.log 
fi
  • grep -v grep 过滤掉grep进程本身

    eg: tester 10192 0.0 0.1 3328 876 pts/0 S+ 12:41 0:00 grep --color=auto init

  •  有些进程状态已经stop就没法检测,其实代码已经不跑了

4、进程监控(二)

ps -aux | grep test | grep -v grep | tr -s ' '| cut -d ' ' -f 8 | grep -E 'R|S'
if [ $? -ne 0 ] #检测pgrep命令执行的状态码
then
  echo "`date` test service is stopped. Now it will be restarted." >> test.log
  pid_str=ps -aux | grep test | grep -v grep | tr -s ' '| cut -d ' ' -f 2
  if [ ${#pid_str} -ne 0 ]
     ps -ef | grep test | grep -v grep |cut -c 9-15 | xargs kill -9
  fi
  python test.py > out.txt 2>&1 & 
else
  echo "`date` test service is  running" >> test.log 
fi
  • 监控进程的状态是否在运行,判断是否要重启
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值