logstash笔记(二)——grok之match
官方文档:
https://www.elastic.co/guide/en/logstash/current/plugins-filters-grok.html
基本语法:
%{SYNTAX:SEMANTIC}
SYNTAX:定义的正则表达式名字(系统插件自带的默认位置:$HOME/vendor/bundle/jruby/1.9/gems/logstash-patterns-core-2.0.2/patterns)
SEMANTIC:匹配结果的标识
grok{
    match=>{
       "message"=>"%{IP:clientip}"
    }
 }
输入结果
{
  "message" => "192.168.1.1 abc",
  "@version" => "1",
  "@timestamp" => "2016-03-30T02:15:31.242Z",
  "host" => "master",
  "clientip" => "192.168.1.1"
}
clientip就是semantic
每个%{IP:clientip}表达式只能匹配到message中第一次出现的结果,可用如下方式匹配多个相同类型结果
%{IP:clientip}\s+%{IP:clientip1}...,如果SEMANTIC定义的相同名字,结果为数组形式,如:
{
         "message" => "12.12.12.12 32.32.32.32",
        "@version" => "1",
      "@timestamp" => "2016-03-30T02:26:31.077Z",
            "host" => "master",
        "clientip" => [
            [0] "12.12.12.12",
            [1] "32.32.32.32"
      ]
}
自定义grok表达式
语法:(?<field_name>the pattern here)
eg:
grok{
    match=>{
       "message"=>"%{IP:clientip}\s+(?<mypattern>[A-Z]+)"
    }
 }
rs:
{
         "message" => "12.12.12.12 ABC",
        "@version" => "1",
      "@timestamp" => "2016-03-30T03:22:04.466Z",
            "host" => "master",
        "clientip" => "12.12.12.12",
       "mypattern" => "ABC"
}
创建自定义grok文件
在/home/hadoop/mylogstash/mypatterns_dir创建文件mypatterns_file,内容如下:
MY_PATTERN [A-Z]+
保存!
修改filter
grok{
    patterns_dir=>["/home/hadoop/mylogstash/mypatterns_dir"]
    match=>{
       "message"=>"%{IP:clientip}\s+%{MY_PATTERN:mypattern}"
    }
 }
结果同上
logstash笔记(二)——grok之match的更多相关文章
- jQuery源码笔记(二):定义了一些变量和函数 jQuery = function(){}
		笔记(二)也分为三部分: 一. 介绍: 注释说明:v2.0.3版本.Sizzle选择器.MIT软件许可注释中的#的信息索引.查询地址(英文版)匿名函数自执行:window参数及undefined参数意 ... 
- webpy使用笔记(二) session/sessionid的使用
		webpy使用笔记(二) session的使用 webpy使用系列之session的使用,虽然工作中使用的是django,但是自己并不喜欢那种大而全的东西~什么都给你准备好了,自己好像一个机器人一样赶 ... 
- python3.4学习笔记(二十三) Python调用淘宝IP库获取IP归属地返回省市运营商实例代码
		python3.4学习笔记(二十三) Python调用淘宝IP库获取IP归属地返回省市运营商实例代码 淘宝IP地址库 http://ip.taobao.com/目前提供的服务包括:1. 根据用户提供的 ... 
- amazeui学习笔记二(进阶开发4)--JavaScript规范Rules
		amazeui学习笔记二(进阶开发4)--JavaScript规范Rules 一.总结 1.注释规范总原则: As short as possible(如无必要,勿增注释):尽量提高代码本身的清晰性. ... 
- Elasticsearch优化 & filebeat配置文件优化 & logstash格式配置 & grok实践
		Elasticsearch优化 & filebeat配置文件优化 & logstash格式配置 & grok实践 编码转换问题(主要就是中文乱码) (1)input 中的cod ... 
- 《CMake实践》笔记二:INSTALL/CMAKE_INSTALL_PREFIX
		<CMake实践>笔记一:PROJECT/MESSAGE/ADD_EXECUTABLE <CMake实践>笔记二:INSTALL/CMAKE_INSTALL_PREFIX &l ... 
- Mastering Web Application Development with AngularJS 读书笔记(二)
		第一章笔记 (二) 一.scopes的层级和事件系统(the eventing system) 在层级中管理的scopes可以被用做事件总线.AngularJS 允许我们去传播已经命名的事件用一种有效 ... 
- Python 学习笔记二
		笔记二 :print 以及基本文件操作 笔记一已取消置顶链接地址 http://www.cnblogs.com/dzzy/p/5140899.html 暑假只是快速过了一遍python ,现在起开始仔 ... 
- WPF的Binding学习笔记(二)
		原文: http://www.cnblogs.com/pasoraku/archive/2012/10/25/2738428.htmlWPF的Binding学习笔记(二) 上次学了点点Binding的 ... 
- AJax 学习笔记二(onreadystatechange的作用)
		AJax 学习笔记二(onreadystatechange的作用) 当发送一个请求后,客户端无法确定什么时候会完成这个请求,所以需要用事件机制来捕获请求的状态XMLHttpRequest对象提供了on ... 
随机推荐
- 第二阶段第三次spring会议
			昨天我对便签加上了清空回收站功能 private void 清空回收站ToolStripMenuItem_Click(object sender, EventArgs e) { DelectText( ... 
- node 项目中 koa2 环境搭建 以及项目发布
			环境搭建: 1.Koa 必须使用 7.6 以上的版本.如果你的版本低于这个要求,就要先升级 Node. 查看node版本方法:node -v 2.使用koa-generator生成器生成项目 安装ko ... 
- babel简介
			1.babel是什么 babel官网正中间一行黄色大字写着“babel is a javascript compiler”,翻译一下就是babel是一个javascript转译器.为什么会有babel ... 
- VMware Workstation:安装windows xp系统
			https://blog.csdn.net/nicergj/article/details/83651603 
- Libgdx slg游戏进程记录
			2月16日缩放居中,stage确定点击坐标,背景处理为actor 2月17日地图多次点击 2月19日stage确定点击位置(贝塞尔曲线六边形) 2月24日格式长度,读取xml属性解析btl保存 3月1 ... 
- Deployment descriptor
			部署描述符是JavaEE程序常见的一部分,部署一个Servlet 3 或以上应用程序是一件轻而易举的事.通过Servlet注解,对于不太复杂的应用程序,甚至可以部署没有描述符的Servlet/JSP应 ... 
- \usepackage{ulem}带下划线的问题解决
			其实正文应该是斜体字的,但是有可能默认模板会导致斜体变下划线的问题,解决方法如下: \usepackage{ulem} 在 \documentclass[format=acmsmall, review ... 
- bootstrap-datepicker简单使用
			粗略整理,可能存在其他的方式请大家多多指教 选择年份 html <div class="dropdown"> <label class="search- ... 
- Unity使用代码动态给按钮赋值各个状态下的图片
			一个小知识点,怕忘记,所以记录下.废话不多说,直接上代码: 未赋值之前: 使用下面代码赋值: using UnityEngine; using UnityEngine.UI; public class ... 
- TopicsExtraction with NMF & LDA
			""" ================================================================================= ... 
