elk 监控nginx php日志

张映 发表于 2018-05-23

分类目录: elasticsearch, 服务器相关

标签:, ,

1,logstash服务端配置

input {
 beats {
 port => 5044
 }
}

output {
 elasticsearch {
 hosts => ["localhost:9200"]
 sniffing => true
 manage_template => false
 index => "%{[@metadata][beat]}-%{+YYYY.MM.dd}"
 document_type => "%{[@metadata][type]}"
 template_overwrite => true
 }
 stdout{codec => rubydebug}
}

在这里,我没有设置过滤器,如果不设置,会把指定日志文件的内容全部读取出来。如果要进行这种配置,监控的php,nginx都要是单独的日志,并且如果一台机器有多个网站,设置多个不同的php日志文件,这样通过file设置的类型,以及内容,来区分不同网站的日志。

2,filebeat客户端配置

$ cat filebeat.yml
filebeat:
  prospectors:
    -     //注意横线
            paths:
                - /var/log/nginx/*error.log
                - /var/log/nginx/*error.log.1
            document_type: nginxlive
            input_type: log
    -    //注意横线
            paths:
                - /var/log/php/*errors.log
                - /var/www/42cc.admin.leo1v1.com/storage/logs/*.log
                - /var/www/42admin.leo1v1.com/storage/logs/*.log
                - /var/www/42cr.admin.leo1v1.com/storage/logs/*.log
                - /var/www/42market.admin.leo1v1.com/storage/logs/*.log
            document_type: phplive
            input_type: log

  registry_file: /var/lib/filebeat/registry
output:
  logstash:
    hosts: ["192.168.0.123:5044"]
    bulk_max_size: 10240
shipper:
logging:
  files:
    rotateeverybytes: 10485760 # = 10MB

重启logstash和filebeat就可以了



转载请注明
作者:海底苍鹰
地址:http://blog.51yip.com/server/1922.html