grok常用表达式

Posted 韩乾

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了grok常用表达式相关的知识,希望对你有一定的参考价值。

 

主机、ip、路径

HOSTNAME 主机名称
IPORHOST IP或者主机名称
HOSTPORT 主机名(IP)+端口,如: 127.0.0.1:3306、api.stozen.NET:8000
MAC MAC地址
IP IP地址,IPv4或IPv6地址,比如:127.0.0.1、FE80:0000:0000:0000:AAAA:0000:00C2:0002等
PATH 路径,Unix系统或者Windows系统里的路径格式,比如:/usr/xxx、c:\windows\xxx等

 

字符串、数字

USERNAME 或 USER \w+,比如:1234、Bob、Alex.Wong等
WORD \b\w+\b,比如:String、3529345、ILoveYou等
EMAILLOCALPART [a-zA-Z][a-zA-Z0-9_.+-=:]+
EMAILADDRESS 电子邮件,%{EMAILLOCALPART}@%{HOSTNAME},比如:[email protected]、等
BASE10NUM 十进制数字,包括整数和小数,比如:0、18、5.23等
NUMBER 十进制数字,包括整数和小数,比如:0、18、5.23等
BASE16NUM 十六进制数字,整数,比如:0x0045fa2d、-0x3F8709等
BASE16FLOAT 十六进制数字,整数和小数
WORD 字符串,包括数字和大小写字母,比如:String、3529345、ILoveYou等
NOTSPACE 不带任何空格的字符串
SPACE 空格字符串
QUOTEDSTRING 或 QS 带引号的字符串,比如:"This is an apple"What is your name?等
UUID 标准UUID,比如:550E8400-E29B-11D4-A716-446655440000
 

时间日期

MONTH 月份名称,比如:Jan、January等
MONTHNUM 月份数字,比如:03、9、12等
MONTHDAY 日期数字,比如:03、9、31等
DAY 星期几名称,比如:Mon、Monday等
YEAR 年份数字
HOUR 小时数字
MINUTE 分钟数字
SECOND 秒数字
TIME 时间,比如:00:01:23
DATE_US 美国日期格式,比如:10-15-1982、10/15/1982等
DATE_EU 欧洲日期格式,比如:15-10-1982、15/10/1982、15.10.1982等
DATE 日期,美国日期%{DATE_US}或者欧洲日期%{DATE_EU}
ISO8601_TIMEZONE ISO8601时间格式,比如:+10:23、-1023等
TIMESTAMP_ISO8601 ISO8601时间戳格式,比如:2016-07-03T00:34:06+08:00
DATESTAMP 完整日期+时间,比如:07-03-2016 00:34:06
HTTPDATE http默认日期格式,比如:03/Jul/2016:00:36:53 +0800
LOGLEVEL 日志等级,比如:Alert、alert、ALERT、Error等

 

 

HTTP

URIPROTO URI协议,比如:http、ftp等
URIHOST URI主机,比如:www.stozen.net、10.0.0.1:22等
URIPATH URI路径,比如://www.stozen.Net/abc/、/api.php等
URI 完整的URI,比如:http://www.stozen.net/abc/api.php?a=1&b=2&c=3
URIPARAM URI里的GET参数,比如:?a=1&b=2&c=3
URIPATHPARAM URI路径+GET参数,比如://www.stozen.net/abc/api.php?a=1&b=2&c=3

 

 

 

以上是关于grok常用表达式的主要内容,如果未能解决你的问题,请参考以下文章

grok表达式

logstash grok使用案例

使用Logstash filter grok过滤日志文件

为调试 Logstash Grok表达式,安装 GrokDebuger 环境

Logstash笔记-----grok插件的正则表达式来解析日志

如何在自定义 grok 模式中引用正则表达式组?