logstash中使用grok结构化message
博客专区 > here_bg 的博客 > 博客详情
logstash中使用grok结构化message
here_bg 发表于1年前
logstash中使用grok结构化message
  • 发表于 1年前
  • 阅读 38
  • 收藏 0
  • 点赞 0
  • 评论 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}"

标签: logstash grok
共有 人打赏支持
粉丝 0
博文 1
码字总数 165
×
here_bg
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: