4 Cara Melihat dan Mengatur Access Log Web Server di aaPanel
Halo DomaiNesians! Buat kamu yang sedang mengelola server sendiri, access log web server adalah salah satu sumber informasi paling penting. Access log mencatat setiap permintaan (request) yang masuk ke server kamu, mulai dari alamat IP, metode HTTP, status code response, hingga ukuran data yang dikirimkan.
Jika kamu menggunakan aaPanel, kamu bisa melihat, mengatur, bahkan menganalisis access log tanpa perlu mengetik banyak perintah di SSH. Dengan memahami access log, kamu bisa memantau trafik website, melacak sumber serangan (misalnya brute force, DDoS), mengevaluasi performa server, sampai membantu debugging jika ada error di aplikasi.
Apa Itu Access Log Web Server?
Access log web server adalah catatan setiap request yang diterima oleh server. Hampir semua web server seperti, Nginx, Apache, OpenLiteSpeed secara default menghasilkan file log.
Contoh entri access log Nginx:
|
1 |
192.168.1.10 - - [27/Sep/2025:12:30:00 +0700] "GET /index.php HTTP/1.1" 200 512 "-" "Mozilla/5.0" |
Keterangan log:
- IP Client: 192.168.1.10
- Waktu request: [27/Sep/2025:12:30:00 +0700]
- Metode + URL: “GET /index.php HTTP/1.1”
- Status kode: 200
- Bytes terkirim: 512
- User Agent: “Mozilla/5.0”
Dengan log ini, kamu bisa tahu siapa saja yang mengakses website, apa yang mereka akses, dan bagaimana respon server.
Access Log di aaPanel
aaPanel mendukung beberapa web server seperti Nginx, Apache, dan OpenLiteSpeed. Setiap web server punya folder log sendiri, biasanya di /www/wwwlogs untuk domain yang dikelola aaPanel.
a. Lokasi Default Access Log
- Nginx: /www/wwwlogs/namadomain.com.log
- Apache: /www/wwwlogs/namadomain.com.log
- OpenLiteSpeed: /www/server/panel/logs atau sesuai konfigurasi virtual host
b. Mengakses Melalui Menu Website
1. Login ke aaPanel.
2. Pilih menu Website kemudian klik nama domain kamu.
3. Di tab Response Log, pilih Access Log melihat catatan request terbaru.
c. Mengakses Melalui Menu Logs
1. Login ke aaPanel kemudian pilih menu Logs di sidebar.
2. Pilih tab Website Logs kemudian klik nama domain yang ingin kamu lihat lognya.
3. Pilih Access Log melihat catatan access log terbaru pada domain yang kamu pilih.
d. Mengakses Melalui SSH
Berikut perintah lengkap yang bisa kamu gunakan untuk mengakses access log melalui SSH atau menu Terminal di aaPanel:
|
1 2 3 4 5 |
cd /www/wwwlogs tail -f namadomain.com.log Atau untuk filter: grep "POST" namadomain.com.log grep "404" namadomain.com.log |
Cara Mengatur Access Log
Access log berfungsi mencatat setiap request yang masuk ke server, termasuk IP pengunjung, halaman yang diakses, status response, hingga user agent. Pengaturan yang tepat membantu kamu melakukan troubleshooting, analisis trafik, dan monitoring performa tanpa membuat disk cepat penuh.
a. Mengatur Format Log
- Nginx
Untuk mengatur format pencatatan log di Nginx, kamu perlu menambahkan atau mengaktifkan konfigurasi log_format di blok http pada konfigurasi global Nginx. Berikut caranya:
1. Buka menu App Store > Installed > Nginx > Config File atau lewat direktori /www/server/nginx/conf/nginx.conf di menu Files
2. Lalu tambahkan format log seperti berikut pada blok http {}:
|
1 2 3 |
log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; |
Format ini akan menghasilkan log yang berisi:
- alamat IP pengunjung
- waktu request
- request yang dikirim
- status HTTP (200, 404, 500, dan lain-lain)
- ukuran response
- referer
- user agent browser
- informasi proxy atau CDN (jika ada)
3. Setelah format log tersedia, kamu bisa mengaktifkan pencatatan log untuk masing-masing domain di file konfigurasi:
|
1 |
/www/server/panel/vhost/nginx/namadomain.com.conf |
Atau melalui menu Config yang ada di setiap domain di fitur Website.
4. Tambahkan baris berikut di dalam blok server {}:
|
1 |
access_log /www/wwwlogs/namadomain.com.log main; |
5. Dengan konfigurasi ini, setiap domain memiliki file log terpisah sehingga lebih mudah dianalisis dan dikelola. Kamu juga bisa menambahkan field lain seperti $request_time atau $upstream_response_time untuk analisis performa.
- Apache
Edit file konfigurasi di /www/server/panel/vhost/apache/namadomain.com.conf:
|
1 |
CustomLog /www/wwwlogs/namadomain.com.log combined |
- OpenLiteSpeed
Edit file konfigurasi di panel OLS > Virtual Hosts > Log.
b. Mengatur Rotasi Log
Log yang terus bertambah tanpa rotasi dapat membuat file .log membengkak hingga berukuran gigabyte, dan pada akhirnya memenuhi storage server. Untuk mencegahnya, kamu bisa menggunakan logrotate, yaitu sistem bawaan Linux yang otomatis memotong, mengompresi, dan menghapus log lama.
1. Edit konfigurasi logrotate untuk Nginx di direktori
|
1 |
/etc/logrotate.d/nginx |
2. Lalu tambahkan konfigurasi berikut:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
/www/wwwlogs/*.log { daily missingok rotate 14 compress delaycompress notifempty create 640 root adm sharedscripts postrotate /usr/sbin/nginx -s reload > /dev/null 2>/dev/null || true endscript } |
Keterangan:
- daily = rotasi log dilakukan setiap hari
- rotate 14 = menyimpan 14 arsip log lama
- compress = file lama dikompresi menjadi .gz agar lebih hemat storage
- notifempty = tidak melakukan rotasi jika log kosong
- delaycompress = kompresi dilakukan sehari setelah rotasi untuk menghindari masalah saat log masih dibaca Nginx
- create = membuat file log baru dengan permission yang sesuai
- postrotate = me-reload Nginx setelah rotasi agar file log baru dipakai
c. Mengatur Permission & Keamanan
Pastikan hanya user root atau user tertentu yang punya akses ke log karena log berisi informasi sensitif (IP, URL internal).
|
1 2 |
chmod 640 /www/wwwlogs/namadomain.com.log chown root:adm /www/wwwlogs/namadomain.com.log |
Tips Menganalisis Access Log
Access log sangat bermanfaat untuk analisis trafik dan keamanan. Berikut beberapa tips cara menganalisis access log:
1. Identifikasi Trafik Tidak Wajar
Gunakan awk atau grep untuk menghitung request dari IP tertentu:
|
1 |
awk '{print $1}' namadomain.com.log | sort | uniq -c | sort -nr | head |
Kamu akan melihat IP yang paling sering mengakses. Cara ini membantu untuk mendeteksi brute force atau scraping.
2. Pantau Status Kode
Cek berapa banyak kode 404 atau 500 dengan menjalankan perintah berikut:
|
1 |
awk '{print $9}' namadomain.com.log | sort | uniq -c | sort -nr |
Kode status HTTP di kolom ke-9 (untuk format combined). Jika banyak kode 500 yang tampil, berarti sedang ada masalah di server kamu.
3. Analisis User Agent
Lihat user agent untuk mendeteksi bot:
|
1 |
awk -F\" '{print $6}' namadomain.com.log | sort | uniq -c | sort -nr | head |
4. Tools Analisis
Gunakan tools analisis seperti GoAccess atau AWStats untuk laporan grafis:
|
1 |
goaccess /www/wwwlogs/namadomain.com.log -o report.html --log-format=COMBINED |
Kamu akan mendapatkan laporan interaktif berisi statistik trafik, negara asal pengunjung, waktu akses, dan sebagainya.
Kesimpulan
Mengelola access log web server di aaPanel adalah langkah penting untuk memantau trafik, mendeteksi masalah, dan mengoptimasi performa situs.
Dengan memanfaatkan fitur bawaan aaPanel dan sedikit sentuhan via SSH, kamu bisa melihat log secara real-time, mengatur format dan lokasi log sesuai kebutuhan, mengaktifkan rotasi otomatis agar log tidak penuh, menganalisis trafik untuk deteksi serangan atau bottleneck, serta mMengoptimalkan resource server berdasarkan data log.
Jika kamu ingin server yang stabil, cepat, dan aman untuk menjalankan semua ini, Cloud VPS DomaiNesia adalah pilihan tepat. Dengan Cloud VPS DomaiNesia, kamu mendapatkan performa tinggi, akses root penuh, serta dukungan teknis yang siap membantu sehingga kamu bisa fokus mengelola log dan meningkatkan kualitas website kamu.












