Google Summer of Code 2015 syslog-ng
The syslog-ng application is an open source worldwide-known logging system.
With syslog-ng you can collect logs from any source, process them in near real-time and deliver them to a wide variety of destinations including e.g. HDFS, kafka, Elasticsearch.
The syslog-ng application allows you to flexibly collect, parse, classify, and correlate logs from across your infrastructure and store or route them to log analysis tools.
This was syslog-ng’s second year participating in the Google Summer of Code (GSoC) program as an independent organization. Four of our students did particularly great.
syslog-ng server monitoring with mobile application: Krishna Kannan
Krishna has created a mobile application to monitor the syslog-ng server, thereby giving the system administrators an advantage of monitoring the server from anywhere and anytime in the world. Administrators can track the status of their syslog-ng server using this mobile app and can also perform various actions, for example gathering statistics, and so on. This mobile application is available in GooglePlay Store. https://play.google.com/store/apps/details?id=com.mobile.syslogng.monitor
The future plan is to extend the application with other functions (for example: gathering metrics).
Java language binding for syslog-ng: Peter Szabo
The syslog-ng application had Java support, but it was only for destinations. Peter’s goal was to extend this Java support and make it possible to write Java plugins for every possible syslog-ng connector (filter, parser, rewrite rule, template-function, and source).
The source part is not completely finished, and it still requires some polishment. In spite of facing a lot of difficulties during the process, finally the goal was reached. After some fine-tuning, this project will be part of syslog-ng. It is available at: https://github.com/asdwsda/syslog-ng/tree/f/java-language-binding
The future plans with java sources and destinations are: JDBC source and destination.
Riak destination for syslog-ng: Parth Oberoi
Riak is an open source, distributed database. Parth has implemented the Riak destination, and also a C library for Riak. To achieve this goal, several other open source tools were required, such as Google Protocol Buffer, Erlang and protobuf-c. The result is a pull request-ready code. For details, see: https://github.com/hTrap/syslog-ng/wiki/Riak-Destination
The pull request is syslog-ng-Incubator-ready, which means that it could be easily integrated into the syslog-ng Incubator.
The main goal is to merge the Riak destination into the main repository of syslog-ng.
For the pull request of the main syslog-ng repository, see : https://github.com/balabit/syslog-ng/pull/630
The integration is currently in progress, if there are any unresolvable issues, there is a fallback option to syslog-ng Incubator.
Graphical configuration tool for syslog-ng: Andras Mamenyak
Andras has worked on a standalone graphical tool for creating syslog-ng configuration files. syslog-ng is very adaptable: it offers numerous different drivers with several options. Fortunately, it has an elegant and easy to understand configuration syntax and a comprehensive Administrator Guide that describes all the options. Still, especially for someone new to syslog-ng, Andras’ project created a very helpful tool, a configuration software with a graphical user interface that supports creating a base configuration. This project is available at: https://github.com/mamenyaka/syslog-ng-config-qt
We had a lot of promising candidates for our GSoC projects but in the end we had to select only one student per project and reject others. We want to keep in touch with these students and any other developer candidates by offering mentoring support and helping them become open source developers.
- As a side effect, the syslog-ng documentation source is now publicly available on GitHub.
(András Mamenyák has requested us to make the documentation source publicly available so that he could contribute to improving it as well. It is available at: https://github.com/balabit/syslog-ng-ose-guides )