Log akses NGINX sangat penting untuk operasional situs web. Dalam mode konfigurasi NGINX, Logtail mengurai entri log berdasarkan direktif log_format Anda dan mengumpulkan log terstruktur untuk analisis multidimensi di Konsol Simple Log Service.
Ikhtisar solusi
Dalam mode konfigurasi NGINX, Logtail menstrukturkan konten log berdasarkan direktif log_format. Sebelum mengumpulkan log, konfigurasikan direktif log_format dan access_log di /etc/nginx/nginx.conf. Direktif log_format menentukan struktur log, sedangkan access_log menentukan path file log.
-
Format log dan path penyimpanan
Contoh berikut menggunakan nilai log_format dan access_log bawaan:
log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$request_time $request_length ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent"'; access_log /var/log/nginx/access.log main;Bidang log:
Field
Description
remote_addr
Alamat IP klien.
remote_user
Username klien.
time_local
Waktu lokal server, diapit tanda kurung siku [].
request
URI permintaan dan protokol HTTP.
request_time
Waktu pemrosesan permintaan, dalam satuan detik.
request_length
Panjang total permintaan, termasuk baris permintaan, header, dan body.
status
Kode status respons HTTP.
body_bytes_sent
Ukuran body respons dalam byte, tidak termasuk header.
http_referer
URL perujuk (referrer).
http_user_agent
String user-agent browser klien.
-
Log mentah
Contoh entri log yang dihasilkan menggunakan log_format di atas:
192.168.1.1 - - [11/Dec/2024:11:21:03 +0800] "GET /nginx-logo.png HTTP/1.1" 0.000 514 200 368 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36" -
Log yang dikumpulkan dalam Logstore: Lihat log yang telah dikumpulkan di halaman kueri dan analisis. Di tampilan log Raw, setiap entri diurai menjadi pasangan kunci-nilai dan ditampilkan bersama metadata seperti nama instans, path log, dan timestamp Unix.
Prasyarat
-
Kelompok mesin yang mencakup server Anda telah dibuat. Buat kelompok mesin berbasis pengenal kustom | Buat kelompok mesin berbasis alamat IP.
-
Server Anda dapat terhubung ke Port 80 dan 443 server remote sehingga Logtail dapat mengirim log ke Simple Log Service.
-
Server target terus-menerus menghasilkan log baru. Logtail hanya mengumpulkan Data inkremental dan melewatkan file yang tidak diperbarui setelah konfigurasi diterapkan. Proses koleksi.
Prosedur
Masuk ke Konsol Simple Log Service.
-
Di bagian Projects, klik proyek yang Anda inginkan.
-
Di tab , klik logstore yang Anda inginkan.
-
Di panel navigasi sebelah kiri, klik Logtail Configurations, lalu klik Add Logtail Configuration.
-
Di halaman Quick Data Import, pilih .
-
Pada langkah Machine Group Settings, atur Use Case ke Host Scenario dan Environment ke ECS. Pindahkan kelompok mesin Anda (misalnya, group-ip) dari Source Machine Group ke Applied Machine Group, lalu klik Next.
-
Pada langkah Konfigurasi Logtail, konfigurasikan parameter berikut:
-
Untuk Configuration Name, masukkan nama konfigurasi, misalnya
nginx-logs. -
Untuk File Path, masukkan path file log. Misalnya,
/var/log/nginx/**/access*mencocokkan semua file yang dimulai denganaccessdi direktori/var/log/nginxdan subdirektorinya. -
Untuk Processor Configurations, klik Data Parsing (NGINX Mode). Di tab Processor, masukkan konfigurasi log_format dari file konfigurasi NGINX Anda. SLS secara otomatis mengekstraksi bidang-bidang tersebut. Contoh:
log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$request_time $request_length ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent"';Untuk Source Field, masukkan
content. SLS secara otomatis menghasilkan ekspresi reguler dari konfigurasi tersebut dan mengekstraksi bidang-bidangnya. -
Pertahankan nilai default untuk parameter lainnya. Kumpulkan log teks dari server.
-
-
Pada langkah Query, Analysis and Visualization, klik Refresh untuk melihat pratinjau data yang dikumpulkan.
-
Klik Next untuk menyelesaikan konfigurasi. Klik Query Log untuk membuka halaman kueri Logstore. Pembuatan indeks memerlukan waktu sekitar satu menit. Anda kemudian dapat melihat log di tab Raw Log. Panduan cepat untuk kueri dan analisis.
Referensi
-
Atasi masalah koleksi Logtail pada Server Linux menggunakan tool diagnostik otomatis. Bagaimana cara menggunakan tool diagnostik otomatis Logtail?
-
Jika halaman pratinjau atau kueri tidak menampilkan data, lakukan troubleshooting menggunakan Apa yang harus saya lakukan jika terjadi error saat menggunakan Logtail untuk mengumpulkan log?
-
Error koleksi seperti kegagalan parsing regex, path file tidak valid, atau shard overload dibahas dalam Bagaimana cara melihat error koleksi Logtail? dan Bagaimana cara mengatasi error umum yang mungkin terjadi saat Simple Log Service mengumpulkan log?
-
Satu file hanya dapat memiliki satu konfigurasi Logtail secara default. Namun, beberapa konfigurasi juga didukung. Bagaimana cara mengumpulkan beberapa salinan log dalam satu file?
-
Server intranet perusahaan juga dapat mengirim log ke Simple Log Service. Kumpulkan log dari server di intranet perusahaan.
-
Untuk membedakan log dari server dengan path atau nama file yang identik, gunakan Machine Group Topic. Untuk membedakan log berdasarkan pengguna atau instans, gunakan File Path Extraction.
-
Analisis akses website, diagnostik, dan konfigurasi alert dibahas dalam Kumpulkan dan analisis log akses NGINX.