logk帮助logstash

时间:2015-03-03 18:06:54

标签: logstash grok

我的日志看起来像

00009139 2015-03-03 00:00:20.142  5254 11607 "HTTP First Line: GET /?main&legacy HTTP/1.1"

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

所以我只使用grok模式页面就使用了以下格式。

%{NUMBER:Sequence} %{YEAR}-%{MONTHNUM}-%{MONTHDAY}[T ]%{HOUR}:?%{MINUTE}(?::?%{SECOND})?%{ISO8601_TIMEZONE}? %{NUMBER:Process}%{NUMBER:Process2}%{WORD:Message}

2 个答案:

答案 0 :(得分:0)

这是我目前最接近的信息。

%{INT}%{SPACE}%{TIMESTAMP_ISO8601}%{SPACE}%{INT:pid1}%{SPACE}%{INT:pid2}%{SPACE}%{GREEDYDATA:message}

使用上面的grok模式,这就是grokdebugger“捕获”的内容:

{
  "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""
    ]
  ]
}

希望我有所帮助。

答案 1 :(得分:0)

尝试使用%{WORD:Message}替换grok末尾的%{QS:message}

希望这有助于:)