logstash nginx
时间: 2023-11-03 22:57:15 浏览: 99
Filebeat 实时收集 Nginx 日志1
logstash是一个开源的数据收集引擎,可以用于收集、处理和转发各种类型的日志数据。在配置logstash收集nginx日志的过程中,需要进行以下几个步骤:
1. 在logstash的配置文件中新增一个配置文件logstash.conf,内容如下:
```
input {
file {
type => "nginx-access-log"
path => "/data/nginx/logs/access_json.log"
start_position => "beginning"
stat_interval => "2"
codec => json
}
}
filter {}
output {
elasticsearch {
hosts => ["http://elasticsearch:9200"]
index => "logstash-nginx-access-log-%{+YYYY.MM.dd}"
}
stdout {
codec => json_lines
}
}
```
2. 在nginx的配置文件nginx.conf中,在http节点下进行如下配置:
```
log_format json '{"@timestamp":"$time_iso8601",'
'"@version":"1",'
'"client":"$remote_addr",'
'"url":"$uri",'
'"status":"$status",'
'"domain":"$host",'
'"host":"$server_addr",'
'"size":$body_bytes_sent,'
'"responsetime":$request_time,'
'"referer": "$http_referer",'
'"ua": "$http_user_agent"'
'}';
access_log /data/nginx/logs/access_json.log json;
```
这样配置之后,logstash将会从指定路径下的access_json.log文件读取nginx的日志数据,并使用json格式进行解析和处理,然后将处理后的数据发送到elasticsearch中进行存储和索引。
阅读全文