重点是通过Logstash正则提取Nginx日志


一、Nginx日志格式配置

  log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '

                      '$status $body_bytes_sent "$http_referer" '

                      '"$http_user_agent" "$http_x_forwarded_for"';

二、Nginx日志格式 

192.168.20.7 - - [18/Nov/2020:21:42:26 +0800] "GET / HTTP/1.1" 200 612 "-" "Mozilla/5.0 (Windows NT 6.1; Win64; 

x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36" "-"

192.168.20.7 - - [18/Nov/2020:21:42:26 +0800] "GET /favicon.ico HTTP/1.1" 404 555 "http://192.168.20.41/" "Mozil

la/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.198 Safari/537.36" "

-"

三、内置正则提取语法:%{内置正则表达式:字段名}

%{IP:remote_addr} - (%{WORD:remote_user}|-) \[%{HTTPDATE:time_local}\] "%{WORD:method} %{NOTSPACE:request} HTTP/%{NUMBER}" %{NUMBER:status} %{NUMBER:body_bytes_sent} %{QS} %{QS:http_user_agent}

、Logstash正则提取Nginx写入ES

1、使用kibana自身的Grok提取,需要掌握正则表达式

2、使用正式提取语法

3、把正行的nginx日志分段提取出来

4、配置logstash

5、默认logstash收集nginx日志


[root@master nginx]# more /etc/logstash/conf.d/logstash.conf 

input {

  file {

    path => "/var/log/nginx/access.log"

  }

}

output {

  elasticsearch {

    hosts => ["http://192.168.20.41:9200", "http://192.168.20.42:9200"]

    user => "elastic"

    password => "hahashen"

    index => "sjgnginx-%{+YYYY.MM.dd}"

  }

}

6、kibana创建Create index pattern

下一步

7、kibana显示nginx日志

8、最后正则拆分nginx日志


 请大家扫描关注,共同学习






©著作权归作者所有:来自51CTO博客作者mob604756e834f7的原创作品,如需转载,请注明出处,否则将追究法律责任

更多相关文章

  1. Power BI基础知识——添加列
  2. 【免费】华为认证考试资料,肖哥视频课程整理
  3. 华三IRF 堆叠 精讲版 笔记(肖哥)
  4. Excel提取中文,数字和字母,一分钟搞定!
  5. SQL如何提取字符串中的中文和数字?
  6. 如果你没用过Excel快速填充,你绝对不知道它有多牛!
  7. 正则表达式与文本处理工具 脚本实战
  8. 实战:从Mysql数据库frm文件中,提取表结构创建SQL语句
  9. python可视化文本分析-分析Q群聊天记录(一)

随机推荐

  1. unity5发布android:在unity5里面的edit/p
  2. Android中ListPreference的使用
  3. Android入门二(五大布局)
  4. [置顶] Android增量更新与CMake构
  5. 自定义视图(组合控件)
  6. 从gpu到chromium compositor(cc)详解andr
  7. Android 5.X Activity过渡动画,以及漂亮的
  8. GridView中实现元素填充剩余空间(自适应)
  9. android基础--获取sdcard的总容量
  10. android studio中的文本替换