Konfigurasi Logging Nginx di CentOS VPS

By | August 15, 2015

Logging informasi di server akan menolong Sahabat memecahkan masalah dan menilai situasi yang muncul. Di artikel ini, kita akan membahas mengenai konfigurasi logging Nginx di VPS dengan operasi program Linux CentOS, misalnya cara disable error_log dan access_log. Cara ini pun dapat kamu terapkan kalau kamu menggunakan Nginx di distribusi Linux yang lain dengan cara yang sama.

Sebelum kita mulai hendaknya kita tahu dimana file konfigurasi nginx. File konfigurasi Nginx dapat kamu jumpai di:

/etc/nginx/nginx.conf

atau di

/etc/nginx/conf.d/default.conf

atau kalau kamu sebelumnya mengerjakan pengaturan nginx server block, file konfig berada di tiap file *.conf di:

/etc/nginx/default.d/*.conf

atau kalau kamu sebelumnya mengerjakan pengaturan nginx server block, file konfig berada di tiap file *.conf di:

/etc/nginx/sites-available/*.conf

Sahabat dapat membuka file tersebut dengan teks editor nano dan melihat baris-baris bagi konfigurasi logging Nginx server.

nano /etc/nginx/nginx.conf

Error_log Directive

Nginx menggunakan beberapa arahan yang berbeda bagi mengatur program logging, yang termasuk pada modul inti disebut error_log.

Sintak Error_log

Di Apache ini dikenal dengan ErrorLog directive, “error_log” direktif digunakan bagi menghandle pesan kesalahan umum di server.  Contoh sintak error log direktif selaku berikut:

error_log /var/log/nginx/error.log crit;

error_log ialah nama file yang akan digunakan bagi merekam aktivitas logging di server.

crit ialah level logging yang ingin direkam dala file error.log.

Level Logging

Di error_log direktif dapat dikonfigurasi sesuai dengan keperluan dengan tingkat/level log seperti berikut ini:

emerg : Situasi darurat di mana program ini pada keadaan tak dapat digunakan.

alert : Situasi berat di mana tindakan yang diperlukan segera.

crit : Masalah urgen yang perlu diatasi.

error : Sebuah kesalahan telah terjadi, sesuatu tak berhasil/gagal diproses.

warn : Sesuatu yang luar lazimnya terjadi, tapi tak perlu perhatian yang betul-betul serius.

notice :Sesuatu yang normal, namun perlu di catat telah terjadi.

Informasi : Sebuah pesan informasi yang mungkin bagus bagi tahu.

debug : Informasi debugging yang dapat bermanfaat bagi menentukan di mana masalah terjadi.

List level diatas telah diurutkan sesuai level dengan prioritas tertinggi.

Dengan mengkonfigurasikan error_log dan memberi level spesifik, karenanya informasi yang direkam hanya yang sesuai dengan level itu saja, misalnya:

error_log /var/log/nginx/error.log crit;

Karenanya yang terekam pada file error.log hanya informasi critical atau masalah kritis di server dan mesti segera diatasi. Kebalikannya kalau kamu tak mengkonfigurasikan error_log dengan level spesifik karenanya seluruh informasi pesan general error di server akan direkam.

Cara Disable error_log Nginx

Ukuran file error_log semakin lama akan akan semakin besar dan ini tak bagus karena akan memberi beban disk space. Ini ialah solusi cara bagi disable error_log Nginx secara permanen yaitu dengan konfig seperti berikut:

error_log  /dev/null;

Ini tak disarankan, sebaiknya jangan didisable tapi diberi level seperti contoh diatas, agar kita tahu kalau terjadi kesalahan-kesalahan di server kita. Namun Sahabat dapat menghapus file error.log secara berkala atau mendownloadnya terlebih dahulu bagi sekedar arsip sebelum dihapus

Sementara error_log ialah modul inti, berikutnya ialah HttpLogModule Logging Directive.

HttpLogModule Logging Directive

access_log direktif ialah bagian dari HttpLogModule, seluruh informasi aktivitas  user diwebsite akan terekam disini, misalnya: User-A melihat halaman kontak kamu dengan url: http://idnetter.com/kontak aktivitas ini akan di catat oleh access_log, bersamaan dengan itu, kalau ada link di halaman kontak tersebut tak valid karenanya pun akan terekam di access_log, misalnya: link CSS, image dan JS.

Masalahnya kalau saja ada 1000 user sedang mengunjungi halaman kontak tersebut karenanya tak diragukan file size access_log akan cepat membengkak. Solusinya ialah dengan mengerjakan rotasi file log – Log Rotation bagus secara manual maupun otomatis yang akan kita bahas berikutnya.

Banyak pengembang blog tak membutuhkan access_log, bagi itu kamu dapat seketika mendisable access_log dengan konfigurasi seperti dibawah ini.

Cara Disable access_log Nginx

Apabila kamu tak ingin system mencatat access log, Berikut cara disable access_log:

access_log off;

Atau dengan cara yang sama seperti modul inti di error_log, access_log output akan dikirim ke /dev/null, dengan cara ini karenanya access log akan didisable permanen.

access_log /dev/null;

Selamat mencoba.

 

Referensi: Digital Ocean

 


Sumber https://idnetter.com