logstash-plugins / logstash-input-sqlite

Apache License 2.0
4 stars 10 forks source link

Java::OrgLogstash::MissingConverterException on baseline config #12

Open PhaedrusTheGreek opened 5 years ago

PhaedrusTheGreek commented 5 years ago
 % sqlite /tmp/example.db
    sqlite> CREATE TABLE weblogs (
        id INTEGER PRIMARY KEY AUTOINCREMENT,
        ip STRING,
        request STRING,
        response INTEGER);
    sqlite> INSERT INTO weblogs (ip, request, response)
        VALUES ("1.2.3.4", "/index.html", 200);
input {
      sqlite {
        path => "/tmp/example.db"
      }
    }

filter {}

output {
    stdout { codec => rubydebug }
 }

Results in:

[2019-09-11T16:22:23,317][ERROR][logstash.pipeline        ] A plugin had an unrecoverable error. Will restart this plugin.
  Pipeline_id:main
  Plugin: <LogStash::Inputs::Sqlite path=>"/tmp/example.db", id=>"e277edb8d2780f79bc7e7d9877fa6304afda66e2ceb921437520334083b99db2", enable_metric=>true, codec=><LogStash::Codecs::Plain id=>"plain_b7a6bed8-80b3-4f06-9c13-1537e0b2701e", enable_metric=>true, charset=>"UTF-8">, batch=>5>
  Error: Missing Converter handling for full class name=org.jruby.gen.RubyObject30, simple name=RubyObject30
  Exception: Java::OrgLogstash::MissingConverterException
  Stack: org.logstash.Valuefier.fallbackConvert(Valuefier.java:97)
org.logstash.Valuefier.convert(Valuefier.java:75)
org.logstash.ConvertedMap$1.visit(ConvertedMap.java:35)
org.logstash.ConvertedMap$1.visit(ConvertedMap.java:29)
org.jruby.RubyHash.visitLimited(RubyHash.java:690)
org.jruby.RubyHash.visitAll(RubyHash.java:675)
org.logstash.ConvertedMap.newFromRubyHash(ConvertedMap.java:69)
org.logstash.ext.JrubyEventExtLibrary$RubyEvent.ruby_initialize(JrubyEventExtLibrary.java:72)
...
mrepisch commented 5 years ago

I got excatly the same Problem. Is there a solution to it?. The table i want to read from just holds timestamps, int, and strings. I woud really appriciate any help. Thx

bastianhjaeger commented 4 years ago

Any news on this one. I faced the same issue trying the example with logstash-7.5.2.

[2020-02-17T13:15:53,779][ERROR][logstash.javapipeline ][main] A plugin had an unrecoverable error. Will restart this plugin. Pipeline_id:main Plugin: <LogStash::Inputs::Sqlite path=>"/home/bastianj/tmp/logstash/example.db", id=>"1f2ec1a4dfe347129e68d9eed9cfeb69c5e78bea1bd79bc98d8ba1e43d28f5f1", enable_metric=>true, codec=><LogStash::Codecs::Plain id=>"plain_a959d8f6-98ed-49c7-9670-fe73a81dd5f4", enable_metric=>true, charset=>"UTF-8">, batch=>5> Error: Missing Converter handling for full class name=org.jruby.gen.RubyObject30, simple name=RubyObject30 Exception: Java::OrgLogstash::MissingConverterException Stack: org.logstash.Valuefier.fallbackConvert(Valuefier.java:98)

9shahs9 commented 4 years ago
[ERROR] 2020-05-21 23:38:01.546 [[main]<sqlite] javapipeline - A plugin had an unrecoverable error. Will restart this plugin.
  Pipeline_id:main
  Plugin: <LogStash::Inputs::Sqlite path=>"/home/xxx.sqlite", exclude_tables=>["xxx"], id=>"382f7286138524b4427ccf6d1b484ca384db3ef3edd73c2253bcc524ddec1a8b", type=>"moz_places", enable_metric=>true, codec=><LogStash::Codecs::Plain id=>"plain_cee09949-c1ab-4a11-bce8-dce5fdccbe53", enable_metric=>true, charset=>"UTF-8">, batch=>5>
  Error: Missing Converter handling for full class name=org.jruby.gen.RubyObject31, simple name=RubyObject31
  Exception: Java::OrgLogstash::MissingConverterException
  Stack: org.logstash.Valuefier.fallbackConvert(Valuefier.java:118)

Similar exception, is there a solution?

bramcod2 commented 4 years ago

this Pull Request seems to have fixed it for logstash 7.7.1

infoseckev commented 3 years ago

I am having the same error in version 7.14.0. Is there a fix?

bramcod2 commented 3 years ago

I am having the same error in version 7.14.0. Is there a fix?

Did you try applying this Pull Request? It means you'll have to pull the code for this branch and build the plugin.

jledesma84 commented 7 months ago

Any updates on this issue? I am still encountering the error while using Logstash 8.13.2. I tried applying the changes suggested by @bramcod2, but unfortunately, it did not work.

Error: Missing Converter handling for full class name=org.jruby.gen.RubyObject31, simple name=RubyObject31 Exception: Java::OrgLogstash::MissingConverterException Stack: org.logstash.Valuefier.fallbackConvert(Valuefier.java:122) org.logstash.Valuefier.convert(Valuefier.java:100) org.logstash.ConvertedMap$1.visit(ConvertedMap.java:91) org.logstash.ConvertedMap$1.visit(ConvertedMap.java:85) org.jruby.RubyHash.visitLimited(RubyHash.java:760) org.jruby.RubyHash.visitAll(RubyHash.java:745) org.logstash.ConvertedMap.newFromRubyHash(ConvertedMap.java:125) org.logstash.ext.JrubyEventExtLibrary$RubyEvent.ruby_initialize(JrubyEventExtLibrary.java:97) org.logstash.ext.JrubyEventExtLibrary$RubyEvent$INVOKER$i$0$1$ruby_initialize.call(JrubyEventExtLibrary$RubyEvent$INVOKER$i$0$1$ruby_initialize.gen) org.jruby.internal.runtime.methods.JavaMethod$JavaMethodN.call(JavaMethod.java:825) org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:471) org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:259) org.jruby.RubyClass.newInstance(RubyClass.java:904) org.jruby.RubyClass$INVOKER$i$newInstance.call(RubyClass$INVOKER$i$newInstance.gen) org.jruby.internal.runtime.methods.JavaMethod$JavaMethodZeroOrOneOrNBlock.call(JavaMethod.java:355) org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:466) org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:244) org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:318) org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:66) org.jruby.ir.interpreter.Interpreter.INTERPRET_BLOCK(Interpreter.java:116) org.jruby.runtime.MixedModeIRBlockBody.commonYieldPath(MixedModeIRBlockBody.java:136) org.jruby.runtime.IRBlockBody.doYield(IRBlockBody.java:170) org.jruby.runtime.BlockBody.yield(BlockBody.java:108) org.jruby.runtime.Block.yield(Block.java:189) org.jruby.RubyArray.each(RubyArray.java:1989) org.jruby.RubyArray$INVOKER$i$0$0$each.call(RubyArray$INVOKER$i$0$0$each.gen) org.jruby.internal.runtime.methods.JavaMethod$JavaMethodZeroBlock.call(JavaMethod.java:561) org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:446) org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:92) org.jruby.runtime.callsite.CachingCallSite.callIter(CachingCallSite.java:103) org.jruby.ir.instructions.CallBase.interpret(CallBase.java:545) org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:367) org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:66) org.jruby.ir.interpreter.Interpreter.INTERPRET_BLOCK(Interpreter.java:116) org.jruby.runtime.MixedModeIRBlockBody.commonYieldPath(MixedModeIRBlockBody.java:136) org.jruby.runtime.IRBlockBody.yieldSpecificMultiArgsCommon(IRBlockBody.java:117) org.jruby.runtime.IRBlockBody.yieldSpecific(IRBlockBody.java:122) org.jruby.runtime.Block.yieldSpecific(Block.java:176) org.jruby.RubyHash$10.visit(RubyHash.java:1619) org.jruby.RubyHash$10.visit(RubyHash.java:1613) org.jruby.RubyHash.visitLimited(RubyHash.java:760) org.jruby.RubyHash.visitAll(RubyHash.java:745) org.jruby.RubyHash.iteratorVisitAll(RubyHash.java:1577) org.jruby.RubyHash.each_pairCommon(RubyHash.java:1608) org.jruby.RubyHash.each(RubyHash.java:1601) org.jruby.RubyHash$INVOKER$i$0$0$each.call(RubyHash$INVOKER$i$0$0$each.gen) org.jruby.internal.runtime.methods.JavaMethod$JavaMethodZeroBlock.call(JavaMethod.java:561) org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:446) org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:92) org.jruby.runtime.callsite.CachingCallSite.callIter(CachingCallSite.java:103) org.jruby.ir.instructions.CallBase.interpret(CallBase.java:545) org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:367) org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:66) org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:82) org.jruby.internal.runtime.methods.MixedModeIRMethod.INTERPRET_METHOD(MixedModeIRMethod.java:201) org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:188) org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:220) org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:466) org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:244) org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:318) org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:66) org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:82) org.jruby.internal.runtime.methods.MixedModeIRMethod.INTERPRET_METHOD(MixedModeIRMethod.java:201) org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:188) org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:220) org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:466) org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:244) org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:318) org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:66) org.jruby.ir.interpreter.Interpreter.INTERPRET_BLOCK(Interpreter.java:116) org.jruby.runtime.MixedModeIRBlockBody.commonYieldPath(MixedModeIRBlockBody.java:136) org.jruby.runtime.IRBlockBody.call(IRBlockBody.java:66) org.jruby.runtime.IRBlockBody.call(IRBlockBody.java:58) org.jruby.runtime.Block.call(Block.java:144) org.jruby.RubyProc.call(RubyProc.java:352) org.jruby.internal.runtime.RubyRunnable.run(RubyRunnable.java:111) java.base/java.lang.Thread.run(Thread.java:840) ^C[2024-04-16T13:56:40,202][WARN ][logstash.runner ] SIGINT received. Shutting down.