logstash + grok 正则语法

1 篇文章 0 订阅
1 篇文章 0 订阅

详细正则规则参考:

正则语法规则

例:

日志格式如下

[vclound][2015-11-03 03:35:50,283][INFO][/usr/lib/python2.6/site-packages/urllib3/connectionpool.py:203][_new_conn][-][140192616544000]=[Starting new HTTP connection (1): 240.10.129.80]
[vclound][2015-11-03 03:35:50,381][DEBUG][/usr/lib/python2.6/site-packages/urllib3/connectionpool.py:295][_make_request][-][140192616544000]=["POST /v2.0/tokens HTTP/1.1" 200 3080]
[vclound][2015-11-03 03:35:50,384][INFO][/usr/lib/python2.6/site-packages/urllib3/connectionpool.py:203][_new_conn][-][140192616544000]=[Starting new HTTP connection (1): 240.10.129.160]
[vclound][2015-11-03 03:35:50,454][DEBUG][/usr/lib/python2.6/site-packages/urllib3/connectionpool.py:295][_make_request][-][140192616544000]=["GET /v2/bb0b51d166254dc99bc7462c0ac002ff/servers/b4b530e7-cd9b-42c1-bcd4-a48140726846 HTTP/1.1" 404 73]

logstash 正则规则参考

(下面代码, 编辑器无法显示, 请点击 view plain 进行阅读)

filter {
  if [type] == "pinyun" {
    grok {
      match => { "message" => "\[%{USERNAME:username}\]\[%{TIMESTAMP_ISO8601:time}\]\[%{LOGLEVEL:loglevel}\]\[%{PROG:filepath}\]\[%{PROG:function}\]\[-\]\[%{BASE16NUM:progid}\]\=\[%{GREEDYDATA:info}\]" }
      add_field => [ "received_at", "%{@timestamp}" ]
      add_field => [ "received_from", "%{host}" ]
    }
  }
}

注意: 当日志输出有空格, 那么匹配时候就带空格, 如果是特殊字符, 那么就直接匹配该特殊字符

输出效果

如下:

{
          "message" => "[vclound][2015-11-03 03:35:50,283][INFO][/usr/lib/python2.6/site-packages/urllib3/connectionpool.py:203][_new_conn][-][140192616544000]=[Starting new HTTP connection (1): 240.10.129.80]",
         "@version" => "1",
       "@timestamp" => "2015-11-03T02:01:30.051Z",
             "type" => "pinyun",
             "file" => "/apps/logs/uwsgi/uwsgi.log",
             "host" => "terry-zskvt.vclound.com",
           "offset" => "58995",
         "username" => "vclound",
             "time" => "2015-11-03 03:35:50,283",
         "loglevel" => "INFO",
         "filepath" => "/usr/lib/python2.6/site-packages/urllib3/connectionpool.py:203",
         "function" => "_new_conn",
           "progid" => "140192616544000",
             "info" => "Starting new HTTP connection (1): 240.10.129.80",
      "received_at" => "2015-11-03T02:01:30.051Z",
    "received_from" => "terry-zskvt.vclound.com"
}
{
          "message" => "[vclound][2015-11-03 03:35:50,381][DEBUG][/usr/lib/python2.6/site-packages/urllib3/connectionpool.py:295][_make_request][-][140192616544000]=[\"POST /v2.0/tokens HTTP/1.1\" 200 3080]",
         "@version" => "1",
       "@timestamp" => "2015-11-03T02:01:30.060Z",
             "type" => "pinyun",
             "file" => "/apps/logs/uwsgi/uwsgi.log",
             "host" => "terry-zskvt.vclound.com",
           "offset" => "59181",
         "username" => "vclound",
             "time" => "2015-11-03 03:35:50,381",
         "loglevel" => "DEBUG",
         "filepath" => "/usr/lib/python2.6/site-packages/urllib3/connectionpool.py:295",
         "function" => "_make_request",
           "progid" => "140192616544000",
             "info" => "\"POST /v2.0/tokens HTTP/1.1\" 200 3080",
      "received_at" => "2015-11-03T02:01:30.060Z",
    "received_from" => "terry-zskvt.vclound.com"
}
{
          "message" => "[vclound][2015-11-03 03:35:50,384][INFO][/usr/lib/python2.6/site-packages/urllib3/connectionpool.py:203][_new_conn][-][140192616544000]=[Starting new HTTP connection (1): 240.10.129.160]",
         "@version" => "1",
       "@timestamp" => "2015-11-03T02:01:30.068Z",
             "type" => "pinyun",
             "file" => "/apps/logs/uwsgi/uwsgi.log",
             "host" => "terry-zskvt.vclound.com",
           "offset" => "59362",
         "username" => "vclound",
             "time" => "2015-11-03 03:35:50,384",
         "loglevel" => "INFO",
         "filepath" => "/usr/lib/python2.6/site-packages/urllib3/connectionpool.py:203",
         "function" => "_new_conn",
           "progid" => "140192616544000",
             "info" => "Starting new HTTP connection (1): 240.10.129.160",
      "received_at" => "2015-11-03T02:01:30.068Z",
    "received_from" => "terry-zskvt.vclound.com"
}
{
          "message" => "[vclound][2015-11-03 03:35:50,454][DEBUG][/usr/lib/python2.6/site-packages/urllib3/connectionpool.py:295][_make_request][-][140192616544000]=[\"GET /v2/bb0b51d166254dc99bc7462c0ac002ff/servers/b4b530e7-cd9b-42c1-bcd4-a48140726846 HTTP/1.1\" 404 73]",
         "@version" => "1",
       "@timestamp" => "2015-11-03T02:01:30.074Z",
             "type" => "pinyun",
             "file" => "/apps/logs/uwsgi/uwsgi.log",
             "host" => "terry-zskvt.vclound.com",
           "offset" => "59549",
         "username" => "vclound",
             "time" => "2015-11-03 03:35:50,454",
         "loglevel" => "DEBUG",
         "filepath" => "/usr/lib/python2.6/site-packages/urllib3/connectionpool.py:295",
         "function" => "_make_request",
           "progid" => "140192616544000",
             "info" => "\"GET /v2/bb0b51d166254dc99bc7462c0ac002ff/servers/b4b530e7-cd9b-42c1-bcd4-a48140726846 HTTP/1.1\" 404 73",
      "received_at" => "2015-11-03T02:01:30.074Z",
    "received_from" => "terry-zskvt.vclound.com"
}
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Terry_Tsang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值