Saya mencoba membuat skrip yang memungkinkan saya memantau Pemanfaatan CPU, Pemanfaatan Memori, Pemanfaatan I/O, dan Pemanfaatan Jaringan. Saat ini, saya memiliki skrip yang harus menjalankan perintah yang diperlukan di linux. Mudah-mudahan pada akhirnya, saya dapat menjalankan ini setiap 15 menit atau lebih dan kemudian menggunakan informasi spesifik untuk menganalisis data. Di bawah ini skripnya:
#!/bin/sh
########################################################
OUTPUT="ServerPerf`date '+%d%m%y'`.out"
(
echo "=================================================="
echo " Script Starting Time : `date` "
echo "================================================="
echo " Disk I/O Status "
echo "================================================="
echo
iostat
echo
echo "================================================="
echo "##################################################"
echo " NETWORK TCP PARAMETERS STATUS "
echo "##################################################"
echo
echo
netstat -sp tcp
echo
echo " Processes List "
echo
ps -elf
echo
echo " END "
echo
echo "##################################################"
echo "##################################################"
echo " NETWORK CONNECTION PARAMETER "
echo "##################################################"
echo
echo
netstat -an
echo
echo
echo "##################################################"
echo " NETWORK TRAFFIC STATUS ON INTERFACES "
echo "##################################################"
echo
echo
netstat -i
echo
echo
echo "##################################################"
echo " SERVER MEMORY/CPU Utilization Report "
echo "##################################################"
echo
top -d1 -n 5
echo "=================================================="
echo " VMSTAT INFO "
echo "=================================================="
echo
vmstat 5 5
echo
echo "=================================================="
echo " Script Ending Time : `date` "
echo
echo "=================================================="
) >> $OUTPUT
Sekarang, saya ingin mengambil data berguna dari file yang dibuat ini. Ada beberapa kategori di mana data dapat diurutkan:
- Rata-rata Beban
- Persentase CPU Menganggur
- Pemanfaatan Kernel
- Pemanfaatan Memori
- Aktivitas bertukar
Saya mencoba menggunakan perintah ini untuk menghasilkan 5 file ini dan sepertinya mengalami kesulitan.
grep "load avg" /home/test/logs/ServerPerf180610.out | awk '{ print $6 }' | awk -F, '{ print $1 }' > load_avg.txt
grep "CPU states" /home/test/logs/ServerPerf180610.out | awk '{ print $3 }' | awk -F% '{ print $1 }' > cpu_idle.txt
grep "CPU states" /home/test/logs/ServerPerf180610.out | awk '{ print $7 }' | awk -F% '{ print $1 }' > cpu_kernel.txt
grep "Memory" /home/test/logs/ServerPerf180610.out | awk '{ print $5 }' | awk -FG '{ print $1 }' > memory_util.txt
grep "Memory" /home/test/logs/ServerPerf180610.out | awk '{ print $11 }' | awk -FG '{ print $1 }' > swap_util.txt
Saat perintah ini dijalankan, file keluarannya kosong. Adakah yang tahu mengapa saya tidak dapat membuat file-file ini?
Saya sangat menghargai bantuan Anda.
Terima kasih, Harun
UDPATE: Berikut ini salinan file keluaran: http://www.queencitytech.com/ServerPerfRepo180610.out
sar
untuk mengumpulkan data kinerja dari waktu ke waktu dan melaporkannya. Ini mencakup sebagian besar data kinerja yang sama dengan yang Anda cari. github.com/sysstat/sysstat - person Andrew Yochum   schedule 24.04.2019