Open jrselzer opened 4 years ago
Logstash keystore is working fine with several configuration files but fails in Yaml file for IBM MQ access.
input { jms { yaml_file => "/appl/elk/logstash-6.8.1/config/jmsmq.yml" yaml_section => "wmq" include_header => true include_properties => true include_body => true use_jms_timestamp => true destination => "BRK.BUSINESSEVENTLOG" interval => 3 runner => async add_field => { "source" => "BRK.BUSINESSEVENTLOG" "queuemanager" => "DPQBRK" "index_prefix" => "retup_ps_b_bel" } } }
wmq: :factory: com.ibm.mq.jms.MQQueueConnectionFactory :queue_manager: DPQBRK :host_name: mq.localnetwork.com :channel: DPQBRK.WART.CN :port: 1419
:transport_type: 1 :username: wart :password: ${wart} :require_jars: - "/appl/elk/logstash-6.8.1/lib/jms/jms-8.0.0.11.jar" - "/appl/elk/logstash-6.8.1/lib/jms/com.ibm.mq-8.0.0.11.jar" - "/appl/elk/logstash-6.8.1/lib/jms/com.ibm.mqjms-8.0.0.11.jar" - "/appl/elk/logstash-6.8.1/lib/jms/com.ibm.mq.allclient-8.0.0.11.jar"
Sample Data: logstash-plain.log [WARN ][logstash.inputs.jms ] JMS Consumer Died {:exception=>"Java::ComIbmMsgClientJms::DetailedJMSSecurityException", :exception_message=>"JMSWMQ2013: The security authentication was not valid that was supplied for QueueManager 'DPQBRK' with connection mode 'Client' and host name 'myhost(1419)'.", :backtrace=>["com.ibm.msg.client.wmq.common.internal.Reason.reasonToException(com/ibm/msg/client/wmq/common/internal/Reason.java:531)", "com.ibm.msg.client.wmq.common.internal.Reason.createException(com/ibm/msg/client/wmq/common/internal/Reason.java:215)", "com.ibm.msg.client.wmq.internal.WMQConnection.(com/ibm/msg/client/wmq/internal/WMQConnection.java:423)" , "com.ibm.msg.client.wmq.factories.WMQConnectionFactory.createV7ProviderConnection(com/ibm/msg/client/wmq/factories/WMQConnectionFactory.java:8475)", "com.ibm.msg.client.wmq.factories.WMQConnectionFactory.createProviderConnection(com/ibm/m sg/client/wmq/factories/WMQConnectionFactory.java:7814)", "com.ibm.msg.client.jms.admin.JmsConnectionFactoryImpl._createConnection(com/ibm/msg/client/jms/admin/ JmsConnectionFactoryImpl.java:299)", "com.ibm.msg.client.jms.admin.JmsConnectionFactoryImpl.createConnection(com/ibm/msg/client/jms/admin/JmsConnectionFactoryImpl.java:236)", "com.ibm.mq.jms.MQConnectionFactory.createCommonConnection(com/ibm/mq/jms/MQConnectionFactory.java:6016)", "com.ibm.mq.jms.MQQueueConnectionFactory.createQueueConnection(com/ibm/mq/jms/MQQueueConnectionFactory.java:136)", "co m.ibm.mq.jms.MQQueueConnectionFactory.createConnection(com/ibm/mq/jms/MQQueueConnectionFactory.java:209)", "java.lang.reflect.Method.invoke(java/lang/reflect/Method.java:498)", "org.jruby.javasupport.JavaMethod.invokeDirectWithExceptionHandling(org/jruby/javasupport/JavaMethod.java:470)", "org.jruby.javasupport.JavaMethod.invokeDirect(org/jruby/javasupport/JavaMethod.java:328)", "RUBY.initialize(/appl/elk/logstash-6.8.1/vendor/bundle/jruby/2.5.0/gems/jruby-jms-1.3.0-java/lib/jms/connection.rb:202)", "org.jruby.RubyClass.newInstance(org/jruby/RubyClass.java:894)", "org.jruby.RubyClass$INVOKER$i$newInstance.call(org/jruby/RubyClass$INVOKER$i$newInstance.gen)", "RUBY.run(/appl/elk/logstash-6.8.1/vendor/bundle/jruby/2.5.0/gems/logstash-input-jms-3.1.1-java/lib/logstash/inputs/jms.rb:225)", "appl.elk.logstash_minus_6_dot_8_dot_1.logstash_minus_core.lib.logstash.pipeline.inputworker(/appl/elk/logstash-6.8.1/logstash-core/lib/logstash/pipeline.rb:426)", "appl.elk.logstash_minus_6_dot_8_dot_1.logstash_minus_core.lib.logstash.pipeline.RUBY$method$inputworker$0$VARARGS(appl/elk/logstash_minus_6_dot_8_dot_1/logstash_minus_core/lib/logstash//appl/elk/logstash-6.8.1/logstash-core/lib/logstash/pipeline.rb)", "appl.elk.logstash_minus_6_dot_8_dot_1.logstash_minus_core.lib.logstash.pipeline.start_input(/appl/elk/logstash-6.8.1/logstash-core/lib/logstash/pipeline.rb:420)", "org.jruby.RubyProc.call(org/jruby/RubyProc.java:295)", "org.jruby.RubyProc.call(org/jruby/RubyProc.java:274)", "org.jruby.RubyProc.call(org/jruby/RubyProc.java:270)", "java.lang.Thread.run(java/lang/Thread.java:748)"], :root_cause=>{:exception=>"Java::ComIbmMq::MQException", :exception_message=>"JMSCMQ0001: WebSphere MQ call failed with compcode '2' ('MQCC_FAILED') reason '2035' ('MQRC_NOT_AUTHORIZED')."}}
Steps to Reproduce: start Logstash with this configuration
Logstash keystore is working fine with several configuration files but fails in Yaml file for IBM MQ access.
vi:syntax=yaml
input { jms { yaml_file => "/appl/elk/logstash-6.8.1/config/jmsmq.yml" yaml_section => "wmq" include_header => true include_properties => true include_body => true use_jms_timestamp => true destination => "BRK.BUSINESSEVENTLOG" interval => 3 runner => async add_field => { "source" => "BRK.BUSINESSEVENTLOG" "queuemanager" => "DPQBRK" "index_prefix" => "retup_ps_b_bel" } } }
wmq: :factory: com.ibm.mq.jms.MQQueueConnectionFactory :queue_manager: DPQBRK :host_name: mq.localnetwork.com :channel: DPQBRK.WART.CN :port: 1419
Transport Type: com.ibm.mq.jms.JMSC::MQJMS_TP_CLIENT_MQ_TCPIP
Sample Data: logstash-plain.log [WARN ][logstash.inputs.jms ] JMS Consumer Died {:exception=>"Java::ComIbmMsgClientJms::DetailedJMSSecurityException", :exception_message=>"JMSWMQ2013: The security authentication was not valid that was supplied for QueueManager 'DPQBRK' with connection mode 'Client' and host name 'myhost(1419)'.", :backtrace=>["com.ibm.msg.client.wmq.common.internal.Reason.reasonToException(com/ibm/msg/client/wmq/common/internal/Reason.java:531)", "com.ibm.msg.client.wmq.common.internal.Reason.createException(com/ibm/msg/client/wmq/common/internal/Reason.java:215)", "com.ibm.msg.client.wmq.internal.WMQConnection.(com/ibm/msg/client/wmq/internal/WMQConnection.java:423)"
, "com.ibm.msg.client.wmq.factories.WMQConnectionFactory.createV7ProviderConnection(com/ibm/msg/client/wmq/factories/WMQConnectionFactory.java:8475)", "com.ibm.msg.client.wmq.factories.WMQConnectionFactory.createProviderConnection(com/ibm/m
sg/client/wmq/factories/WMQConnectionFactory.java:7814)", "com.ibm.msg.client.jms.admin.JmsConnectionFactoryImpl._createConnection(com/ibm/msg/client/jms/admin/
JmsConnectionFactoryImpl.java:299)", "com.ibm.msg.client.jms.admin.JmsConnectionFactoryImpl.createConnection(com/ibm/msg/client/jms/admin/JmsConnectionFactoryImpl.java:236)", "com.ibm.mq.jms.MQConnectionFactory.createCommonConnection(com/ibm/mq/jms/MQConnectionFactory.java:6016)", "com.ibm.mq.jms.MQQueueConnectionFactory.createQueueConnection(com/ibm/mq/jms/MQQueueConnectionFactory.java:136)", "co
m.ibm.mq.jms.MQQueueConnectionFactory.createConnection(com/ibm/mq/jms/MQQueueConnectionFactory.java:209)", "java.lang.reflect.Method.invoke(java/lang/reflect/Method.java:498)", "org.jruby.javasupport.JavaMethod.invokeDirectWithExceptionHandling(org/jruby/javasupport/JavaMethod.java:470)", "org.jruby.javasupport.JavaMethod.invokeDirect(org/jruby/javasupport/JavaMethod.java:328)", "RUBY.initialize(/appl/elk/logstash-6.8.1/vendor/bundle/jruby/2.5.0/gems/jruby-jms-1.3.0-java/lib/jms/connection.rb:202)", "org.jruby.RubyClass.newInstance(org/jruby/RubyClass.java:894)", "org.jruby.RubyClass$INVOKER$i$newInstance.call(org/jruby/RubyClass$INVOKER$i$newInstance.gen)", "RUBY.run(/appl/elk/logstash-6.8.1/vendor/bundle/jruby/2.5.0/gems/logstash-input-jms-3.1.1-java/lib/logstash/inputs/jms.rb:225)", "appl.elk.logstash_minus_6_dot_8_dot_1.logstash_minus_core.lib.logstash.pipeline.inputworker(/appl/elk/logstash-6.8.1/logstash-core/lib/logstash/pipeline.rb:426)", "appl.elk.logstash_minus_6_dot_8_dot_1.logstash_minus_core.lib.logstash.pipeline.RUBY$method$inputworker$0$VARARGS(appl/elk/logstash_minus_6_dot_8_dot_1/logstash_minus_core/lib/logstash//appl/elk/logstash-6.8.1/logstash-core/lib/logstash/pipeline.rb)", "appl.elk.logstash_minus_6_dot_8_dot_1.logstash_minus_core.lib.logstash.pipeline.start_input(/appl/elk/logstash-6.8.1/logstash-core/lib/logstash/pipeline.rb:420)", "org.jruby.RubyProc.call(org/jruby/RubyProc.java:295)", "org.jruby.RubyProc.call(org/jruby/RubyProc.java:274)", "org.jruby.RubyProc.call(org/jruby/RubyProc.java:270)", "java.lang.Thread.run(java/lang/Thread.java:748)"], :root_cause=>{:exception=>"Java::ComIbmMq::MQException", :exception_message=>"JMSCMQ0001: WebSphere MQ call failed with compcode '2' ('MQCC_FAILED') reason '2035' ('MQRC_NOT_AUTHORIZED')."}}
Steps to Reproduce: start Logstash with this configuration