私のタイムスタンプとのマッチング方法はわかりません。誰かが私を助けてくれますか? Apacheのログからの私のタイムスタンプのLogStach-Grok:Apache TimeStampとの一致方法
例:"2016-06-13T14:54:39.000+0100"
filter { if [type] == "apache" {
grok {
match => { "message" => "%{COMBINEDAPACHELOG}" } }
date {
timezone => "UTC"
match => [ "timestamp" , "yyyy-mm-ddTHH:mm:ss Z"]
} } }
output { stdout { codec => rubydebug } }
出力:
{:timestamp=>"2016-06-13T14:56:43.196000+0100", :message=>"Error: Cannot register filter date plugin. The error reported is: \n Illegal pattern component: T for pattern 'yyyy-mm-dd\THH:mm:ss Z'", :level=>:error}
Apacheのログの例:あなたの完全なログから
{ "@version": "1", "@timestamp": "2016-06-14T09:11:23.000+0100", "message": "GET /page1/page2/ HTTP/1.1", "via": "192.168.1.1", "client-ip": "192.168.1.23", "remote-logname": "-", "remote-user": "-", "recv-time": "[14/Jun/2016:09:11:23 +0100]", "serve-time-microsec": "85471", "request": "GET /page1/page2/ HTTP/1.1", "status": "200", "size": "79648", "referer": " http://www.google.com/ ", "user-agent": "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.13) Gecko/20101203 Firefox/3.6.13", "url": "/page1/page2/", "query": "", "method": "GET", "protocol": "HTTP/1.1", "vhost": "www.site.com", "received-size": "998" }
があなたのログからの行の例を追加することはできますか?チェックするのが簡単になります。 – ItayD
私のログ@ItayDの行は既にあります。私はこの日付書式に一致する問題があります。 '2016-06-13T14:54:39.000 + 0100' – Infinite
私は行が見当たりません。なぜなら、おそらくあなたはより良いgrok matcherを' COMBINEDAPACHELOG日付形式 '%{MONTHDAY} /%{MONTH} /%{YEAR}:%{TIME}%{INT}'を使用しています。 – ItayD