ELK»·¾³´î½¨ ÏÂÔØ±¾ÎÄ

2.9. logstashÀ©Õ¹ÅäÖÃ

Ê×ÏȵÃÃ÷È·ÒÔϼ¸µã

1¡¢logstash°²×°ÔÚ/opt/logstash

2¡¢logstashÅäÖÃĿ¼Ϊ/etc/logstash/conf.d

3¡¢È·¶¨´æÔÚÃûΪ02-beats-input.confÅäÖÃÎļþ£¬¸ÃÎļþÔÚÉÏÎÄ֮ǰ´´½¨ÅäÖùý

4¡¢È·¶¨´æÔÚÃûΪ30-elasticsearch-output.confÅäÖÃÎļþ£¬¸ÃÎļþÔÚÉÏÎÄ֮ǰ´´½¨ÅäÖùý

´´½¨patterns

$ sudo mkdir -p /opt/logstash/patterns

$ sudo chown logstash: /opt/logstash/patterns

ÐÞ¸Ä/etc/filebeat/filebeat.ymlÎļþ filebeat:

prospectors: -

document_type: syslog paths:

- /var/log/secure - /var/log/messages -

document_type: sys-log input_type: log paths:

- /var/log/*.log

registry_file: /var/lib/filebeat/registry logging: files:

rotateeverybytes: 10485760 output: logstash:

bulk_max_size: 1024 hosts:

- \ tls:

certificate_authorities:

- /etc/pki/tls/certs/logstash-forwarder.crt shipper: ~

2.9.1. NginxÈÕÖ¾ÅäÖÃ

2.9.1.1. Logstash Patterns: Nginx

$ sudo mkdir -p /opt/logstash/patterns

sudo vim /opt/logstash/patterns/nginx NGUSERNAME [a-zA-Z\\.\\@\\-\\+_%]+ NGUSER %{NGUSERNAME} NGINXACCESS %{IPORHOST:clientip} %{NGUSER:ident} %{NGUSER:auth} \\[%{HTTPDATE:timestamp}\\] \%{URIPATHPARAM:request} HTTP/%{NUMBER:httpversion}\%{NUMBER:response} (?:%{NUMBER:bytes}|-) (?:\$ sudo chown logstash: /opt/logstash/patterns/nginx

2.9.1.2. Logstash Filter: Nginx

$ sudo vim /etc/logstash/conf.d/11-nginx-filter.conf filter {

if [type] == \ grok {

match => { \ } } }

2.9.1.3. ÖØÆôlogstash

$ sudo service logstash restart

2.9.1.4. Filebeat Prospector: Nginx

ÐÞ¸Ä/etc/filebeat/filebeat.ymlÅäÖà $ sudo vim /etc/filebeat/filebeat.yml filebeat:

prospectors: -

document_type: nginx-access paths:

- /var/log/nginx/access.log registry_file: /var/lib/filebeat/registry logging: files:

rotateeverybytes: 10485760 output: logstash:

bulk_max_size: 1024 hosts:

- \ tls:

certificate_authorities:

- /etc/pki/tls/certs/logstash-forwarder.crt shipper: ~

2.9.1.5. ÖØÆôfilebeat

$ sudo service filebeat restart

2.9.1.6. kibanaËÑË÷Ч¹ûͼ

2.9.2. Apache HTTP Web ServerÈÕÖ¾ÅäÖÃ

2.9.2.1. Logstash Filter: Apache

$ sudo vi /etc/logstash/conf.d/12-apache.conf filter {

if [type] == \ grok {

match => { \ } } }

2.9.2.2. ÖØÆôlogstash

$ sudo service logstash restart

2.9.2.3. Filebeat Prospector: Apache

$ sudo vim /etc/filebeat/filebeat.yml filebeat:

prospectors: -

document_type: apache-access input_type: log paths:

- /var/log/apache2/access.log registry_file: /var/lib/filebeat/registry