JDBC input plugin error for cassandra for Logstash


(Nishad Nazar) #1

Hi,
I have followed almost every link in this community and all over, still not able to get Cassandra data to logstash using jdbc input plugin.
Intially i USed cassandra jdbc driver from Maven repository and driver class being '"org.apache.cassandra.cql.jdbc.CassandraDriver'

But now I'm using cassandra jdbc from dbschema and class driver is 'com.dbschema.CassandraJdbcDriver'

My logstash conf file is in conf.d and the file is:
input {
jdbc {
# cassandra jdbc connection string to our database, thingsboard
jdbc_connection_string => "jdbc:cassandra://localhost:9042/thingsboard"
# The user we wish to execute our statement as
jdbc_user => ""
jdbc_password => ""
# The path to our downloaded jdbc driver
jdbc_driver_library => "/home/ubuntu_admin/cassandra_driver/cassandrajdbc1.1.jar"
# The name of the driver class for Cassandra
#jdbc_driver_class => "org.apache.cassandra.cql.jdbc.CassandraDriver"
jdbc_driver_class => "com.dbschema.CassandraJdbcDriver"
# our query
statement => "SELECT * from ts_kv_cf"

    clean_run => true

    jdbc_paging_enabled => "true"
    jdbc_page_size => "50000"
}

}

output {
stdout {codec => json_lines }
elasticsearch {
"hosts" => "localhost:9200"
"index" => "logs"
"document_type" => "data"

}

}

THis is my error in log:
Unable to connect to database. Tried 1 times {:error_message=>"Java::JavaLang::NoClassDefFoundError: com/da$
A plugin had an unrecoverable error. Will restart this plugin.
Pipeline_id:main
Plugin: <LogStash::Inputs::Jdbc jdbc_paging_enabled=>true, jdbc_password=>, statement=>"SELECT * from ts_kv_cf", jdbc_page_size=>50000, clean_run=>true, jd$
Error: Java::JavaLang::NoClassDefFoundError: com/datastax/driver/core/policies/RetryPolicy
Exception: Sequel::DatabaseConnectionError
Stack: com.dbschema.CassandraJdbcDriver.connect(com/dbschema/CassandraJdbcDriver.java:38)