# cat perf_log.sh
#!/bin/sh

# TPS

echo `date +%Y%m%d_%H%M` `iostat -d 1 2 | grep sd | egrep -v [a-z][0-9] | tail -n -120 | awk '{runq+=$2} ; END {print runq}'` >> /root/perf_log/log/TPS.log


# read io size

echo `date +%Y%m%d_%H%M` `vmstat 1 2 | tail -n 1 | awk '{print "read size: ", $9, "KB"}'` >> /root/perf_log/log/read_io.log

# write size

echo `date +%Y%m%d_%H%M` `vmstat 1 2 | tail -n 1 | awk '{print "write size: ", $10, "KB"}'` >> /root/perf_log/log/write_io.log


# cpu runq

echo `date +%Y%m%d_%H%M` `vmstat 1 2 | tail -n 1 | awk '{print "procs runq: ", $1}'` >> /root/perf_log/log/cpu_runq.log


# network

bond0_r1=`cat /proc/net/dev | grep bond0 | cut -c8- | awk '{print $1}'`
bond0_t1=`cat /proc/net/dev | grep bond0 | cut -c8- | awk '{print $9}'`
bond1_r1=`cat /proc/net/dev | grep bond1 | cut -c8- | awk '{print $1}'`
bond1_t1=`cat /proc/net/dev | grep bond1 | cut -c8- | awk '{print $9}'`


sleep 1
bond0_r2=`cat /proc/net/dev | grep bond0 | cut -c8- | awk '{print $1}'`
bond0_t2=`cat /proc/net/dev | grep bond0 | cut -c8- | awk '{print $9}'`
bond1_r2=`cat /proc/net/dev | grep bond1 | cut -c8- | awk '{print $1}'`
bond1_t2=`cat /proc/net/dev | grep bond1 | cut -c8- | awk '{print $9}'`
echo -e `date +%Y%m%d_%H%M` "Receive : $[($bond0_r2-$bond0_r1)/1024] KB/s  \t  Transmit : $[($bond0_t2-$bond0_t1)/1024] KB/s" >> /root/perf_log/log/network_bond0_traffic.log
echo -e `date +%Y%m%d_%H%M` "Receive : $[($bond1_r2-$bond1_r1)/1024] KB/s  \t  Transmit : $[($bond1_t2-$bond1_t1)/1024] KB/s" >> /root/perf_log/log/network_bond1_traffic.log



현재 S모 통신사에서 사용중인 성능정보 수집용 스크립트입니다. 1분 단위로 crontab에 넣고 쓰고 있네요.


아래는 Log 출력 형태 예시입니다. ^^

# cat cpu_runq.log
20101001_1324 procs runq: 10
20101001_1325 procs runq: 9
20101001_1326 procs runq: 6
20101001_1327 procs runq: 4
20101001_1328 procs runq: 13

# cat network_bond0_traffic.log
20101001_1324 Receive : 24737 KB/s        Transmit : 11292 KB/s
20101001_1325 Receive : 4480 KB/s         Transmit : 3737 KB/s
20101001_1326 Receive : 8322 KB/s         Transmit : 3293 KB/s
20101001_1327 Receive : 4436 KB/s         Transmit : 4646 KB/s
20101001_1328 Receive : 2141 KB/s         Transmit : 2243 KB/s

[root@mcwd_db1 log]# cat network_bond1_traffic.log
20101001_1324 Receive : 2165 KB/s         Transmit : 2438 KB/s
20101001_1325 Receive : 2202 KB/s         Transmit : 2514 KB/s
20101001_1326 Receive : 2574 KB/s         Transmit : 2863 KB/s
20101001_1327 Receive : 2976 KB/s         Transmit : 3143 KB/s
20101001_1328 Receive : 1510 KB/s         Transmit : 1737 KB/s

[root@mcwd_db1 log]# cat read_io.log
20101001_1324 read size: 101543 KB
20101001_1325 read size: 63079 KB
20101001_1326 read size: 54999 KB
20101001_1327 read size: 79167 KB
20101001_1328 read size: 44535 KB
20101001_1329 read size: 57747 KB

[root@mcwd_db1 log]# cat write_io.log
20101001_1324 write size: 4399 KB
20101001_1325 write size: 13337 KB
20101001_1326 write size: 13545 KB
20101001_1327 write size: 7307 KB
20101001_1328 write size: 9409 KB
20101001_1329 write size: 10605 KB

[root@mcwd_db1 log]# cat TPS.log
20101001_1324 8284
20101001_1325 7287
20101001_1326 8364.27
20101001_1327 6125
20101001_1328 6985
20101001_1329 8963


+ Recent posts