I have Elastic Beats (like metricbeat and auditbeat) that send data to logstash. For testing purposes, I'd like to mock some data from the beats to the logstash input.
I'm using the logstash output plugin in the beats (yaml config file):
output.logstash:
enabled: true
hosts: ["127.0.0.1:5044"]
and the beats input plugin in logstash (.conf pipeline config file):
input {
beats {
port => "5044"
}
}
I naïvely assumed the beats were communicating with logstash via HTTP requests so I used Postman to make a POST request to logstash, but I got an InvalidFrameProtocolException: Invalid version of beats protocol error in logstash.
I tried to inspect the packets with wireshark to see how the original packets are formatted but all I could see was TCP packets and no HTTP protocol. I guess then that the plugins don't communicate via HTTP requests.
Can someone with more expertise comment on this ? Is there a way to mock beats output data to logstash via postman ?