【发布时间】:2021-03-02 04:41:14
【问题描述】:
我正在使用 logstash 管道将数据从 mysql db 导入到 elastic 中,其中包含一些由 aes-128-cbc 加密的字段。所以我需要在解密后将这些字段存储到弹性中。 我正在使用 logstash-filter-cipher 插件并配置为 -
cipher {
algorithm => "aes-128-cbc"
cipher_padding => 1
# Use a static "iv"
iv => "IvWa7bK1lqDUxE6d"
key => "kYr2U8oP9AjkYm3V"
key_size => 16
mode => "decrypt"
source => "current_company"
target => "company"
base64 => true
}
但我在管道执行时遇到以下错误-
[2021-03-02T04:24:29,557][ERROR][logstash.filters.cipher ] Unknown setting 'iv' for cipher
[2021-03-02T04:24:29,577][ERROR][logstash.agent ] Failed to execute action {:action=>LogStash::PipelineAction::Create/pipeline_id:main, :exception=>"Java::JavaLang::IllegalStateException", :message=>"Unable to configure plugins: (ConfigurationError) Something is wrong with your configuration.", :backtrace=>["org.logstash.config.ir.CompiledPipeline.<init>(CompiledPipeline.java:119)", "org.logstash.execution.JavaBasePipelineExt.initialize(JavaBasePipelineExt.java:80)", "org.logstash.execution.JavaBasePipelineExt$INVOKER$i$1$0$initialize.call(JavaBasePipelineExt$INVOKER$i$1$0$initialize.gen)", "org.jruby.internal.runtime.methods.JavaMethod$JavaMethodN.call(JavaMethod.java:837)", "org.jruby.ir.runtime.IRRuntimeHelpers.instanceSuper(IRRuntimeHelpers.java:1169)", "org.jruby.ir.runtime.IRRuntimeHelpers.instanceSuperSplatArgs(IRRuntimeHelpers.java:1156)", "org.jruby.ir.targets.InstanceSuperInvokeSite.invoke(InstanceSuperInvokeSite.java:39)", "usr.share.logstash.logstash_minus_core.lib.logstash.java_pipeline.RUBY$method$initialize$0(/usr/share/logstash/logstash-core/lib/logstash/java_pipeline.rb:43)", "org.jruby.internal.runtime.methods.CompiledIRMethod.call(CompiledIRMethod.java:82)", "org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:70)", "org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:332)", "org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:86)", "org.jruby.RubyClass.newInstance(RubyClass.java:939)", "org.jruby.RubyClass$INVOKER$i$newInstance.call(RubyClass$INVOKER$i$newInstance.gen)", "org.jruby.ir.targets.InvokeSite.invoke(InvokeSite.java:207)", "usr.share.logstash.logstash_minus_core.lib.logstash.pipeline_action.create.RUBY$method$execute$0(/usr/share/logstash/logstash-core/lib/logstash/pipeline_action/create.rb:52)", "usr.share.logstash.logstash_minus_core.lib.logstash.pipeline_action.create.RUBY$method$execute$0$__VARARGS__(/usr/share/logstash/logstash-core/lib/logstash/pipeline_action/create.rb)", "org.jruby.internal.runtime.methods.CompiledIRMethod.call(CompiledIRMethod.java:82)", "org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:70)", "org.jruby.ir.targets.InvokeSite.invoke(InvokeSite.java:207)", "usr.share.logstash.logstash_minus_core.lib.logstash.agent.RUBY$block$converge_state$2(/usr/share/logstash/logstash-core/lib/logstash/agent.rb:342)", "org.jruby.runtime.CompiledIRBlockBody.callDirect(CompiledIRBlockBody.java:138)", "org.jruby.runtime.IRBlockBody.call(IRBlockBody.java:58)", "org.jruby.runtime.IRBlockBody.call(IRBlockBody.java:52)", "org.jruby.runtime.Block.call(Block.java:139)", "org.jruby.RubyProc.call(RubyProc.java:318)", "org.jruby.internal.runtime.RubyRunnable.run(RubyRunnable.java:105)", "java.base/java.lang.Thread.run(Thread.java:834)"]}
warning: thread "Converge PipelineAction::Create<main>" terminated with exception (report_on_exception is true):
LogStash::Error: Don't know how to handle `Java::JavaLang::IllegalStateException` for `PipelineAction::Create<main>`
create at org/logstash/execution/ConvergeResultExt.java:129
add at org/logstash/execution/ConvergeResultExt.java:57
converge_state at /usr/share/logstash/logstash-core/lib/logstash/agent.rb:355
[2021-03-02T04:24:29,588][ERROR][logstash.agent ] An exception happened when converging configuration {:exception=>LogStash::Error, :message=>"Don't know how to handle `Java::JavaLang::IllegalStateException` for `PipelineAction::Create<main>`", :backtrace=>["org/logstash/execution/ConvergeResultExt.java:129:in `create'", "org/logstash/execution/ConvergeResultExt.java:57:in `add'", "/usr/share/logstash/logstash-core/lib/logstash/agent.rb:355:in `block in converge_state'"]}
[2021-03-02T04:24:29,624][FATAL][logstash.runner ] An unexpected error occurred! {:error=>#<LogStash::Error: Don't know how to handle `Java::JavaLang::IllegalStateException` for `PipelineAction::Create<main>`>, :backtrace=>["org/logstash/execution/ConvergeResultExt.java:129:in `create'", "org/logstash/execution/ConvergeResultExt.java:57:in `add'", "/usr/share/logstash/logstash-core/lib/logstash/agent.rb:355:in `block in converge_state'"]}
warning: thread "Api Webserver" terminated with exception (report_on_exception is true):
NameError: uninitialized constant Rack::Builder
const_missing at org/jruby/RubyModule.java:3760
app at /usr/share/logstash/logstash-core/lib/logstash/api/rack_app.rb:97
start_webserver at /usr/share/logstash/logstash-core/lib/logstash/webserver.rb:99
run at /usr/share/logstash/logstash-core/lib/logstash/webserver.rb:60
each at org/jruby/RubyRange.java:526
each_with_index at org/jruby/RubyEnumerable.java:1258
run at /usr/share/logstash/logstash-core/lib/logstash/webserver.rb:55
start_webserver at /usr/share/logstash/logstash-core/lib/logstash/agent.rb:401
Exception in thread "Api Webserver" java.lang.NullPointerException
at org.jruby.internal.runtime.ThreadService.getMainThread(ThreadService.java:233)
at org.jruby.RubyThread.exceptionRaised(RubyThread.java:1822)
at org.jruby.internal.runtime.RubyRunnable.run(RubyRunnable.java:112)
at java.base/java.lang.Thread.run(Thread.java:834)
[2021-03-02T04:24:29,652][ERROR][org.logstash.Logstash ] java.lang.IllegalStateException: Logstash stopped processing because of an error: (SystemExit) exit
谁能帮我找出我的配置中的问题。
【问题讨论】:
标签: elasticsearch logstash logstash-grok logstash-configuration