Contributing to Logstash
editContributing to Logstash
editBefore version 1.5, Logstash included all plugins in each release. This made it easy to make use of any plugin, but it complicated plugin development—a new release of Logstash became necessary if a plugin needed patching. Since version 1.5, all plugins are independent of the Logstash core. Now you can add your own input, codec, filter, or output plugins to Logstash much more easily!
Adding plugins
editSince plugins can now be developed and deployed independently of the Logstash core, there are documents which guide you through the process of coding and deploying your own plugins:
Plugin API Changes [2.0] Added in 2.0.
editThe 2.0 release of Logstash changes how input plugins shut down to increase shutdown reliability. There are three methods
for plugin shutdown: stop, stop?, and close.
-
Call the
stopmethod from outside the plugin thread. This method signals the plugin to stop. -
The
stop?method returnstruewhen thestopmethod has already been called for that plugin. -
The
closemethod performs final bookkeeping and cleanup after the plugin’srunmethod and the plugin’s thread both exit. Theclosemethod is a a new name for the method known asteardownin previous versions of Logstash.
The shutdown, finished, finished?, running?, and terminating? methods are redundant and no longer present in the
Plugin Base class.
Sample code for the new plugin shutdown APIs is available.
Extending Logstash core
editWe also welcome contributions and bug fixes to the Logstash core feature set.
Please read through our contribution guide, and the Logstash readme document.