Extending Logstash

There are two ways to extend Logstash: either by modifying the core or adding one more plugin to its repository. As we have already learned, there are four types of plugins - Input, Output, Filter, and Codec. Generating plugin in Logstash is very easy and needs only one command to be run; the generated plugin needs only our custom logic for it to be implemented.

Logstash plugins are written in Ruby programming language (http://www.ruby-lang.org/en/). These plugins are actually ruby gems. To be able to write effective gems, you should be familiar with Ruby.

In this section, we will develop our own input plugin, which will fetch data from a web service. The complete code of the plugin is available at GitHub at https://github.com/kravigupta/mastering-elastic-stack-code-files/tree/5.1.1/Chapter07/logstash-input-weather ...

Get Mastering Elastic Stack now with the O’Reilly learning platform.

O’Reilly members experience live online training, plus books, videos, and digital content from nearly 200 publishers.