ngxtop – مراقبة ملفات سجل إنجينكس في الوقت الحقيقي في لينكس

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. إذا كان لديك أي أسئلة، أو أفكار إضافية لإضافتها إلى هذا الدليل، استخدم نموذج التعليق أدناه. بالإضافة إلى ذلك، إذا كنت قد واجهت أي أدوات مماثلة، فاسمح لنا بمعرفتها وسنكون ممتنين.

Source:
https://www.tecmint.com/ngxtop-monitor-nginx-log-files-in-real-time-in-linux/