[elk]logstash的grok匹配逻辑grok+date+mutate
重点参考:
http://blog.csdn.net/qq1032355091/article/details/52953837
logstash的精髓:
grok插件原理
date插件原理
kv插件原理
日志默认情况
默认将日志内容赋给了message字段, logstash附加了@timestamp @version host 3个字段
{
"@timestamp" => 2017-11-30T06:09:09.625Z,
"@version" => "1",
"host" => "lb-212-222.above.com",
"message" => "sad"
}
match匹配原则
参考: https://www.elastic.co/guide/en/logstash/current/plugins-filters-grok.html

date插件匹配过程解析
input { stdin { } }
filter {
grok { match => [ "message", "%{HTTPDATE:[@metadata][timestamp]}" ] }
date { match => [ "[@metadata][timestamp]", "dd/MMM/yyyy:HH:mm:ss Z" ] }
}
output {
stdout { codec => rubydebug }
}
##用正则HTTPDATE匹配message,将结果赋给[@metadata][timestamp]字段
grok { match => [ "message", "%{HTTPDATE:[@metadata][timestamp]}" ] }
##date插件将[@metadata][timestamp]的值赋给 @timestamp字段
date { match => [ "[@metadata][timestamp]", "dd/MMM/yyyy:HH:mm:ss Z" ] }
下面是一个完整例子:
参考: http://blog.csdn.net/xiaoyu_bd/article/details/52531051
input {
stdin{}
}
filter {
grok {
match => ["message", "%{TIMESTAMP_ISO8601:logdate}"]
}
date {
match => ["logdate", "yyyy-MM-dd HH:mm:ss,SSS"]
target => "@timestamp" ## 默认target就是"@timestamp
}
}
output{
stdout{
codec=>rubydebug{}
}
}
date {
match => [“timestamp”, “dd/MMM/yyyy:HH:mm:ss Z”]
#默认目标就是@timestamp
target => "@timestamp"
"locale" => "en"
}
mutate插件
- 修改字段类型
参考(修改时间格式): http://blog.csdn.net/wang_zhenwei/article/details/49760975
mutate {
convert => { "dest_Port" => "integer" }
convert => { "source_Port" => "integer" }
}
- 添加字段
input { stdin { } }
filter {
mutate { add_field => { "show" => "This data will be in the output" } }
}
output {
stdout { codec => rubydebug }
}
- 还可以转换字段大小写
kibana 查询结果csv导出
table类型的导出:

饼图统计结果导出

[elk]logstash的grok匹配逻辑grok+date+mutate的更多相关文章
- [elk]logstash grok原理
logstash语法 http://www.ttlsa.com/elk/elk-logstash-configuration-syntax/ https://www.elastic.co/guide/ ...
- ELK——Logstash 2.2 date 插件【翻译+实践】
官网地址 本文内容 语法 测试数据 可配置选项 参考资料 date 插件是日期插件,这个插件,常用而重要. 如果不用 date 插件,那么 Logstash 将处理时间作为时间戳.时间戳字段是 Log ...
- ELK logstash 处理MySQL慢查询日志(初步)
写在前面:在做ELK logstash 处理MySQL慢查询日志的时候出现的问题: 1.测试数据库没有慢日志,所以没有日志信息,导致 IP:9200/_plugin/head/界面异常(忽然出现日志数 ...
- ELK logstash邮件报警
这个方法有一个问题就是我这边不能给我们公司的邮箱发邮件.还有就是我们有两个邮箱一个是腾讯企业邮箱,还有一个就是我们的集团邮箱 使用下面的这个方法是不能给我们的集团邮箱发邮件的.第二个问题就是这个方法给 ...
- [elk]logstash统计api访问失败率
处理原始日志 日志从moogoo导出来的 { "mobile" : "13612345678", "isp" : "中国移动_广东 ...
- logstash笔记(二)——grok之match
官方文档: https://www.elastic.co/guide/en/logstash/current/plugins-filters-grok.html 基本语法: %{SYNTAX:SEMA ...
- logstash实战filter插件之grok(收集apache日志)
有些日志(比如apache)不像nginx那样支持json可以使用grok插件 grok利用正则表达式就行匹配拆分 预定义的位置在 /opt/logstash/vendor/bundle/jruby/ ...
- Centos6.5搭建grok匹配测试网站
最近在使用ELK对日志进行集中管理,因为涉及到日志的规则经常要用到http://grokdebug.herokuapp.com/进行调试,但是国外的网站访问太慢,这儿推荐一个国内的网站http://g ...
- grok 匹配log4j
input { file { codec => multiline { pattern => "^\[2016" negate => true what => ...
随机推荐
- C#-java RSA加密解密
using Org.BouncyCastle.Math; using Org.BouncyCastle.Crypto.Parameters; using Org.BouncyCastle.Securi ...
- 从connect到express01-connect
介绍 Connect是一个node中间件框架.每个中间件在http处理过程中通过改写request, response的数据.状态,实现了特定的功能. 根据中间件在整个http处理流程的位置,将中间件 ...
- django --01 helloworld样例入门
很好的一个django教程:https://www.w3cschool.cn/django/django-first-app.html django版本:1.8 1.创建django工程 django ...
- [Android Pro] 使用CursorLoader异步加载数据 from 3.0
Android 3.0引入了CursorLoader实现异步加载数据,为了避免同步查询数据库时阻塞UI线程的问题.在API 11之前可以通过下载支持库,来使之前的系统支持此功能,下载页面为 http: ...
- Chrome 控制台新玩法-向输出到console的文字加样式
Chrome 控制台新玩法-向输出到console的文字加样式 有兴趣的同学可以文章最后的代码复制贴到控制台玩玩. Go for Code 在正常模式下,一般只能向console 控制台输出简单的文字 ...
- Java实现Redis pipeline比较
开始实验这个,是因为Redis实战.pdf上面有例子. 上面用的是 org.jredis包,可是发现这个包不在maven的公共仓库里.需要先下载然后放在本地,导入maven依赖.详见: http:// ...
- http://my.oschina.net/u/1177710/blog/284608
http://my.oschina.net/u/1177710/blog/284608 http://chuhanzhi.com/?p=45 http://www.2cto.com/kf/201501 ...
- MyEclipse 2014配置Maven
1 配置maven (1)下载apache-maven-3.3.3和mvnRespo放在某个路径下,我这里是放在D盘根目录下. (2)修改D:\apache-maven-3.3.3\conf\sett ...
- 2017.12.27 sqlSessionFactory和sqlSession(to be continued)
参考来自:<深入浅出MyBatis技术原理与实践-第6章 > 1.SqlSessionFactory SqlSessionFactory是一个接口,最重要的功能是提供SqlSession. ...
- 以JPanel为基础实现一个图像框
代码: import java.awt.Graphics; import javax.swing.ImageIcon; import javax.swing.JPanel; public class ...