Kumpul log nginx melalui filebeat dan pindahkannya ke logstash Selepas diproses dengan logstash, ia ditulis ke elasticsearch. Filebeat hanya bertanggungjawab untuk kerja pengumpulan, manakala logstash melengkapkan pemformatan log, penggantian data, pemisahan dan penciptaan indeks selepas menulis log ke elasticsearch.
1. Konfigurasikan format log nginx
log_format main '$remote_addr $http_x_forwarded_for [$time_local] $server_name $request ' '$status $body_bytes_sent $http_referer ' '"$http_user_agent" ' '"$connection" ' '"$http_cookie" ' '$request_time ' '$upstream_response_time';
2 Pasang dan konfigurasikan filebeat, dayakan modul nginx
rreeeDayakan nginx. modul
tar -zxvf filebeat-6.2.4-linux-x86_64.tar.gz -c /usr/local cd /usr/local;ln -s filebeat-6.2.4-linux-x86_64 filebeat cd /usr/local/filebeat
Lihat modul
./filebeat modules enable nginx
Buat fail konfigurasi
./filebeat modules list
Mulakan filebeat
vim /usr/local/filebeat/blog_module_logstash.yml filebeat.modules: - module: nginx access: enabled: true var.paths: ["/home/weblog/blog.cnfol.com_access.log"] #error: # enabled: true # var.paths: ["/home/weblogerr/blog.cnfol.com_error.log"] output.logstash: hosts: ["192.168.15.91:5044"]
3 Direktori templat terbina dalam Logstash
./filebeat -c blog_module_logstash.yml -e
Edit pola grok dan tambah corak biasa yang menyokong berbilang IP
tar -zxvf logstash-6.2.4.tar.gz /usr/local cd /usr/local;ln -s logstash-6.2.4 logstash 创建一个nginx日志的pipline文件 cd /usr/local/logstash
grok rasmi
#
Buat fail Konfigurasi logstash pipline
vendor/bundle/jruby/2.3.0/gems/logstash-patterns-core-4.1.2/patterns
Mulakan logstash
forword (?:%{ipv4}[,]?[ ]?)+|%{word}
Atas ialah kandungan terperinci Bagaimana untuk mengimport log nginx ke dalam elasticsearch. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!