I am getting errors, I guess due to the grok filters. check the Logstash parsed log below:
{
"message" => "2017-06-09 05:02:16,751 [30] DEBUG - WS206 - ApplicationName - someapp.Logging.someappLogger - REQ_END POST: /api/client/reportbuilder/getReportFilterValueData [200, 49 ms]\r\n",
"@version" => "1",
"@timestamp" => "2017-06-09T10:00:39.902Z",
"type" => "log4net",
"host" => "192.168.x.xxx",
"tags" => [
[0] "_grokparsefailure"
]
}
{
"message" => "2017-06-09 05:02:19,270 [48] DEBUG - WS206 - ApplicationName - someapp.Logging.someappLogger - REQ_START POST: /api/client/reportbuilder/getReportFilterValueData \r\n",
"@version" => "1",
"@timestamp" => "2017-06-09T10:00:42.422Z",
"type" => "log4net",
"host" => "192.168.x.xxx",
"tags" => [
[0] "_grokparsefailure"
]
}
I have started getting these Logs from Visual studio UdpAppender on Logstash and Kibana. The logs are like above, My filter is as shown below:
filter {
if [type] == "log4net" {
grok {
match => { "message" => "%{TIMESTAMP_ISO8601:log_timestamp} %{WORD:S-SiteName} %{NOTSPACE:S-ComputerName} %{IPORHOST:S-IP} %{WORD:CS-Method} %{URIPATH:CS-URI-Stem} (?:-|\"%{URIPATH:CS-URI-Query}\") %{NUMBER:S-Port} %{NOTSPACE:CS-Username} %{IPORHOST:C-IP} %{NOTSPACE:CS-Version} %{NOTSPACE:CS-UserAgent} %{NOTSPACE:CS-Cookie} %{NOTSPACE:CS-Referer} %{NOTSPACE:CS-Host} %{NUMBER:SC-Status} %{NUMBER:SC-SubStatus} %{NUMBER:SC-Win32-Status} %{NUMBER:SC-Bytes} %{NUMBER:CS-Bytes} %{NUMBER:Time-Taken}"}
}
}
}
Couple of issues, Logging time and actual time of the log generated is different. Kibana has a timestamp which is different than the timestamp in the message part of the log above, how do I fix that??
{
"_index": "logstash-2017.06.09",
"_type": "log4net",
"_id": "AVyMTIFqNuCcmtLtPbeb",
"_score": null,
"_source": {
"message": "2017-06-09 05:02:19,317 [48] DEBUG - WS206 - ApplicationName - Someapp.Logging.SomeappLogger - REQ_END POST: /api/client/reportbuilder/getReportFilterValueData [200, 46 ms]\r\n",
"@version": "1",
"@timestamp": "2017-06-09T10:00:42.468Z",
"type": "log4net",
"host": "192.168.x.xxx",
"tags": [
"_grokparsefailure"
]
},
"fields": {
"@timestamp": [
1497002442468
]
},
"highlight": {
"type.raw": [
"@kibana-highlighted-field@log4net@/kibana-highlighted-field@"
],
"type": [
"@kibana-highlighted-field@log4net@/kibana-highlighted-field@"
]
},
"sort": [
1497002442468
]
}
All of our logs will be mostly around Exceptions/errors/DEBUG info received from Visual studio/IIS servers/asp .net applications and web apps. What is the best filter for these logs??
What to do with the[0] "_grokparsefailure"
Im new to ELK.