记一次最近的内存检测,由于所使用的监控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