详细记录内存占用shell脚本

记一次最近的内存检测,由于所使用的监控GUI无法追溯至前两天,打算写个脚本来进行记录,3分钟记录一次,且记录包括是那个服务对内存占用,且一周清理一次。

注意:日志记录内容需要按照自己的目录结构来

sudo vim /data/changxuan/memwrite.sh
#!/bin/bash

while true; do
  # 时间戳
  timestamp=$(date +"%Y-%m-%d %H:%M:%S")

  # 内存占用统计
  mem=$(free -m | awk 'NR==2{printf "%.2f", $3/1024}')

  # 详细划分内存占用进程
  process=$(ps aux --sort=-%mem | awk 'NR==2{print $11}')

  # 写入文件
  echo "$timestamp $process $mem MB" >> /data/changxuan/mem.txt

  # 3分钟一次
  sleep 180
done

一周清理一次,添加定时内容

crontab -e -u market
0 0 * * 0 > /data/changxuan/mem.txt

猜你喜欢

转载自blog.csdn.net/m0_72264240/article/details/130499740