linux redis 内存使用情况,用于记录cpu的shell脚本和linux进程的内存使用情况

我正在寻找一种方法来记录和图形显示

linux进程的CPU和RAM使用情况.因为我找不到一个简单的工具(我试过zabbix和munin但是安装失败了)我开始写一个shell脚本来这样做

脚本文件通过awk解析top命令的输出并登录到csv文件.它

>通过ps命令计算出进程的pid

>使用top和awk来记录cpu和内存使用情况.

以下是脚本的外观

#!/bin/sh

#A script to log the cpu and memory usage of linux processes namely - redis, logstash, elasticsearch and kibana

REDIS_PID=$(ps -ef | grep redis | grep -v grep | awk '{print $2}')

LOGSTASH_PID=$(ps -ef | grep logstash | grep -v grep | awk '{print $2}')

ELASTICSEARCH_PID=$(ps -ef | grep elasticsearch | grep -v grep | awk '{print $2}')

KIBANA_PID=$(ps -ef | grep kibana | grep -v grep | awk '{print $2}')

LOG_FILE=/var/log/user/usage.log

echo $LOG_FILE

top -b | awk -v redis="$REDIS_PID" -v logstash="$LOGSTASH_PID" '/redis|logstash/ {print $1","$9","$10","$12}'

我如何能

>打印多个进程的资源使用情况.指定多个

awk模式中的变量不起作用.它打印用途

第一个pid(上面脚本中的redis)

>打印资源详细信息时打印当前时间戳(通过日期“%T”)

>打印进程名称以及资源使用情况.在上述情况下,Redis,Logstash,ElasticSearch或Kibana

>将上述命令输出重定向到日志文件.我试过> $LOG_FILE但它没有用.

思考/投入?

提前致谢.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值