[syslog-ng] syslog-ng 3.7.3 with Java enable Can't find class when startup
Ho, Ming
Mingho at visa.com
Wed May 4 02:11:14 CEST 2016
Hi,
I use the following conf file to start syslog-ng 3.7.3 complied with Java supported version and got the following error:
# syslog-ng -f /opt/syslog-ng/syslog-ng.conf
[2016-05-03T23:13:54.191256] Can't find class; class_name='org/syslog_ng/SyslogNgClassLoader'
**
ERROR:modules/java/native/java_machine.c:126:java_machine_get_class_loader: assertion failed: (self->loader)
syslog-ng.conf:
@version: 3.7
@include "scl.conf"
@module mod-java
source s_syslog {
syslog();
};
destination d_elastic {
java(
class_path("/usr/lib64/syslog-ng/java-modules/*.jar:/usr/share/elasticsearch/lib/*.jar")
class_name("org.syslog_ng.elasticsearch.ElasticSearchDestination")
option("index", "syslog-ng_${YEAR}.${MONTH}.${DAY}")
option("type", "test")
option("client-mode", "transport")
option("server", "sl73ovnapd018")
option("port", "9200")
option("flush-limit", "10")
);
};
log {
source(s_syslog);
destination(d_elastic);
flags(flow-control);
};
I found previous post from last year with the exact same error: https://github.com/balabit/syslog-ng/issues/620
According to the post the problem was make install fail to copy "syslog-ng-core.jar" and/or "syslog-ng-common.jar" to target directory. Including these two files in the directory referenced by the class_path should solve the problem.
I have these two files included in my class_path already but still got the same error:
-rw-r--r-- 1 root root 11411 May 2 06:50 /usr/lib64/syslog-ng/java-modules/syslog-ng-core.jar
-rw-r--r-- 1 root root 12536 May 2 06:51 /usr/lib64/syslog-ng/java-modules/syslog-ng-common.jar
Any help is highly appreciated.
Ming Ho
More information about the syslog-ng
mailing list