1 、獲取資訊
#!/bin/bash
#描述:
# 把 top 資訊輸入到一個檔案內部
#作者: 孤舟點點
#版本:1.0
#建立時間:2017-11-09 03:04:28
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
p=`pwd`
Day=`date +”%Y%m%d”`
HOST=`hostname`
for((i=0; i<1440; i=i+1))
do
echo "Date `date +"%Y-%m-%d %H:%M:%S"`" >>$p/$Day-top.txt
top c -bn1 >>$p/$Day-top.txt
sleep 1
done
2 、篩選資訊
#!/bin/bash
#描述:
#作者: 孤舟點點
#版本:1.0
#建立時間:2017-11-09 04:08:52
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
p=`pwd`
Day=`date +”%Y%m%d”`
HOST=`hostname`
mkdir -p $p/$HOST-$Day
PT=$p/$HOST-$Day
cd $PT
cat $p/$1 | grep -v grep | grep “^Date” >> $PT/Time-$Day.txt
cat $p/$1 | grep -v grep | grep “^Cpu(s):” >> $PT/CPU-$Day.txt
cat $p/$1 | grep -v grep | grep “^Mem:” >> $PT/Mem-$Day.txt
cat $p/$1 | grep -v grep | grep “^Swap:” >> $PT/Cache-$Day.txt
while read line
do
cat $p/$1 | grep -v grep | grep “$line” >> $PT/$line-$Day.txt
done < $p/service.txt
# 這裡 service.txt 是按行存放的服務名稱
cd $p
3 、整理資料
例如用 Excel 整理記憶體使用情況,這裡把獲取的時間和記憶體資訊放在 Excel 內部,並把記憶體列用 Excel 分列,用時間和使用的記憶體大小列可以製作出一張記憶體使用趨勢圖;同理也可以製作 CPU 、 cached 及各個微服務的 CPU 和記憶體趨勢圖。
原文連結:http://www.centoscn.com/shell/2017/1118/9242.html