Amazon SSL certificate problem

Hi everyone,

I’ve recently started to use Gatling for an implementation in my company and today I stumbled into a problem with the product: I have a problem with the Gatling Recorder that is becoming quite tedious…
I’m trying to register a session with the recorder: the website have external resources, like images and video, on Amazon Cloud services. If I try to load an image in HTTP mode, I can easily add the exception when it pops up, but when I try to load it in HTTPS mode the browser constantly load, never showing up the image. On the terminal I found out that the problem probably concern Amazon SSL certificates:

javax.net.ssl.SSLException: Received fatal alert: handshake_failure
at sun.security.ssl.Alerts.getSSLException(Alerts.java:208)
at sun.security.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1666)
at sun.security.ssl.SSLEngineImpl.fatal(SSLEngineImpl.java:1634)
at sun.security.ssl.SSLEngineImpl.recvAlert(SSLEngineImpl.java:1800)
at sun.security.ssl.SSLEngineImpl.readRecord(SSLEngineImpl.java:1083)
at sun.security.ssl.SSLEngineImpl.readNetRecord(SSLEngineImpl.java:907)
at sun.security.ssl.SSLEngineImpl.unwrap(SSLEngineImpl.java:781)
at javax.net.ssl.SSLEngine.unwrap(SSLEngine.java:624)
at io.netty.handler.ssl.SslHandler$SslEngineType$2.unwrap(SslHandler.java:223)
at io.netty.handler.ssl.SslHandler.unwrap(SslHandler.java:1117)
at io.netty.handler.ssl.SslHandler.decode(SslHandler.java:1039)
at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:411)
at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:248)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:357)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:343)
at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:336)
at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1294)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:357)
at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:343)
at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:911)
at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:131)
at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:643)
at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:566)
at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:480)
at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:442)
at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:131)
at io.netty.util.concurrent.DefaultThreadFactory$DefaultRunnableDecorator.run(DefaultThreadFactory.java:144)
at java.lang.Thread.run(Thread.java:748)
17:02:31.345 [WARN ] i.n.c.DefaultChannelPipeline - An exceptionCaught() event was fired, and it reached at the tail of the pipeline. It usually means the last handler in the pipeline did not handle the exception.

Do you know if there is a solution to this problem (maybe by adding these certificates on a trusted key’s list)?

Thank you very much for your attention.

Cheers,
Mattia

I can’t comment on the Gatling recorder as I don’t use it, but personally I’d be using either Chrome Developer Tools or a proxy such as Fiddler/Charles to get my recording - suggest trying one of those.

Hope this helps,
Barry

Hi Barry,

first, thank you for the response.
There’s a way to use the recorded session with Fiddler, Charles or the Chrome Developer Tools on Gatling?
For example, I’ve tried to record a session with Charles but the output is a .chls file and I don’t know if there’s a way to convert it into a scala format for Gatling…

Thanks again.
Cheers,
Mattia

I’ve just managed to register sessions with the Chrome Developer Tools and save them as an Har file.

Thanks again for the precious advice! :slight_smile:

Cheers,
Mattia