kristrev / data-exporter

A generic tool for receiving and exporting data in a multitude of formats
BSD 2-Clause "Simplified" License
1 stars 6 forks source link

Zeromq relay support #58

Open jonakarl opened 6 years ago

jonakarl commented 6 years ago

This input plugin connects to one or more ZeroMQ publishers and publish these messages verbatim into the metadata stream (only supported by the ZeroMQ writer).

I am a bit out of touch with coding c so please take a look so I have not done any obvious memory corruptions/bugs. I know line 147 in _zeromq_relay.c is dangerous but it works now due to mde_publish_event_obj is a syncrhonous call, is there any plans on making this asynch ? if so the buffer used needs to be created on the heap (and thus freed in writer_zeromq.c).

The code is tested on node 232 and it works as expected (ie I can turn off subscribers publishers at will and it continues to work without crashing) I have attached the ouput from a valgrind run with these checks (valgrind --leak-check=yes ./meta_exporter -c /home/jk/monroe/m.conf) valgrind.log m.conf.txt