If I pass a log line like this one: 2016-06-28 19:26:36 machine-name 8.8.8.8 POST /home.aspx - 80 - 8.8.8.9 Mozilla/4.0 (compatible;+Win32;+WinHttp.WinHttpRequest.5) 200 0 0 20
through curl with the ?pipeline=filebeat_pipeline at the end of the request, and pull back the data I get a properly parsed 'message:' field. I don't, however, get a properly parsed 'message:' field through the normal log pushes. In kibana I still see the whole log in the 'message:' field.
I've ran filebeat.exe with -configtest and -e flags and no issues were reported. I'm not seeing anything anywhere in the logs on either the filebeat side, nor on the elasticsearch side.
I've also refreshed the field list.
The only thing I haven't done is restarted the cluster, but according to the documentation pipelines are updated without having to restart services.
Below is the unformatted json. I updated filebeat.yml and no changes in behavior. Also for what it's worth, I'm not doing this update across all my filebeat servers, just a single for testing, and once I establish working pipelines then I'll migrate the change across the board.
yes, using the 5.0.0 Alpha 3 release on both filebeats and elasticsearch.
Also what specific information are you looking for from a tcpdump? I know messages are making it to the elastic cluster, and running curl -GET localhost:9200/_ingest/pipeline/filebeat_pipeline on each server shows the proper pipeline output. Filebeat is specifically shoving output to the 09 and 10 servers, and the 09 and 10 servers are set to be ingest nodes only, node.data and node.master are set to false.
If I use curl from the command line I see the pipeline working as expected, my log is parsed successfully, but it's not working in the filebeat.yml configuration.
The parameter isn't in my trace, it goes to elk-10:9200/_bulk.
My configuration matches the configuration example in that link:
Indentation was off in my initial post due to the forum formatting.
I tried adding the path in a number of areas and get 404's wherever I put it. I tried setting the host to hosts: ["http://elk-10:9200/_ingest/pipeline/filebeat_pipeline"] and I also set path: "/_ingest/pipeline/filebeat_pipeline". Both times I received 404's.
I have the same problem. Was able to tcpdump the requests from filebeat and noticed that there's no pipeline parameter in it. That is, it looks like
POST /_bulk HTTP/1.1
Host: 192.168.xx.xx:9200
User-Agent: Go-http-client/1.1
Content-Length: 2668
Accept: application/json
Accept-Encoding: gzip
instead of
POST /_bulk?pipeline=mypipe HTTP/1.1
Host: 192.168.xx.xx:9200
User-Agent: Go-http-client/1.1
Content-Length: 2668
Accept: application/json
Accept-Encoding: gzip
Tried with different configuration options for the elasticsearch.output.parameters value in filebeat config, namely
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.