I am trying to move data from my Oracle database to Elasticserach via Logstash. I get this timezone error whenever i try to run logstash.
bin/logstash -f D:\\ElasticSearch\\logstash-8.10.2\\config\\oracle-config.conf
Error:
[2023-10-23T09:13:35,247][ERROR][logstash.agent ] Failed to execute action {:action=>LogStash::PipelineAction::Create/pipeline_id:main, :exception=>"Java::JavaLang::IllegalStateException", :message=>"Unable to configure plugins: (ArgumentError) Cannot determine
timezone from nil\n(secs:1698027213.249,utc~:\"2023-10-23 02:13:33.24900007247924805\",ltz~:nil)\n(etz:nil,tnz:\"ICT\",tziv:\"2.0.6\",tzidv:\"1.2023.3\",rv:\"3.1.0\",rp:\"java\",win:true,rorv:nil,astz:nil,eov:\"1.2.7\",eotnz:\"???\",eotnfz:\"???\",eotlzn:\"???\",\ndebian:nil,centos:nil,osx:nil)\nTry setting `ENV['TZ'] = 'Continent/City'` in your script (see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones)", :backtrace=>["org.logstash.config.ir.CompiledPipeline.<init>(CompiledPipeline.java:120)", "org.logstash.execution.AbstractPipelineExt.initialize(AbstractPipelineExt.java:186)"
This is my logstash config
input {
jdbc {
jdbc_connection_string => "jdbc:oracle:thin:@//[my_ip]/[my_service]"
jdbc_default_timezone => "Asia/Jakarta" //my timezone: UTC:+7
jdbc_user => "[my_user]"
jdbc_password => "******"
jdbc_driver_library => "C:/Users/kynk/Downloads/jdbc/lib/ojdbc8.jar"
jdbc_driver_class => "Java::oracle.jdbc.driver.OracleDriver"
statement => "SELECT *
from mb_config_cross_sell;"
}
}
output {
stdout{
codec => rubydebug
}
}
I also try to search and try those thread thread_1 thread_2 and more... but the result is the same (Cannot determine timezone from nil) Anyone can shred some light? Many thanks.