我的个人博客:逐步前行STEP

centos系统的nginx原生格式如下:

112.95.209.146 - - [13/Jun/2019:09:32:50 +0800] "GET /css/web.css HTTP/1.1" 200 27518 "http://www.hezehua.net/" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36"

这个格式里,包含了-"[]这些特殊符号,所以不仅需要使用grok预定义的关键字匹配,还需要自定义正则表达式,使用的到预定义关键字有:

  1. IP :匹配IP
  2. HTTPDATE 匹配格式如:04/Jul/2019:10:43:15 +0800 的时间字符串
  3. WORD:匹配一个单词
  4. PATH:匹配一个路径 格式如:/css/web.css
  5. NUMBER:匹配数值
  6. HOSTNAME:匹配域名,格式:www.hezehua.net

匹配的grok语句为:

%{IP:ip} ([\s\S]{5})%{HTTPDATE:date}([\s\S]{3})%{WORD:method} %{PATH:path} (?<http>HTTP\/%{NUMBER})([\s\S]{1}) %{NUMBER:code} %{NUMBER:length}([\s\S]{2})(?<referer>http[s]?://%{HOSTNAME}%{PATH})([\s\S]{3})((?<user-agent>[\s\S]*)"$)

设置字段:

  • ip IP
  • time 时间
  • method 请求方式
  • path 请求路径
  • http-code 响应的http code
  • content-length 响应的内容长度
  • referer 请求来源页url
  • user-agent 用户代理

grok语句匹配结果会产生很多用不上的字段,需要过滤掉,以下是测试结果:

{"ip": [["42.156.136.107"]],"IPV6": [[null]],"IPV4": [["42.156.136.107"]],"HTTPDATE": [["16/Oct/2019:07:40:06 +0800"]],"MONTHDAY": [["16"]],"MONTH": [["Oct"]],"YEAR": [["2019"]],"TIME": [["07:40:06"]],"HOUR": [["07"]],"MINUTE": [["40"]],"SECOND": [["06"]],"INT": [["+0800"]],"method": [["GET"]],"path": [["/js/share.js/fonts/iconfont.woff"]],"UNIXPATH": [["/js/share.js/fonts/iconfont.woff","/js/share.js/css/share.min.css"]],"WINPATH": [[null,null]],"http": [["HTTP/1.1"]],"NUMBER": [["1.1"]],"BASE10NUM": [["1.1","200","6364"]],"code": [["200"]],"length": [["6364"]],"referer": [["http://www.hezehua.net/js/share.js/css/share.min.css"]],"HOSTNAME": [["www.hezehua.net"]],"PATH": [["/js/share.js/css/share.min.css"]],"user-agent": [["Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.81 YisouSpider/5.0 Safari/537.36"]]
}

摘取有效信息即可,其中日期格式需要再转化为YYYY-MM-DD HH:II:SS格式

Grok解析 centos 的 nginx 原生格式日志相关推荐

  1. 深度解析CentOS通过日志反查***

    from : http://linux.it.net.cn/CentOS/safe/2014/0429/985.html 昨天晚上群里有一个朋友的服务器发现有***的痕迹后来处理解决但是由于对方把日志 ...

  2. ELK日志处理之使用Grok解析日志

    一.简介 Grok是迄今为止使蹩脚的.无结构的日志结构化和可查询的最好方式.Grok在解析 syslog logs.apache and other webserver logs.mysql logs ...

  3. 深度解析CentOS通过日志反查入侵

    昨天晚上群里有一个朋友的服务器发现有入侵的痕迹后来处理解决但是由于对方把日志都清理了无疑给排查工作增加了许多难度.刚好手里有些资料我就整理整理贴出来分享一下.其实日志的作用是非常大的.学会使用通过日志 ...

  4. sqlserver 扩展事件监控慢sql与阻塞sql,xml格式日志解析

    零. 启用参数 SqlServer中默认blocked process收集是不开启的,可以通过以下sql查看,值为0表示未开启. exec sp_configure 'show advanced op ...

  5. Linux中级实战专题篇三:nginx服务(日志介绍,作用域,格式定义,流量控制,访问控制模块,用户信任登录)

    Nginx 日志配置 1.Nginx 日志介绍 Nginx 有一个非常灵活的日志记录模式,每个级别的配置可以有各自独立的访问日志, 所需日志模块 ngx_http_log_module 的支持,日志格 ...

  6. nginx 带宽_Nginx日志如何分析 GoAccess

    " 如何进行Nginx日志的分析呢?如获得topN 来源IP.URL,以及PV.UV等. " 认识下GoAccess GoAccess[1]支持对所有Web日志格式实现快速实时的分 ...

  7. 使用 Nginx 构建前端日志统计服务(打点采集)服务

    使用 Nginx 构建前端日志统计服务(打点采集)服务 工作中经常会遇到需要"数据支撑"决策的时候,那么可曾想过这些数据从何而来呢?如果业务涉及 Web 服务,那么这些数据的来源之 ...

  8. nginx 关闭access日志_可视化实时Web日志分析工具,堪称神器!

    说到web服务器就不得不说Nginx,目前已成为企业建站的首选.但由于种种历史原因,Nginx日志分析工具相较于传统的apache.lighthttp等还是少很多. 今天就和大家分享一个非常强大的实时 ...

  9. 7 centos 查看程序文件数量_解析CentOS 7中系统文件与目录管理

    LINUX Linux操作系统 解析CentOS 7中系统文件与目录管理 Linux目录结构 Linux目录结构是树形的目录结构 根目录 所有分区.目录.文件等的位置起点 整个树形目录结构中,使用独立 ...

最新文章

  1. python 读取excel文件 效率 时间 格式_python读取Excel文件中的时间数据
  2. 软件开发环境-环境信息库
  3. html上传文件与后台处理,关于前端html图片和文件上传和后台接收方法
  4. lucene4.7 分页(五)
  5. LOJ #6052. 「雅礼集训 2017 Day11」DIV
  6. c语言赋值运算符左边必须是,C语言运算符入门讲解
  7. 选项在哪_心理测试:4种高跟鞋,比较喜欢哪一种?测试出你对物的欣赏面
  8. 分享400个微信小程序模板和小程序设计模板
  9. html中div背景颜色渐变(透明 对角 附赠颜色查询对照表)
  10. Mothur3进阶_Mothur扩增子基因序列处理_数据比对、聚类及其处理评估
  11. debug断点调试进不去
  12. 9.2.1 Python图像处理之图像数学形态学-二值形态学应用之噪声消除
  13. 计算机文化基础期末考试复习
  14. 十进制转换成二进制——C语言
  15. chown与chmod的区别
  16. 单片机编程:如何喂狗的灵魂拷问...
  17. 解决Windows 7下IE11无法卸载、无法重新安装,提示安装了更新的IE版本
  18. 计算机网络实验rdt实验
  19. 什么性格的人适合做产品经理?
  20. 【MATLAB】求算凸轮摆杆机构的最大压力角和最小半径并画出凸轮轮廓

热门文章

  1. axios的get请求 - 代码篇
  2. 分组数据方差公式_连续变量假设检验 之 单因素方差检验
  3. c语言delay_单片机模拟流星雨,电路图和程序,一起来感受下,其实C语言不难...
  4. c语言逃跑的蠕虫函数,源码指标:穿越5线 第一时间吃鱼身 上行末端逃跑 没有未来函数 通达信幅图 精品公式...
  5. ZPan私人网盘 v1.4.1
  6. 计算机的主机主要由什么和什么不同,台式电脑主机由什么硬件组成?
  7. java gc 循环引用_JVM(3)对象A和B循环引用,最后会不会不被GC回收?-------关于Java的GC机制...
  8. 价值6000的信息分类系统源码
  9. JeewxBoot微信管家平台源码v1.3
  10. WP百度搜索推送管理插件