<p dir="ltr">If you commit your code to a branch I can help with the basic skeleton of the parser/grammar</p>
<div class="gmail_quote">On Jan 23, 2016 5:54 PM, "Marc Falzon" <<a href="mailto:m@baha.mu">m@baha.mu</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I successfully generated a module template using the `create_plugin.sh` script, however I don't have the slightest idea on how to get started from here (I mean for the 'plugin glue', I can manage the cURL part)... The most problematic step for me is the whole parser/grammar thing, to which I believe to involve YACC/Bison parsing but I don't know how it works and it's too big of a learning curve for what I want to achieve at this point... Since the Gitbook doesn't provide any useful information on module development at the moment, is there any way to get me started on this topic? I'm not a developer (sysadmin), and trying to learn from existing module doesn't quite cut it.<br>
<br>
Thank you,<br>
<br>
m.<br>
<br>
<br>
On Friday 22 January 2016 at 11:35, Tibor Benke wrote:<br>
<br>
> There is also a shell script which generates a basic destination skeleton. You can find its source on this brach: <a href="https://github.com/juhaszviktor/syslog-ng/tree/f/plugin-creator" rel="noreferrer" target="_blank">https://github.com/juhaszviktor/syslog-ng/tree/f/plugin-creator</a> . Check the dev-utils/plugin_skeleton_creator directory and this commit for the usage: <a href="https://github.com/juhaszviktor/syslog-ng/commit/89361d4d1817560ce8c906209355f1b737a28010" rel="noreferrer" target="_blank">https://github.com/juhaszviktor/syslog-ng/commit/89361d4d1817560ce8c906209355f1b737a28010</a><br>
><br>
> 2016-01-22 11:33 GMT+01:00 Marc Falzon <<a href="mailto:m@baha.mu">m@baha.mu</a> (mailto:<a href="mailto:m@baha.mu">m@baha.mu</a>)>:<br>
> > Hi Bazsi,<br>
> ><br>
> ><br>
> > On Friday 22 January 2016 at 11:28, Scheidler, Balázs wrote:<br>
> ><br>
> > > not really, but maybe I would read the "official" modules source code instead. and of course you can ask questions on the mailing list. :)<br>
> ><br>
> ><br>
> > Yes that's what I've started to do, but a proper documentation is preferable, saves time and avoid confusion ;)<br>
> ><br>
> > > if you want to create a destination, the easiest is to create a threaded destination, where the output is an independent thread, that can use a synchronous API. Of course this is going to be slower than using an asynchronous implementation, but that usually is good enough,<br>
> ><br>
> > Thank you for the hint. Given my use case (HTTP destination) I think I'm safe to go with an asynchronous implementation since each request is stateless, no connections/locks involved.<br>
> ><br>
> > m.<br>
> ><br>
> > ><br>
> > > On Fri, Jan 22, 2016 at 11:03 AM, Marc Falzon <<a href="mailto:m@baha.mu">m@baha.mu</a> (mailto:<a href="mailto:m@baha.mu">m@baha.mu</a>) (mailto:<a href="mailto:m@baha.mu">m@baha.mu</a>)> wrote:<br>
> > > > Hi<br>
> > > ><br>
> > > > Is there any documentation on how to develop new syslog-ng module using the native C API, besides reading the incubator modules source code?<br>
> > > ><br>
> > > > Cheers,<br>
> > > ><br>
> > > > m.<br>
> > > ><br>
> > > ><br>
> > > > ______________________________________________________________________________<br>
> > > > Member info: <a href="https://lists.balabit.hu/mailman/listinfo/syslog-ng" rel="noreferrer" target="_blank">https://lists.balabit.hu/mailman/listinfo/syslog-ng</a><br>
> > > > Documentation: <a href="http://www.balabit.com/support/documentation/?product=syslog-ng" rel="noreferrer" target="_blank">http://www.balabit.com/support/documentation/?product=syslog-ng</a><br>
> > > > FAQ: <a href="http://www.balabit.com/wiki/syslog-ng-faq" rel="noreferrer" target="_blank">http://www.balabit.com/wiki/syslog-ng-faq</a><br>
> > ><br>
> > ><br>
> > ><br>
> > > ______________________________________________________________________________<br>
> > > Member info: <a href="https://lists.balabit.hu/mailman/listinfo/syslog-ng" rel="noreferrer" target="_blank">https://lists.balabit.hu/mailman/listinfo/syslog-ng</a><br>
> > > Documentation: <a href="http://www.balabit.com/support/documentation/?product=syslog-ng" rel="noreferrer" target="_blank">http://www.balabit.com/support/documentation/?product=syslog-ng</a><br>
> > > FAQ: <a href="http://www.balabit.com/wiki/syslog-ng-faq" rel="noreferrer" target="_blank">http://www.balabit.com/wiki/syslog-ng-faq</a><br>
> ><br>
> ><br>
> ><br>
> ><br>
> > ______________________________________________________________________________<br>
> > Member info: <a href="https://lists.balabit.hu/mailman/listinfo/syslog-ng" rel="noreferrer" target="_blank">https://lists.balabit.hu/mailman/listinfo/syslog-ng</a><br>
> > Documentation: <a href="http://www.balabit.com/support/documentation/?product=syslog-ng" rel="noreferrer" target="_blank">http://www.balabit.com/support/documentation/?product=syslog-ng</a><br>
> > FAQ: <a href="http://www.balabit.com/wiki/syslog-ng-faq" rel="noreferrer" target="_blank">http://www.balabit.com/wiki/syslog-ng-faq</a><br>
><br>
><br>
> ______________________________________________________________________________<br>
> Member info: <a href="https://lists.balabit.hu/mailman/listinfo/syslog-ng" rel="noreferrer" target="_blank">https://lists.balabit.hu/mailman/listinfo/syslog-ng</a><br>
> Documentation: <a href="http://www.balabit.com/support/documentation/?product=syslog-ng" rel="noreferrer" target="_blank">http://www.balabit.com/support/documentation/?product=syslog-ng</a><br>
> FAQ: <a href="http://www.balabit.com/wiki/syslog-ng-faq" rel="noreferrer" target="_blank">http://www.balabit.com/wiki/syslog-ng-faq</a><br>
<br>
<br>
<br>
______________________________________________________________________________<br>
Member info: <a href="https://lists.balabit.hu/mailman/listinfo/syslog-ng" rel="noreferrer" target="_blank">https://lists.balabit.hu/mailman/listinfo/syslog-ng</a><br>
Documentation: <a href="http://www.balabit.com/support/documentation/?product=syslog-ng" rel="noreferrer" target="_blank">http://www.balabit.com/support/documentation/?product=syslog-ng</a><br>
FAQ: <a href="http://www.balabit.com/wiki/syslog-ng-faq" rel="noreferrer" target="_blank">http://www.balabit.com/wiki/syslog-ng-faq</a><br>
<br>
</blockquote></div>