Nginx web sunucusu, bir üretim ortamında çalışırken gerçek zamanlı izlemeye ihtiyaç duyar. Aslında Nagios, Zabbix, Munin gibi ağ izleme yazılımları Nginx izlemeyi destekliyor.
Yukarıdaki yazılım tarafından sağlanan kapsamlı raporlara veya uzun vadeli veri istatistiklerine ihtiyacınız yoksa, ancak Nginx sunucusunun isteklerini izlemenin hızlı ve kolay bir yoluna ihtiyacınız varsa, ngxtop adlı bir komut satırı aracı kullanmanızı öneririm.
Yakında ngxtop'un arayüzden ve isimden ünlü üst komutu ödünç aldığını göreceksiniz. ngxtop, Nginx veya diğer günlük dosyalarını analiz ederek ve top komutuna benzer bir arayüz kullanarak gerçek zamanlı olarak görüntülenir. Diğer üst düzey izleme araçlarını bildiğinizi söyleyebilirsiniz, ancak ngxtop şüphesiz basitlik açısından daha iyidir. Sadelik, yeri doldurulamaz demektir.
Bu kılavuzda, Nginx web sunucusunu gerçek zamanlı olarak izlemek için ngxtop'un nasıl kullanılacağını anlatacağım.
Ngxtop'u Linux'a yükleyin
İlk önce bağımlı kitaplık pip'i Linux sistemine kurun (Ek açıklama: ngxtop python ile yazılmıştır).
Ardından ngxtop'u kurmak için aşağıdaki komutu kullanın.
$ sudo pip kurulumu ngxtop
ngxtop kullanımı
Temel kullanım yöntemi aşağıdaki gibidir:
ngxtop
ngxtop (baskı | üst | ortalama | toplam) < var >
ngxtop bilgisi
İşte bazı genel seçenekler.
-l: Günlük dosyasının tam yolunu belirtin (Nginx veya Apache2)
-f: günlük biçimi
- Takip etmeme: Günlük dosyasına yeni eklenen günlüğü gerçek zamanlı olarak işlemek yerine o anda yazılan günlük dosyasını işleyin
-t: güncelleme sıklığı
-n: satır numarasını göster
-o: sıralama kuralları (varsayılan erişim sayısıdır)
-a, -a: Çıktıya ifadeler (genellikle toplam, ortalama, min, maks, vb. gibi toplu ifadeler) ekleyin.
-v: ayrıntılı bilgi verir
-i: Yalnızca kuralları karşılayan kayıtları işle
İşte bazı yerleşik değişkenler, anlamları kendinden açıklamalıdır.
Bodybytessend
http_referer
httpuseragent
remote_addr
uzak kullanıcı
istek
statü
time_local
Nginx'i izlemek için ngxtop kullanın
Varsayılan olarak ngxtop, yapılandırma dosyasından (/etc/nginx/nginx.conf) Nginx günlüklerinin adresini arayacaktır. Bu nedenle, Nginx'i izlemek için aşağıdaki komutu çalıştırmanız yeterlidir:
$ ngxtop
Bu, istek sayısına göre sıralanmış 10 Nginx hizmetini listeleyecektir.
En sık yapılan 20 isteği göster:
$ ngxtop -n 20
Nginx hakkında temel bilgileri alın:
$ ngxtop bilgisi
Görüntülenen değişkenleri özelleştirebilir, görüntülenmesi gereken değişkenleri listeleyebilirsiniz. Özelleştirme talebini görüntülemek için "yazdır" komutunu kullanın.
$ ngxtop yazdırma isteği http_user_agent remote_addr
En çok istenen istemci IP adresini görüntüleyin
$ ngxtop üst remote_addr
Durum kodu 404 olan talebi göster
$ ngxtop -i'status == 404 'yazdırma isteği durumu
Nginx'e ek olarak ngtop, Apache erişim dosyaları gibi diğer günlük dosyalarını da işleyebilir. Apache sunucusunu izlemek için aşağıdaki komutu kullanın:
$ tail -f /var/log/apache2/access.log | ngxtop -f ortak