anthonygauthier/jmeter-elasticsearch-backend-listener

Getting error in JMeter Log with Backend Listener

qashubham opened this issue ยท 13 comments

2019-07-22 14:21:02,095 INFO o.a.j.v.b.BackendListener: Backend Listener: Starting worker with class: class io.github.delirius325.jmeter.backendlistener.elasticsearch.ElasticsearchBackendClient and queue capacity: 5000
2019-07-22 14:21:02,097 INFO o.a.j.v.b.BackendListener: Backend Listener: Started worker with class: class io.github.delirius325.jmeter.backendlistener.elasticsearch.ElasticsearchBackendClient
2019-07-22 14:21:02,098 ERROR o.a.j.JMeter: Uncaught exception:
java.lang.IllegalStateException: Failed calling setupTest
at org.apache.jmeter.visualizers.backend.BackendListener.testStarted(BackendListener.java:339) ~[ApacheJMeter_components.jar:5.1.1 r1855137]
at org.apache.jmeter.visualizers.backend.BackendListener.testStarted(BackendListener.java:292) ~[ApacheJMeter_components.jar:5.1.1 r1855137]
at org.apache.jmeter.engine.StandardJMeterEngine.notifyTestListenersOfStart(StandardJMeterEngine.java:206) ~[ApacheJMeter_core.jar:5.1.1 r1855137]
at org.apache.jmeter.engine.StandardJMeterEngine.run(StandardJMeterEngine.java:381) ~[ApacheJMeter_core.jar:5.1.1 r1855137]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_212]
Caused by: java.lang.IllegalStateException: Unable to connect to the ElasticSearch engine
at io.github.delirius325.jmeter.backendlistener.elasticsearch.ElasticsearchBackendClient.setupTest(ElasticsearchBackendClient.java:145) ~[jmeter.backendlistener.elasticsearch-2.6.7.jar:?]
at org.apache.jmeter.visualizers.backend.BackendListener.testStarted(BackendListener.java:337) ~[ApacheJMeter_components.jar:5.1.1 r1855137]
... 4 more
Caused by: java.lang.IllegalStateException: could not create the default ssl context
at org.elasticsearch.client.RestClientBuilder.createHttpClient(RestClientBuilder.java:234) ~[jmeter.backendlistener.elasticsearch-2.6.7.jar:?]
at org.elasticsearch.client.RestClientBuilder.access$000(RestClientBuilder.java:42) ~[jmeter.backendlistener.elasticsearch-2.6.7.jar:?]
at org.elasticsearch.client.RestClientBuilder$1.run(RestClientBuilder.java:198) ~[jmeter.backendlistener.elasticsearch-2.6.7.jar:?]
at org.elasticsearch.client.RestClientBuilder$1.run(RestClientBuilder.java:195) ~[jmeter.backendlistener.elasticsearch-2.6.7.jar:?]
at java.security.AccessController.doPrivileged(Native Method) ~[?:1.8.0_212]
at org.elasticsearch.client.RestClientBuilder.build(RestClientBuilder.java:195) ~[jmeter.backendlistener.elasticsearch-2.6.7.jar:?]
at io.github.delirius325.jmeter.backendlistener.elasticsearch.ElasticsearchBackendClient.setupTest(ElasticsearchBackendClient.java:122) ~[jmeter.backendlistener.elasticsearch-2.6.7.jar:?]
at org.apache.jmeter.visualizers.backend.BackendListener.testStarted(BackendListener.java:337) ~[ApacheJMeter_components.jar:5.1.1 r1855137]
... 4 more
Caused by: java.security.NoSuchAlgorithmException: Error constructing implementation (algorithm: Default, provider: SunJSSE, class: sun.security.ssl.SSLContextImpl$DefaultSSLContext)
at java.security.Provider$Service.newInstance(Unknown Source) ~[?:1.8.0_212]
at sun.security.jca.GetInstance.getInstance(Unknown Source) ~[?:1.8.0_212]
at sun.security.jca.GetInstance.getInstance(Unknown Source) ~[?:1.8.0_212]
at javax.net.ssl.SSLContext.getInstance(Unknown Source) ~[?:1.8.0_212]
at javax.net.ssl.SSLContext.getDefault(Unknown Source) ~[?:1.8.0_212]
at org.elasticsearch.client.RestClientBuilder.createHttpClient(RestClientBuilder.java:220) ~[jmeter.backendlistener.elasticsearch-2.6.7.jar:?]
at org.elasticsearch.client.RestClientBuilder.access$000(RestClientBuilder.java:42) ~[jmeter.backendlistener.elasticsearch-2.6.7.jar:?]
at org.elasticsearch.client.RestClientBuilder$1.run(RestClientBuilder.java:198) ~[jmeter.backendlistener.elasticsearch-2.6.7.jar:?]
at org.elasticsearch.client.RestClientBuilder$1.run(RestClientBuilder.java:195) ~[jmeter.backendlistener.elasticsearch-2.6.7.jar:?]
at java.security.AccessController.doPrivileged(Native Method) ~[?:1.8.0_212]
at org.elasticsearch.client.RestClientBuilder.build(RestClientBuilder.java:195) ~[jmeter.backendlistener.elasticsearch-2.6.7.jar:?]
at io.github.delirius325.jmeter.backendlistener.elasticsearch.ElasticsearchBackendClient.setupTest(ElasticsearchBackendClient.java:122) ~[jmeter.backendlistener.elasticsearch-2.6.7.jar:?]
at org.apache.jmeter.visualizers.backend.BackendListener.testStarted(BackendListener.java:337) ~[ApacheJMeter_components.jar:5.1.1 r1855137]
... 4 more
Caused by: java.security.KeyStoreException: problem accessing trust store
at sun.security.ssl.TrustManagerFactoryImpl.engineInit(Unknown Source) ~[?:1.8.0_212]
at javax.net.ssl.TrustManagerFactory.init(Unknown Source) ~[?:1.8.0_212]
at sun.security.ssl.SSLContextImpl$DefaultManagersHolder.getTrustManagers(Unknown Source) ~[?:1.8.0_212]
at sun.security.ssl.SSLContextImpl$DefaultManagersHolder.(Unknown Source) ~[?:1.8.0_212]
at sun.security.ssl.SSLContextImpl$DefaultSSLContext.(Unknown Source) ~[?:1.8.0_212]
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:1.8.0_212]
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) ~[?:1.8.0_212]
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) ~[?:1.8.0_212]
at java.lang.reflect.Constructor.newInstance(Unknown Source) ~[?:1.8.0_212]
at java.security.Provider$Service.newInstance(Unknown Source) ~[?:1.8.0_212]
at sun.security.jca.GetInstance.getInstance(Unknown Source) ~[?:1.8.0_212]
at sun.security.jca.GetInstance.getInstance(Unknown Source) ~[?:1.8.0_212]
at javax.net.ssl.SSLContext.getInstance(Unknown Source) ~[?:1.8.0_212]
at javax.net.ssl.SSLContext.getDefault(Unknown Source) ~[?:1.8.0_212]
at org.elasticsearch.client.RestClientBuilder.createHttpClient(RestClientBuilder.java:220) ~[jmeter.backendlistener.elasticsearch-2.6.7.jar:?]
at org.elasticsearch.client.RestClientBuilder.access$000(RestClientBuilder.java:42) ~[jmeter.backendlistener.elasticsearch-2.6.7.jar:?]
at org.elasticsearch.client.RestClientBuilder$1.run(RestClientBuilder.java:198) ~[jmeter.backendlistener.elasticsearch-2.6.7.jar:?]
at org.elasticsearch.client.RestClientBuilder$1.run(RestClientBuilder.java:195) ~[jmeter.backendlistener.elasticsearch-2.6.7.jar:?]
at java.security.AccessController.doPrivileged(Native Method) ~[?:1.8.0_212]
at org.elasticsearch.client.RestClientBuilder.build(RestClientBuilder.java:195) ~[jmeter.backendlistener.elasticsearch-2.6.7.jar:?]
at io.github.delirius325.jmeter.backendlistener.elasticsearch.ElasticsearchBackendClient.setupTest(ElasticsearchBackendClient.java:122) ~[jmeter.backendlistener.elasticsearch-2.6.7.jar:?]
at org.apache.jmeter.visualizers.backend.BackendListener.testStarted(BackendListener.java:337) ~[ApacheJMeter_components.jar:5.1.1 r1855137]
... 4 more
Caused by: java.io.IOException: DerInputStream.getLength(): lengthTag=109, too big.
at sun.security.util.DerInputStream.getLength(Unknown Source) ~[?:1.8.0_212]
at sun.security.util.DerValue.init(Unknown Source) ~[?:1.8.0_212]
at sun.security.util.DerValue.(Unknown Source) ~[?:1.8.0_212]
at sun.security.util.DerValue.(Unknown Source) ~[?:1.8.0_212]
at sun.security.pkcs12.PKCS12KeyStore.engineLoad(Unknown Source) ~[?:1.8.0_212]
at java.security.KeyStore.load(Unknown Source) ~[?:1.8.0_212]
at sun.security.ssl.TrustStoreManager$TrustAnchorManager.loadKeyStore(Unknown Source) ~[?:1.8.0_212]
at sun.security.ssl.TrustStoreManager$TrustAnchorManager.getTrustedCerts(Unknown Source) ~[?:1.8.0_212]
at sun.security.ssl.TrustStoreManager.getTrustedCerts(Unknown Source) ~[?:1.8.0_212]
at sun.security.ssl.TrustManagerFactoryImpl.engineInit(Unknown Source) ~[?:1.8.0_212]
at javax.net.ssl.TrustManagerFactory.init(Unknown Source) ~[?:1.8.0_212]
at sun.security.ssl.SSLContextImpl$DefaultManagersHolder.getTrustManagers(Unknown Source) ~[?:1.8.0_212]
at sun.security.ssl.SSLContextImpl$DefaultManagersHolder.(Unknown Source) ~[?:1.8.0_212]
at sun.security.ssl.SSLContextImpl$DefaultSSLContext.(Unknown Source) ~[?:1.8.0_212]
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:1.8.0_212]
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) ~[?:1.8.0_212]
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) ~[?:1.8.0_212]
at java.lang.reflect.Constructor.newInstance(Unknown Source) ~[?:1.8.0_212]
at java.security.Provider$Service.newInstance(Unknown Source) ~[?:1.8.0_212]
at sun.security.jca.GetInstance.getInstance(Unknown Source) ~[?:1.8.0_212]
at sun.security.jca.GetInstance.getInstance(Unknown Source) ~[?:1.8.0_212]
at javax.net.ssl.SSLContext.getInstance(Unknown Source) ~[?:1.8.0_212]
at javax.net.ssl.SSLContext.getDefault(Unknown Source) ~[?:1.8.0_212]
at org.elasticsearch.client.RestClientBuilder.createHttpClient(RestClientBuilder.java:220) ~[jmeter.backendlistener.elasticsearch-2.6.7.jar:?]
at org.elasticsearch.client.RestClientBuilder.access$000(RestClientBuilder.java:42) ~[jmeter.backendlistener.elasticsearch-2.6.7.jar:?]
at org.elasticsearch.client.RestClientBuilder$1.run(RestClientBuilder.java:198) ~[jmeter.backendlistener.elasticsearch-2.6.7.jar:?]
at org.elasticsearch.client.RestClientBuilder$1.run(RestClientBuilder.java:195) ~[jmeter.backendlistener.elasticsearch-2.6.7.jar:?]
at java.security.AccessController.doPrivileged(Native Method) ~[?:1.8.0_212]
at org.elasticsearch.client.RestClientBuilder.build(RestClientBuilder.java:195) ~[jmeter.backendlistener.elasticsearch-2.6.7.jar:?]
at io.github.delirius325.jmeter.backendlistener.elasticsearch.ElasticsearchBackendClient.setupTest(ElasticsearchBackendClient.java:122) ~[jmeter.backendlistener.elasticsearch-2.6.7.jar:?]
at org.apache.jmeter.visualizers.backend.BackendListener.testStarted(BackendListener.java:337) ~[ApacheJMeter_components.jar:5.1.1 r1855137]
... 4 more
@delirius325

@delirius325 please take a look and help me to overcome this issue.

I get the same error when using the backendlistener, but I don't want to use ssl

Currently on vacation, no access to a computer to code or commit changes. I can however help if you provide me with the plugin's configuration (screenshot).

Thanks,

I am also facing the same issue. Will wait for your response.

Thanks

@SumantaSarathiChakraborty
Please read my previous message. A screenshot of your configuration would be really helpful.

image

What are the versions of Elastic Search,JMETER?

ES 6.3.0 and Jmeter 5.1.1

{
"name" : "****UYWC",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "******sMSs2Wif5bEUJ",
"version" : {
"number" : "6.3.0",
"build_flavor" : "unknown",
"build_type" : "unknown",
"build_hash" : "**4e937",
"build_date" : "2018-06-11T23:38:03.357887Z",
"build_snapshot" : false,
"lucene_version" : "7.3.1",
"minimum_wire_compatibility_version" : "5.6.0",
"minimum_index_compatibility_version" : "5.0.0"
},
"tagline" : "You Know, for Search"
}

Our team had the same issue, its related to #46 where keystore/truststore type is always set to "PKCS12" by default, causing JMeter to try to load an empty keystore and failing.

Created #62

#62 should be merged and published before midnight.

Thanks for the help @Gabriel3G ๐Ÿ˜„ !!

I am closing this issue. New build is being merged to jmeter-plugins and should be published on Maven Central in a few hours.

Cheers,
Thanks again to @Gabriel3G !

Thanks! Awesome guys. ๐Ÿ˜