使用Logstash分析纪录Nginx服务器访问及错误日志
2016-09-09 17:21
1086 查看
编写配置文件, 从 Nginx access.log, error.log 中解析日志数据
# nginx-logstash-pipeling.conf # 输入 input { file { type => "nginx-access" path => "/var/nginx/access.log" start_position => beginning # 从开始位置读取文件,而非默认的从结尾开始仅仅读取新加内容 ignore_older => 0 # 不忽略旧文件 } file { type => "nginx-error" path => "/var/nginx/error.log" start_position => beginning ignore_older => 0 } } # 过滤: 指定对输入的处理 filter { # Nginx访问和错误日志分开解析 if [type] == "nginx-access" { # grok是Logstash常用的默认插件之一, 指定输入文本格式, 返回解析后的json数据 # 此处使用grok内置的格式(pattern)解析同格式的Nginx访问日志 grok { match => { "message" => "%{COMBINEDAPACHELOG}+%{GREEDYDATA:extra_fields}" } } } else if [type] == "nginx-error" { grok { match => [ "message" , "(?<timestamp>%{YEAR}[./-]%{MONTHNUM}[./-]%{MONTHDAY}[- ]%{TIME}) \[%{LOGLEVEL:severity}\] %{POSINT:pid}#%{NUMBER}: %{GREEDYDATA:errormessage}(?:, client: (?<clientip>%{IP}|%{HOSTNAME}))(?:, server: %{IPORHOST:server}?)(?:, request: %{QS:request})?(?:, upstream: (?<upstream>\"%{URI}\"|%{QS}))?(?:, host: %{QS:request_host})?(?:, referrer: \"%{URI:referrer}\")?"] } } # geoip,另一个插件,为之前处理好的结构化数据中添加额外的地理位置信息 geoip { source => "clientip" } } output { # 输出目标1: 默认传入本地Elasticsearch服务器作为索引文档(index document),并按类型和时间导出到不同的索引中 (如果没有启动Elasticsearch则不必填写) elasticsearch { index => "%{type}-%{+YYYY.MM.dd}" } # 输出目标2: 写入本地文件 file { path => "~/nginx-logstash.output" } }
相关文章推荐
- 使用 awstats 分析 Nginx 的访问日志
- 使用 awstats 分析 Nginx 的访问日志
- 使用webalizer分析nginx 访问日志 推荐
- 使用webalizer分析nginx 访问日志
- 使用awstat分析Nginx的访问日志
- 使用awstats 分析 Nginx 的访问日志
- 使用 awstats 分析 Nginx 的访问日志
- 使用 awstats 分析 Nginx 的访问日志
- 使用awstats分析Nginx的访问日志
- 使用awstats分析Nginx的访问日志
- 使用 awstats 分析 Nginx 的访问日志
- 使用awstat分析Nginx的访问日志
- 使用awstat分析Nginx的访问日志
- Linux服务器nginx访问日志里出现大量http 400错误的请求分析
- 使用ELK(logstash,elasticsearch,kibana)+redis搭建nginx日志分析平台
- logstash 分析nginx 错误日志
- 使用logstash收集nginx访问日志
- 使用 awstats 分析 Nginx 的访问日志(IBM)
- 搭建ELK(ElasticSearch+Logstash+Kibana)日志分析系统(八) elasticsearch配置外网访问及常见错误处理
- 使用python 分析统计nginx访问日志ip次数并且排序