ngxtop - ตรวจสอบไฟล์บันทึก Nginx แบบเรียลไทม์ใน Linux
ngxtop เป็นโอเพ่นซอร์สฟรี เรียบง่าย ยืดหยุ่น กำหนดค่าได้เต็มที่ และใช้เครื่องมือตรวจสอบแบบเรียลไทม์ชั้นนำแบบเรียลไทม์สำหรับเซิร์ฟเวอร์ nginx โดยรวบรวมข้อมูลโดยแยกวิเคราะห์บันทึกการเข้าถึง nginx (ตำแหน่งเริ่มต้นคือ /var/log/nginx/access.log เสมอ) และแสดงตัวชี้วัดที่มีประโยชน์ของเซิร์ฟเวอร์ nginx ของคุณ ซึ่งช่วยให้คุณจับตาดู เว็บเซิร์ฟเวอร์แบบเรียลไทม์ นอกจากนี้ยังช่วยให้คุณแยกวิเคราะห์บันทึก Apache จากเซิร์ฟเวอร์ระยะไกลได้
วิธีการติดตั้งและใช้งาน Ngxtop ใน Linux
หากต้องการติดตั้ง ngxtop ขั้นแรกคุณต้องติดตั้ง PIP ใน Linux เมื่อคุณติดตั้ง pip บนระบบของคุณแล้ว คุณสามารถติดตั้ง ngxtop โดยใช้คำสั่งต่อไปนี้ .
sudo pip install ngxtop
ตรวจสอบคำขอเซิร์ฟเวอร์ Nginx
เมื่อคุณติดตั้ง ngxtop แล้ว วิธีที่ง่ายที่สุดในการรันคือไม่มีข้อโต้แย้งใดๆ การดำเนินการนี้จะแยกวิเคราะห์ /var/log/nginx/access.log และทำงานในโหมดติดตาม (ดูบรรทัดใหม่ขณะที่เขียนลงในบันทึกการเข้าถึง) ตามค่าเริ่มต้น
sudo ngxtop
ผลลัพธ์ตัวอย่าง
running for 411 seconds, 64332 records processed: 156.60 req/sec
Summary:
| count | avg_bytes_sent | 2xx | 3xx | 4xx | 5xx |
|---------+------------------+-------+-------+-------+-------|
| 64332 | 2775.251 | 61262 | 2994 | 71 | 5 |
Detailed:
| request_path | count | avg_bytes_sent | 2xx | 3xx | 4xx | 5xx |
|------------------------------------------+---------+------------------+-------+-------+-------+-------|
| /abc/xyz/xxxx | 20946 | 434.693 | 20935 | 0 | 11 | 0 |
| /xxxxx.json | 5633 | 1483.723 | 5633 | 0 | 0 | 0 |
| /xxxxx/xxx/xxxxxxxxxxxxx | 3629 | 6835.499 | 3626 | 0 | 3 | 0 |
| /xxxxx/xxx/xxxxxxxx | 3627 | 15971.885 | 3623 | 0 | 4 | 0 |
| /xxxxx/xxx/xxxxxxx | 3624 | 7830.236 | 3621 | 0 | 3 | 0 |
| /static/js/minified/utils.min.js | 3031 | 1781.155 | 2104 | 927 | 0 | 0 |
| /static/js/minified/xxxxxxx.min.v1.js | 2889 | 2210.235 | 2068 | 821 | 0 | 0 |
| /static/tracking/js/xxxxxxxx.js | 2594 | 1325.681 | 1927 | 667 | 0 | 0 |
| /xxxxx/xxx.html | 2521 | 573.597 | 2520 | 0 | 1 | 0 |
| /xxxxx/xxxx.json | 1840 | 800.542 | 1839 | 0 | 1 | 0 |
หากต้องการออก ให้กด [Ctrl + C]
แยกวิเคราะห์บันทึกการเข้าถึงที่แตกต่างกัน
คุณสามารถแยกวิเคราะห์บันทึกการเข้าถึงอื่นได้ เช่น สำหรับเว็บไซต์หรือเว็บแอปใดโดยเฉพาะโดยใช้แฟล็ก -l
ดังที่แสดง
sudo ngxtop -l /var/log/nginx/site1/access.log
แสดงรายการ IP ต้นทางยอดนิยมของลูกค้า
คำสั่งต่อไปนี้จะแสดงรายการ IP ต้นทางยอดนิยมทั้งหมดของไคลเอนต์ที่เข้าถึงไซต์
sudo ngxtop remote_addr -l /var/log/nginx/site1/access.log
ผลลัพธ์ตัวอย่าง
running for 20 seconds, 3215 records processed: 159.62 req/sec
top remote_addr
| remote_addr | count |
|-----------------+---------|
| 118.173.177.161 | 20 |
| 110.78.145.3 | 16 |
| 171.7.153.7 | 16 |
| 180.183.67.155 | 16 |
| 183.89.65.9 | 16 |
| 202.28.182.5 | 16 |
| 1.47.170.12 | 15 |
| 119.46.184.2 | 15 |
| 125.26.135.219 | 15 |
| 125.26.213.203 | 15 |
ใช้รูปแบบบันทึกเฉพาะ
หากต้องการใช้รูปแบบบันทึกตามที่ระบุไว้ในคำสั่ง log_format ให้ใช้ตัวเลือก -f
ตามที่แสดง
sudo ngxtop -f main -l /var/log/nginx/site1/access.log
แยกวิเคราะห์บันทึก Apache จากเซิร์ฟเวอร์ระยะไกล
หากต้องการแยกวิเคราะห์ไฟล์บันทึก Apache จากเซิร์ฟเวอร์ระยะไกลที่มีรูปแบบทั่วไป ให้ใช้คำสั่งที่คล้ายกับคำสั่งต่อไปนี้ (ระบุชื่อผู้ใช้และ IP เซิร์ฟเวอร์ระยะไกลของคุณ)
ssh user@remote_server tail -f /var/log/apache2/access.log | ngxtop -f common
ผลลัพธ์ตัวอย่าง
running for 20 seconds, 1068 records processed: 53.01 req/sec
Summary:
| count | avg_bytes_sent | 2xx | 3xx | 4xx | 5xx |
|---------+------------------+-------+-------+-------+-------|
| 1068 | 28026.763 | 1029 | 20 | 19 | 0 |
Detailed:
| request_path | count | avg_bytes_sent | 2xx | 3xx | 4xx | 5xx |
|------------------------------------------+---------+------------------+-------+-------+-------+-------|
| /xxxxxxxxxx | 199 | 55150.402 | 199 | 0 | 0 | 0 |
| /xxxxxxxx/xxxxx | 167 | 47591.826 | 167 | 0 | 0 | 0 |
| /xxxxxxxxxxxxx/xxxxxx | 25 | 7432.200 | 25 | 0 | 0 | 0 |
| /xxxx/xxxxx/x/xxxxxxxxxxxxx/xxxxxxx | 22 | 698.727 | 22 | 0 | 0 | 0 |
| /xxxx/xxxxx/x/xxxxxxxxxxxxx/xxxxxx | 19 | 7431.632 | 19 | 0 | 0 | 0 |
| /xxxxx/xxxxx/ | 18 | 7840.889 | 18 | 0 | 0 | 0 |
| /xxxxxxxx/xxxxxxxxxxxxxxxxx | 15 | 7356.000 | 15 | 0 | 0 | 0 |
| /xxxxxxxxxxx/xxxxxxxx | 15 | 9978.800 | 15 | 0 | 0 | 0 |
| /xxxxx/ | 14 | 0.000 | 0 | 14 | 0 | 0 |
| /xxxxxxxxxx/xxxxxxxx/xxxxx | 13 | 20530.154 | 13 | 0 | 0 | 0 |
สำหรับตัวเลือกการใช้งานเพิ่มเติม โปรดดูข้อความวิธีใช้ ngxtop โดยใช้คำสั่งต่อไปนี้
ngxtop -h
พื้นที่เก็บข้อมูล ngxtop Github: https://github.com/lebinh/ngxtop
แค่นั้นแหละ! ในบทความนี้ เราได้อธิบายวิธีการติดตั้งและใช้งาน ngxtop ในระบบ Linux แล้ว หากคุณมีคำถามหรือความคิดเห็นเพิ่มเติมที่จะเพิ่มลงในคู่มือนี้ โปรดใช้แบบฟอร์มความคิดเห็นด้านล่าง นอกจากนี้ หากคุณพบเครื่องมือที่คล้ายกัน โปรดแจ้งให้เราทราบ แล้วเราจะขอบคุณอย่างยิ่ง