文档章节

logstash中使用grok结构化message

h
 here_bg
发布于 2016/12/08 12:30
字数 165
阅读 38
收藏 0

本文关注的是如何使用grok结构化logstash收取到的message。

grok解析的本质是正则匹配。

举个例子:

message 如下(rails 打出的log):

I, [2016-12-07T16:52:05.682441 #14610]  INFO -- : monitor project create.timecost 17 branch_test 0 user_name 5

以下三种grok解析的正则格式:

  1. 纯正则匹配

    "monitor project (?<metric>(create|delete).timecost) (?<cost>\d+) (?<branch>\w+) (?<status>\d+) (?<user>\w+) (?<try_times>\d+)"

  2. 借助grok 官方pattern, 部分匹配

    ".* monitor project %{GREEDYDATA:metric} %{GREEDYDATA:cost} %{GREEDYDATA:branch} %{GREEDYDATA:status} %{GREEDYDATA:user} %{GREEDYDATA:try_times}

  3. 借助grok 官方pattern,全部匹配

    "I, [%{TIMESTAMP_ISO8601:timestamp} #%{POSINT:pid}] *%{RUBY_LOGLEVEL:loglevel} -- +%{DATA:progname}: monitor project %{GREEDYDATA:metric} %{GREEDYDATA:cost} %{GREEDYDATA:branch} %{GREEDYDATA:status} %{GREEDYDATA:user} %{GREEDYDATA:try_times} %{GREEDYDATA:start_time} %{GREEDYDATA:end_time}"

© 著作权归作者所有

共有 人打赏支持
h
粉丝 0
博文 1
码字总数 165
作品 0
[译]你应该了解的5个 Logstash Filter 插件

原文:5 Logstash Filter Plugins You Need to Know About 译者:neal1991 welcome to star my articles-translator , providing you advanced articles translation. Any suggestion, plea......

neal
2017/10/25
0
0
ELK日志处理之使用Grok解析日志

一、简介 Grok是迄今为止使蹩脚的、无结构的日志结构化和可查询的最好方式。Grok在解析 syslog logs、apache and other webserver logs、mysql logs等任意格式的文件上表现完美。 Grok内置了...

napoay
2017/03/17
0
0
如何在ELK中解析各类日志文件

作为一个日志中心,它会收集各种各样的日志,可以用于问题排查,数据监控,统计分析等等。那么对于繁多的日志,它们都有各自的存储格式,我们如何来区分它们,对于不同的日志格式,我们又是如...

禁区铁铍人
2017/11/30
0
0
logstash配置文件常用参数

最近在折腾logstash,其处理流程不过于input、filter、output三个处理流程,以下是我翻译的几个常用的处理参数 output流之http output {http { }} codec: 数据类型,默认是“plain”,用来指...

China_OS
2013/12/07
0
0
你真的了解Grok吗

在日志处理的过程中,有一项非常常见的任务就是把原始的单行日志转换成结构化的日志。如果你使用了ELK,那么你可以利用ES对数据进行聚合,使用Kibana来进行数据可视化从日志中来发现一些有价...

小埋酱
2016/11/05
158
0

没有更多内容

加载失败,请刷新页面

加载更多

多线程

1. 多线程概念。并发和并行的概念。 多线程指的是一段时间内cpu同时执行多个线程。一个程序至少运行>=1个进程,进程就是运行中的程序,而一个进程至少运行>=1个线程,线程是操作系统能调度的...

鱼想吃肉
今天
0
0
HBase 表修复在线方式和离线方式

一、在线修复 1.1 使用检查命令 $ ./bin/hbase hbck 该命令可完整修复 HBase 元数据信息;存在有错误信息会进行输出; 也可以通过如下命令查看详细信息: $ ./bin/hbase hbck -details 1.2 ...

Ryan-瑞恩
今天
3
0
redis 系列二 -- 常用命令

1.基础命令 info ping quit save dbsize select flushdb flushall 2.键命令 2.1 set 直接赋值 set a a 2.2 get 取值 get a 2.3 exists 是否存在 exists a 2.4 expire 设置剩余时间 秒 expire......

imbiao
今天
2
0
php foreach

<?php// 数组的引用$a=array(1,2,3,4,5);foreach($a as $key=>&$value){$value=$value*2;}print_r($a);echo " $key -------------------$value\r\n";/** * ...

小张525
今天
3
0
12-利用思维导图梳理JavaSE-多线程

12-利用思维导图梳理JavaSE-多线程 主要内容 1.线程概念 2.线程开发 3.线程的状态 4.线程的同步和死锁 5.Java5.0并发库类 QQ/知识星球/个人WeChat/公众号二维码 本文为原创文章,如果对你有一...

飞鱼说编程
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部