Galting stop simulation without root cause

113 views
Skip to first unread message

Vinicius Costa

unread,
Sep 17, 2021, 9:20:48 AM9/17/21
to Gatling User Group
Hi there,

I'm having a weird issue when run my perfomance tests inside jenkins for the last couple days and any help would be good:

I'm using the gradle plugin so in my jenkins I run ./gradlew gatlingRun

For some reason during the job (usually around 15 min) gatling stops and the only logs I have looks like this:

> Task :gatlingRun FAILED
:gatlingRun (Thread[Execution worker for ':',5,main]) completed. Took 17 mins 27.49 secs.

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':gatlingRun'.
> There're failed simulations: com.test.MySimulation

I don't have any other information and the gatling report was not generated and
I don't have ay request/response errors on the logs.

Looking at the simulation.log everything seems fine and the last entry looks like this:


USER    Product    START    Test
USER   


This is the following config I'm using:

```
plugins {
    id "io.gatling.gradle" version "3.6.1"
}

gatling {
    toolVersion = "3.6.1"
    logLevel = "INFO"
    logHttp = "FAILURES"
}
```

and this is my gatling.conf

```
#########################
# Gatling Configuration #
#########################

gatling {
  core {
    encoding = "utf-8"           # Encoding to use throughout Gatling for file and string manipulation
    feederAdaptiveLoadModeThreshold = 100   # File size threshold (in MB). Below load eagerly in memory, above use batch mode with default buffer size
    shutdownTimeout = 10000                 # Milliseconds to wait for the actor system to shutdown
    directory {
      binaries = build/classes/test                            # If set, name of the folder where compiles classes are located: Defaults to GATLING_HOME/target.
      results = build/reports/performanceTest                       # Name of the folder where all reports folder are located
    }
  }
  socket {
    connectTimeout = 100000                # Timeout in millis for establishing a TCP socket
    tcpNoDelay = true
    soKeepAlive = false                    # if TCP keepalive configured at OS level should be used
    soReuseAddress = false
  }
  netty {
    useNativeTransport = false              # if Netty native transport should be used instead of Java NIO
    allocator = "pooled"                   # switch to unpooled for unpooled ByteBufAllocator
    maxThreadLocalCharBufferSize = 200000  # Netty's default is 16k
  }
  ssl {
    useOpenSsl = false                    # if OpenSSL should be used instead of JSSE (only the latter can be debugged with -Djava.net.debug=ssl)
    useOpenSslFinalizers = false         # if OpenSSL contexts should be freed with Finalizer or if using RefCounted is fine
    handshakeTimeout = 100000             # TLS handshake timeout in millis
    useInsecureTrustManager = true       # Use an insecure TrustManager that trusts all server certificates
  }
  charting {
    indicators {
      lowerBound = 600      # Lower bound for the requests' response time to track in the reports and the console summary
      higherBound = 1200    # Higher bound for the requests' response time to track in the reports and the console summary
      percentile1 = 50      # Value for the 1st percentile to track in the reports, the console summary and Graphite
      percentile2 = 75      # Value for the 2nd percentile to track in the reports, the console summary and Graphite
      percentile3 = 95      # Value for the 3rd percentile to track in the reports, the console summary and Graphite
      percentile4 = 99        # Value for the 4th percentile to track in the reports, the console summary and Graphite
    }
  }
  http {
    pooledConnectionIdleTimeout = 60000       # Timeout in millis for a connection to stay idle in the pool
    requestTimeout = 600000                    # Timeout in millis for performing an HTTP request
    enableHostnameVerification = false        # When set to true, enable hostname verification: SSLEngine.setHttpsEndpointIdentificationAlgorithm("HTTPS")
    dns {
      queryTimeout = 5000                     # Timeout in millis of each DNS query in millis
      maxQueriesPerResolve = 6                # Maximum allowed number of DNS queries for a given name resolution
    }
  }
  data {
    writers = [console, file]      # The list of DataWriters to which Gatling write simulation data (currently supported : console, file, graphite)
    console {
      light = false                # When set to true, displays a light version without detailed request stats
      writePeriod = 5              # Write interval, in seconds
    }
    file {
      bufferSize = 8192            # FileDataWriter's internal data buffer size, in bytes
    }
    leak {
      noActivityTimeout = 30  # Period, in seconds, for which Gatling may have no activity before considering a leak may be happening
    }
  }
}
```

Thanks,

Vini

Is there a way I can enable gatling logs to check the exception ?

I already tried all the gradle options like `--stacktrace`  and `--debug` but the error message is the same.

Thanks

Stéphane LANDELLE

unread,
Sep 17, 2021, 10:27:36 AM9/17/21
to gat...@googlegroups.com
Hi,

Are you able to run this same test manually?
Does it last for more than 15 minutes?

--

Stéphane Landelle

Chief Technical Officer

   

slan...@gatling.io
gatling.io
   
facebook twitter linkedin 


--
You received this message because you are subscribed to the Google Groups "Gatling User Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to gatling+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/gatling/e397d5eb-7d60-48be-946e-2f48c1ddb728n%40googlegroups.com.
Reply all
Reply to author
Forward
0 new messages