首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >logstash的grok帮助

logstash的grok帮助
EN

Stack Overflow用户
提问于 2015-03-04 02:06:54
回答 2查看 291关注 0票数 0

我的日志是这样的

代码语言:javascript
复制
00009139 2015-03-03 00:00:20.142  5254 11607 "HTTP First Line: GET /?main&legacy HTTP/1.1"

我尝试使用grok调试器来格式化这些信息,但没有成功。有没有办法使用grok获得这种格式?带引号的字符串将是消息

因此,我通过使用grok patterns页面简单地使用了以下格式。

代码语言:javascript
复制
%{NUMBER:Sequence} %{YEAR}-%{MONTHNUM}-%{MONTHDAY}[T ]%{HOUR}:?%{MINUTE}(?::?%{SECOND})?%{ISO8601_TIMEZONE}? %{NUMBER:Process}%{NUMBER:Process2}%{WORD:Message}
EN

回答 2

Stack Overflow用户

发布于 2015-05-12 23:34:20

这是我能得到的最接近当前信息的信息了。

代码语言:javascript
复制
%{INT}%{SPACE}%{TIMESTAMP_ISO8601}%{SPACE}%{INT:pid1}%{SPACE}%{INT:pid2}%{SPACE}%{GREEDYDATA:message}

使用上面的grok模式,这就是grokdebugger“捕捉到的”:

代码语言:javascript
复制
{
  "INT": [
    [
      "00009139"
    ]
  ],
  "SPACE": [
    [
      " ",
      "  ",
      " ",
      " "
    ]
  ],
  "TIMESTAMP_ISO8601": [
    [
      "2015-03-03 00:00:20.142"
    ]
  ],
  "YEAR": [
    [
      "2015"
    ]
  ],
  "MONTHNUM": [
    [
      "03"
    ]
  ],
  "MONTHDAY": [
    [
      "03"
    ]
  ],
  "HOUR": [
    [
      "00",
      null
    ]
  ],
  "MINUTE": [
    [
      "00",
      null
    ]
  ],
  "SECOND": [
    [
      "20.142"
    ]
  ],
  "ISO8601_TIMEZONE": [
    [
      null
    ]
  ],
  "pid1": [
    [
      "5254"
    ]
  ],
  "pid2": [
    [
      "11607"
    ]
  ],
  "message": [
    [
      ""HTTP First Line: GET /?main&legacy HTTP/1.1""
    ]
  ]
}

希望我能帮上忙。

票数 0
EN

Stack Overflow用户

发布于 2016-04-14 01:52:51

试着用%{QS:message}代替你摸索末尾的%{WORD:Message}

希望这能有所帮助:)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28838808

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档