Hi, i'm new to Elastic Stack and i try to push data from Oracle database to my Elasticsearch via Logstash but i'm stuck at this error
Unable to configure plugins: (ArgumentError) Cannot determine timezone from nil
my pipeline
input {
jdbc {
jdbc_driver_library => "D:/work/Oracle/jdbc/lib/ojdbc8.jar" # Path to Oracle Instant Client
jdbc_driver_class => "Java::oracle.jdbc.driver.OracleDriver"
jdbc_connection_string => "jdbc:oracle:thin:@localhost:1521:ORCL"
jdbc_default_timezone => "Asia/Bangkok"
jdbc_validate_connection => true
jdbc_user => "kynk"
jdbc_password => "*****"
statement => "SELECT * FROM MB_CONFIG_CROSS_SELL"
}
}
output {
elasticsearch {
hosts => ["http://localhost:9200"]
index => "mb_config_cross_sell"
user => "elastic"
password => "*******"
}
}
error
[2023-10-09T20:14:50,626][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:1696857288.443,utc~:\"2023-10-09 13:14:48.44300007820129395\",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...
- I try to set different timezone as UTC, still get this error.
- Try to set enviroment variable from window as TZ='Asia/Bangkok' / UTC still this error
- Check my DB Oracle timezone
SELECT DBTIMEZONE FROM DUAL; return +00:00 (UTC), my timezone: +7:00UTC as Asia/Bangkok - my command
bin/logstash -f D:\\kynk\\ElasticSearch\\logstash-8.10.2\\config\\oracle-elastic.conf --path.settings D:\\kynk\\ElasticSearch\\logstash-8.10.2\\config
i try to add with/without --path.settings still this error
Anyone can shred some light. I'm real stuck. Many thanks.