給vmstat加上時間戳

vmstat -n 5 | awk '{print strftime("[%Y-%m-%d %H:%M:%S]"),$0}'
或者
vmstat -n 5 | awk '{ printf "%s\t",$0; system("date +\"[%F %T\"]"); }'
 
附上偶的一個腳本工具, 根據vmstat, 第一列加上時間戳, 來輸出某服務器上當天的機器各項性能指標情況:
#!/bin/bash
# crontab    0 0 * * * /usr/local/app/binary/vm_snapp/vmstat_snapshot.sh >> /usr/local/app/binary/vm_snapp/vmstat_snapshot.log 2>&1 
export PATH="$PATH:/bin:/usr/bin:/usr/local/bin:/usr/bsd:/usr/X11R6/bin:/usr/bin/X11:"
 
WORK_DIR="/usr/local/app/binary/vm_snapp"
[ ! -d ${WORK_DIR} ] && mkdir -p ${WORK_DIR}
DATA_DIR="${WORK_DIR}/data"
[ ! -d ${DATA_DIR} ] && mkdir -p ${DATA_DIR}
PID_FILE="${WORK_DIR}/.vmstat_snapshot.pid"
[ -f ${PID_FILE} ] && kill -0 `cat ${PID_FILE}` 1>/dev/null 2>&1 && kill -9 `cat ${PID_FILE}`
 
vmstat -n 5 | awk '{print strftime("[%Y-%m-%d %H:%M:%S]"),$0; fflush(); }' > ${DATA_DIR}/vmstat_`date +%Y%m%d%H%M%S`.log &
echo $! > ${PID_FILE}
 
 
exit 0
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章