GNU/Linux >> Belajar Linux >  >> Ubuntu

Pantau File Log Nginx Menggunakan ngxtop di Ubuntu 20.04

ngxtop adalah alat pemantauan gratis, sumber terbuka, fleksibel, dan waktu nyata untuk server web Nginx. Itu dapat mengurai log akses Nginx dan mencetak informasi tentang jumlah permintaan, URI yang diminta, jumlah permintaan berdasarkan kode status, dan banyak lagi. Ini adalah alat yang sederhana dan mudah digunakan untuk memantau permintaan yang datang ke server web Nginx.

Pada artikel ini, saya akan menunjukkan cara menginstal dan menggunakan alat pemantauan ngxtop di Ubuntu 20.04.

Prasyarat

  • Server yang menjalankan Ubuntu 20.04.
  • Kata sandi root dikonfigurasi di server Anda.

Instal ngxtop

ngxtop adalah alat berbasis python sehingga Anda perlu menginstal paket Python dan PIP ke sistem Anda. Anda dapat menginstalnya dengan Nginx menggunakan perintah berikut:

apt-get install nginx python3 python3-pip -y

Setelah terinstal, Anda dapat menginstal paket ngxtop menggunakan PIP seperti yang ditunjukkan di bawah ini:

pip3 install ngxtop

Setelah ngxtop diinstal, Anda dapat memverifikasi versi ngxtop menggunakan perintah berikut:

ngxtop --version

Anda akan mendapatkan output berikut:

xstat 0.1

Cara Menggunakan ngxtop

Di bagian ini, kami akan menunjukkan cara menggunakan ngxtop untuk memantau server web Nginx.

Jalankan perintah ngxtop tanpa argumen akan menampilkan ringkasan jumlah permintaan, URI yang diminta, jumlah permintaan berdasarkan kode status.

ngxtop

Anda akan melihat layar berikut:

Anda dapat menggunakan opsi -l untuk menentukan log akses yang ingin Anda analisis.

ngxtop -l /var/log/nginx/access.log

Anda akan melihat layar berikut:

Untuk membuat daftar IP teratas yang mengakses server Nginx Anda, jalankan perintah berikut:

ngxtop --group-by remote_addr -l /var/log/nginx/access.log

Anda akan melihat layar berikut:

Anda dapat mencetak 10 permintaan dengan total byte tertinggi yang dikirim menggunakan perintah berikut:

ngxtop --order-by 'avg(bytes_sent) * count' -l /var/log/nginx/access.log

Anda akan melihat layar berikut:

ngxtop juga memungkinkan Anda untuk mengurai file log Apache dari server jauh. Anda dapat melakukannya dengan perintah berikut:

ssh [email protected] tail -f /var/log/apache2/access.log | ngxtop -f common

Untuk mendapatkan daftar semua opsi yang tersedia dengan ngxtop, jalankan perintah berikut:

ngxtop --help

Anda akan melihat output berikut:

ngxtop - ad-hoc query for nginx access log.

Usage:
    ngxtop [options]
    ngxtop [options] (print|top|avg|sum)  ...
    ngxtop info
    ngxtop [options] query  ...

Options:
    -l , --access-log   access log file to parse.
    -f , --log-format   log format as specify in log_format directive. [default: combined]
    --no-follow  ngxtop default behavior is to ignore current lines in log
                     and only watch for new lines as they are written to the access log.
                     Use this flag to tell ngxtop to process the current content of the access log instead.
    -t , --interval   report interval when running in follow mode [default: 2.0]

    -g , --group-by   group by variable [default: request_path]
    -w , --having   having clause [default: 1]
    -o , --order-by   order of output for default query [default: count]
    -n , --limit   limit the number of records included in report for top command [default: 10]
    -a  ..., --a  ...  add exp (must be aggregation exp: sum, avg, min, max, etc.) into output

    -v, --verbose  more verbose output
    -d, --debug  print every line and parsed record
    -h, --help  print this help message.
    --version  print version information.

    Advanced / experimental options:
    -c , --config   allow ngxtop to parse nginx config file for log format and location.
    -i , --filter   filter in, records satisfied given expression are processed.
    -p , --pre-filter  in-filter expression to check in pre-parsing phase.

Examples:
    All examples read nginx config file for access log location and format.
    If you want to specify the access log file and / or log format, use the -f and -a options.

    "top" like view of nginx requests
    $ ngxtop

    Top 10 requested path with status 404:
    $ ngxtop top request_path --filter 'status == 404'

    Top 10 requests with highest total bytes sent
    $ ngxtop --order-by 'avg(bytes_sent) * count'

    Top 10 remote address, e.g., who's hitting you the most
    $ ngxtop --group-by remote_addr

    Print requests with 4xx or 5xx status, together with status and http referer
    $ ngxtop -i 'status >= 400' print request status http_referer

    Average body bytes sent of 200 responses of requested path begin with 'foo':
    $ ngxtop avg bytes_sent --filter 'status == 200 and request_path.startswith("foo")'

    Analyze apache access log from remote machine using 'common' log format
    $ ssh remote tail -f /var/log/apache2/access.log | ngxtop -f common

Kesimpulan

Dalam panduan di atas, Anda mempelajari cara menginstal dan menggunakan ngxtop di Ubuntu 20.04. Saya harap Anda sekarang dapat memantau log Nginx Anda dengan mudah dari antarmuka baris perintah.


Ubuntu
  1. Cara Menginstal WordPress Menggunakan Nginx di Ubuntu 18.04

  2. Instal LibreNMS di Ubuntu 20.04 LTS menggunakan Nginx - Panduan langkah demi langkah?

  3. Hapus file log menggunakan tugas cron

  1. Cara Memantau Nginx menggunakan Netdata di Ubuntu 16.04

  2. Cara Memantau dan Mendeteksi File yang Dimodifikasi menggunakan Tripwire IDS di Ubuntu 16.04

  3. Cara memonitor file log server dengan Logwatch di Debian dan Ubuntu

  1. Cara Menyinkronkan File/Folder Menggunakan FreeFileSync di Ubuntu

  2. Pantau server web/proxy NGINX Anda menggunakan Amplify

  3. Cara Menginstal Nginx di Ubuntu 20.04 LTS Menggunakan Kode Sumber