Filebeat - parse fields from message line

Hadash picture Hadash · Nov 7, 2016 · Viewed 11.4k times · Source

I am using Filebeat to ship log data from my local txt files into Elasticsearch, and I want to add some fields from the message line to the event - like timestamp and log level. For example here is one of my log lines:

2016-09-22 13:51:02,877 INFO 'start myservice service'

My question is: Can I do that by Filebeat -> Elasticsearch or must I go through Logstash?

Answer

A J picture A J · Nov 7, 2016

You can use Filebeat -> Elasticsearch if you make use of the Ingest Node feature in Elasticsearch 5.0. Otherwise, yes, you need to use Logstash.

In both cases you would use a grok filter to parse the message line into structured data. Also you'll want to use a date to parse and normalize the date.