NOTE - If Kafka or Java is not used in the configuration of Syslog-ng (syslog-ng.conf) then it is not loaded and is not needed for Syslog-ng to run correctly. Any errors seen in the starting of Syslog-ng are to inform that Java is not present on the system, it does not try to load Java and has zero impact on runtime. Please disregard these messages and do not continue with the resolutions below.
The syslog-ng application uses libjvm.so to embed a Java Virtual Machine inside syslog-ng. Java libraries tend to have a large binary footprint which is why Java is not bundled with syslog-ng: it would increase the size of the syslog-ng package.
Instead, Syslog-ng uses Java installed on the host. The syslog-ng Premium Edition (PE) supports only Oracle Java 1.7 or later. Oracle Java is used both for development and testing of syslog-ng Java destination drivers.
1 - Use the following command to locate the Java library on the system find /usr -name libjvm.so
2 - Review the file /opt/syslog-ng/etc/environment and check the JAVA_LIBRARY_PATH and the LD_LIBRARY_PATH is correct.
3. If changes have been made in step 2 you must restart syslog-ng.
1. Install Oracle Java 1.7 or higher
2 - Uninstall and re-install syslog-ng PE which will automatically find libjvm.so.