如何记录系统Top 10的内存使用?

Bash

1 前言

笔者有生产服务器需要分析内存占用,于是产生本文。

2 最佳实践

2.1 创建脚本

mkdir ~/scripts
vim ~/scripts/mem-top.sh

加入如下内容,

#!/bin/bash

dt=`date +%Y%m%d%H%M%S`
logfile="/var/log/memCheck/mem-top."$dt".log"

if [ ! -d `dirname $logfile` ]; then
 mkdir -p `dirname $logfile`
fi

ps auxw | head -1 > $logfile
ps auxw | sort -rn -k4 | head -10 >> $logfile

# find `dirname $logfile` -ctime +30 -name "*.log" -exec ls {} \;
find `dirname $logfile` -ctime +30 -name "*.log" -exec rm -f {} \;

2.2 配置触发

*/5 * * * * bash ~/scripts/mem-top.sh
没有评论

发表评论

Bash
如何命令查找docker集群实例关键字?

1 前言 一个问题,一篇文章,一出故事。 笔者定位某个IP地址在集群中的位置,于是笔者想到使用循环去 …

Bash
如何使用计划任务操作容器?

1 前言 一个问题,一篇文章,一出故事。 笔者今天需要根据一定的条件删除容器里面的过期文件,但由于容 …

Bash
如何实现主从存储目录镜像?

1 理论部分 1.1 工具的介绍 Inotify一种强大的、细粒度的、异步文件系统监控机制,它满足各 …