การตรวจสอบระบบปฏิบัติการ

จาก Asterisk DIY - VoIP Opensource WiKi, สารานุกรมฟรี

(Difference between revisions)
Jump to: navigation, search
Revision as of 10:36, 26 กุมภาพันธ์ 2010
Wanchatc (พูดคุย | contribs)
(การตรวจสอบการใช้งาน CPU)
← Previous diff
Revision as of 15:19, 8 มีนาคม 2010
Wanchatc (พูดคุย | contribs)

Next diff →
Line 1: Line 1:
 +== การตรวจสอบการทำงานของการ์ด Network ==
 +
 + 1. ethtool, เป็นคำสังที่ใช้ในการตรวจสอบความเร็วของการ์ด แลน
 + # ethtool eth0
 +
 + 2. ifconfig, เป็นคำสังใช้ในการตรวจสอบการทำงานของการ์ด แลน
 + # ifconfig eth0
 +
== การตรวจสอบการใช้งาน CPU == == การตรวจสอบการใช้งาน CPU ==

Revision as of 15:19, 8 มีนาคม 2010

การตรวจสอบการทำงานของการ์ด Network

1. ethtool, เป็นคำสังที่ใช้ในการตรวจสอบความเร็วของการ์ด แลน
# ethtool eth0

2. ifconfig, เป็นคำสังใช้ในการตรวจสอบการทำงานของการ์ด แลน
# ifconfig eth0


การตรวจสอบการใช้งาน CPU

1. top, เป็นคำสั่งที่ใช้ในการตรวจสอบการใช้งาน system resource ภาพรวมทั้งหมดของระบบ

# top    
;แสดงการใช้งานของ System CPU 

# top -u asterisk -d 1   
;แสดงการใช้งานของ CPU โดยแสดงเฉพาะ ที่ run โดย "asterisk" user และ refresh ทุก 1 วินาที
2. mpstat, ใช้ในการตรวจสอบการทำงานของ CPU ซึ่งโปรแกรมนี้สามารถที่จะแสดงการทำงานอย่างละเอียดในแต่ละ Core ของ CPU ได้  (required sysstat package)

# mpstat -P ALL   ;แสดงการใช้งานของ CPU ที่เวลาปัจจุบันโดยแยกการใช้งานออกเป็นแต่ละ CPU
3. sar, เป็น tools ในการรวบรวม, จัดเก็บ, และแสดงผลของการใช้งานของระบบ
4. ps, เป็น basic command ใน linux เพิ่อใช้ในการดู process ในระบบ ซึ่งสามารถนำมาใช้ในการตรวจสอบว่า process ใดใช้ CPU 

ตรวจสอบ process ที่ใช้ CPU สูงที่สุด 10 อันดับแรก ในปัจจุบัน
# ps -eo pcpu,pid,user,args | sort -k 1 -r | head -10

ตรวจสอบภาพรวมของ process ที่ใช้ CPU สูงที่สุด 10 อันดับแรก ตั้งแต่เปิดระบบ 
# ps -eo time,pcpu,pid,user,args | sort -k 1 -r | head -10


การเขียน script เพิ่มเก็บรวบรวมค่า log ต่างๆเป็นช่วงเวลา

ในกรณีที่การตรวจสอบตามปรติไม่พบค่าอะไร การใช้ cron ร่วมกับ shell script เพิ่อเก็บค่าที่ต้องการตรวจสอบไว้ใน file เป็นทางเลือกที่ดีทางหนึ่ง ในตัวอย่างจะเป็นการ สร้าง script เพิ่มเก็บค่า CPU usage ภาพรวมและ process 10 อันดับแรกที่ใช้ CPU มากที่สุด โดยจะเก็บค่า ทุก 1 นาที

1. ทำการสร้าง file "check_process" โดยมีค่าดังนี้
echo "============================" >> /var/log/pslog
mpstat >> /var/log/pslog
ps -eo pcpu,pid,user,args | sort -k 1 -r | head -10 >> /var/log/pslog
อย่าลืมเป็น permission ของ file นี้ให้ executable ด้วย
chmod 755 ./check_process

2. สร้าง cron file เพิ่มให้ cron ทำการ run process นี้ทุกๆ นาที
cd /etc/cron.d
สร้าง file "pslog" โดยชี้ไปยัง script file ที่สร้างขึ้นในข้อที่ 1 
* * * * * root /root/check_process

3. ทำการ restart cron service
# service crond restart