Bu yazıda Ubuntu 20'de Nginx Log'larının nasıl yapılandırılacağı ve görüntüleneceği üzerinde duracağız.Uygulama faaliyetlerini izlemek için 04 sistemi.
Nginx'te kaydedilen olayların biri erişim günlüğü, diğeri ise hata günlüğü olduğu iki tür günlük vardır. Bu günlükleri Nginx çekirdek yapılandırma dosyasında zaten etkinleştirdiyseniz, tüm Linux dağıtımlarında /var/log/nginx içinde her iki günlük türünü de bulabilirsiniz.
Nginx Erişim günlüğü
Site ziyaretçileri ile ilgili tüm aktiviteler erişim loglarına kaydedilir. Bu tür bir günlükte, en son erişilen dosyaları, Nginx'in bir istemci isteğine nasıl yanıt verdiğini, istemci IP adreslerini, istemcinin hangi tarayıcıyı kullandığını ve daha fazlasını bulabilirsiniz. Erişim günlüğü bilgilerini kullanarak, zaman içinde site kullanımını bulmak için trafiği izleyebilirsiniz. Erişim günlüklerini düzgün bir şekilde izlerseniz, dağıtılan uygulamadaki kusurları kontrol etmek için bir kullanıcı tarafından gönderilen bazı olağandışı istekleri kolayca bulabilirsiniz.
Nginx Erişim günlüğünü etkinleştirin
Sunucu bölümünde veya HTTP'de access_log yönergesi ile etkinleştirebileceğiniz erişim günlüğü.
access_log log_file log_format;İlk bağımsız değişken olan 'log_file' zorunludur, ikinci bağımsız değişken ise isteğe bağlıdır, 'log_format'. Günlük biçiminden bahsetmezseniz, günlükler varsayılan birleşik biçimde yazılacaktır.
Erişim günlüğü varsayılan olarak Nginx yapılandırma dosyasında tanımlanır. Bu nedenle, tüm sanal ana bilgisayarın erişim günlükleri aynı yapılandırma dosyasında saklanacaktır.
http…
access_log /var/log/nginx/access.günlük;
…
Yeni bir ayrı dosyaya kaydederek tüm sanal ana bilgisayarların erişim günlüklerini ayırmanız önerilir.
http…
…
access_log /var/log/nginx/access.günlük;
sunucu
80 dinle;
Sunucu_adı örneği.com
access_log /var/log/nginx/örnek.Giriş.günlük;
…
…
Yeni NGINX yapılandırmalarını yeniden yükleyin. Şimdi, örnek için erişim günlüklerini ziyaret edebilirsiniz./var/log/nginx/example dosyasındaki com alan adı.Giriş.aşağıdaki komutu kullanarak oturum açın:
$ sudo tail -f /var/log/nginx/örnek.Giriş.günlükErişim günlüğündeki biçimi özelleştirin
Özel bir erişim günlüğü formatı tanımlamak için bir örnek açıklayalım. Varsayılan olarak erişim günlüğü, birleştirilmiş günlük biçiminde kaydedilir. Bu nedenle, önceden tanımlanmış formatı sıkıştırma oranı için gzip yanıtı değeriyle genişletebilirsiniz.
httplog_format özel '$remote_addr - $remote_user [$time_local]'
'"$istek" $durum $body_bytes_sent '
'"$http_referer" "$http_user_agent" "$gzip_ratio"';
sunucu
gzip açık;
…
access_log /var/log/nginx/örnek.Giriş.özel günlüğe kaydet;
…
Nginx yapılandırmasında tüm değişiklikleri yaptıktan sonra, Nginx'i yeniden yükleyin ve ardından olay günlüğünün sonunda gzip oranını görüntülemek için tail komutunu çalıştırın.
$ sudo tail -f /var/log/nginx/örnek.Giriş.günlükNGINX hata günlüğü
NGINX aniden durursa veya düzgün çalışmıyorsa, tüm olayları hata günlüğüne kaydeder. Bu nedenle, hata günlüklerini kullanarak daha fazla ayrıntı bulabilirsiniz. Ayrıca uyarıları kaydeder, ancak meydana gelen bir sorunu tanımlayamaz.
Hata günlüğünü etkinleştir
error_log yönergesinin aşağıdaki sözdizimi:
error_log log_file log_level;Yukarıdaki sözdiziminde, ilk argüman günlük dosyası yolunu temsil eder ve ikinci argüman günlük olayının güvenlik seviyesini tanımlar.
Sunucu bağlamında error_log yönergesinde geçersiz kılmanın gerçekleştirildiği bir örnekten aşağıda bahsetmiştik.
http…
…
error_log /var/log/nginx/error_log;
sunucu
80 dinle;
sunucu_adı örnek1.com;
error_log /var/log/nginx/example1.error_log uyar;
…
sunucu
80 dinle;
sunucu_adı örnek2.com;
error_log /var/log/nginx/example2.error_log hata ayıklama;
…
l
Hata günlüğünü devre dışı bırakmanız gerektiğinde, günlük dosyasının adını /dev/null öğesine atayın.
error_log /dev/null;
Nginx Güvenlik Seviyesi Hata günlüğü
Hata günlüğünde kullanabileceğiniz aşağıdaki güvenlik düzeyi:
- ortaya çıkmak: Sisteminiz kararsız olduğunda, acil durum mesajları için kullanılır
- uyarmak: Ciddi sorunlara ilişkin uyarı mesajları oluşturun.
- eleştiri: Hemen ilgilenmek için Kritik sorunlar için kullanılır.
- hata: Bir sayfa işlenirken bir hata oluşabilir.
- uyarmak: Uyarı mesajı için kullanılır
- farkına varmak: Ayrıca görmezden gelebileceğiniz bildirim günlüğü.
- bilgi: Bilgi, mesajlar için
- hata ayıklama: Hata ayıklama bilgileri için kullanılan hata konumunu gösterir.
Sonuç
Nginx erişim ve hata günlükleri, belirli etkinlikleri kaydetmek için kullanışlıdır. Linux sistemimizde bu tür Nginx günlüklerini nasıl etkinleştirebileceğimizi ve görüntüleyebileceğimizi öğrendik. Hepsi Nginx günlükleriyle ilgili.