All Downloads are FREE. Search and download functionalities are using the official Maven repository.

scala-gatling.gatling.conf Maven / Gradle / Ivy

There is a newer version: 7.9.0
Show newest version
#########################
# Gatling Configuration #
#########################

# This file contains all the settings configurable for Gatling with their default values

gatling {
  core {
    outputDirectoryBaseName = "" # The prefix for each simulation result folder (then suffixed by the report generation timestamp)
    runDescription = ""          # The description for this simulation run, displayed in each report
    encoding = "utf-8"           # Encoding to use throughout Gatling for file and string manipulation
    simulationClass = ""         # The FQCN of the simulation to run (when used in conjunction with noReports, the simulation for which assertions will be validated)
    mute = false                 # When set to true, don't ask for simulation name nor run description (currently only used by Gatling SBT plugin)
    elFileBodiesCacheMaxCapacity = 200        # Cache size for request body EL templates, set to 0 to disable
    rawFileBodiesCacheMaxCapacity = 200       # Cache size for request body Raw templates, set to 0 to disable
    rawFileBodiesInMemoryMaxSize = 1000       # Below this limit, raw file bodies will be cached in memory
    pebbleFileBodiesCacheMaxCapacity = 200    # Cache size for request body Peeble templates, set to 0 to disable

    extract {
      regex {
        cacheMaxCapacity = 200 # Cache size for the compiled regexes, set to 0 to disable caching
      }
      xpath {
        cacheMaxCapacity = 200 # Cache size for the compiled XPath queries,  set to 0 to disable caching
      }
      jsonPath {
        cacheMaxCapacity = 200 # Cache size for the compiled jsonPath queries, set to 0 to disable caching
        preferJackson = false  # When set to true, prefer Jackson over Boon for JSON-related operations
      }
      css {
        cacheMaxCapacity = 200 # Cache size for the compiled CSS selectors queries,  set to 0 to disable caching
      }
    }

    directory {
      data = user-files/data               # Folder where user's data (e.g. files used by Feeders) is located
      bodies = user-files/bodies           # Folder where bodies are located
      simulations = user-files/simulations # Folder where the bundle's simulations are located
      reportsOnly = ""                     # If set, name of report folder to look for in order to generate its report
      binaries = ""                        # If set, name of the folder where compiles classes are located: Defaults to GATLING_HOME/target.
      results = results                    # Name of the folder where all reports folder are located
    }
  }
  charting {
    noReports = false       # When set to true, don't generate HTML reports
    maxPlotPerSeries = 1000 # Number of points per graph in Gatling reports
    useGroupDurationMetric = false  # Switch group timings from cumulated response time to group duration.
    indicators {
      lowerBound = 800      # 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 {
    fetchedCssCacheMaxCapacity = 200          # Cache size for CSS parsed content, set to 0 to disable
    fetchedHtmlCacheMaxCapacity = 200         # Cache size for HTML parsed content, set to 0 to disable
    perUserCacheMaxCapacity = 200             # Per virtual user cache size, set to 0 to disable
    warmUpUrl = "http://gatling.io"           # The URL to use to warm-up the HTTP stack (blank means disabled)
    enableGA = true                           # Very light Google Analytics, please support
    ssl {
      keyStore {
        type = ""      # Type of SSLContext's KeyManagers store
        file = ""      # Location of SSLContext's KeyManagers store
        password = ""  # Password for SSLContext's KeyManagers store
        algorithm = "" # Algorithm used SSLContext's KeyManagers store
      }
      trustStore {
        type = ""      # Type of SSLContext's TrustManagers store
        file = ""      # Location of SSLContext's TrustManagers store
        password = ""  # Password for SSLContext's TrustManagers store
        algorithm = "" # Algorithm used by SSLContext's TrustManagers store
      }
    }
    ahc {
      keepAlive = true                                    # Allow pooling HTTP connections (keep-alive header automatically added)
      connectTimeout = 10000                              # Timeout when establishing a connection
      handshakeTimeout = 10000                            # Timeout when performing TLS hashshake
      pooledConnectionIdleTimeout = 60000                 # Timeout when a connection stays unused in the pool
      readTimeout = 60000                                 # Timeout when a used connection stays idle
      maxRetry = 2                                        # Number of times that a request should be tried again
      requestTimeout = 60000                              # Timeout of the requests
      disableHttpsEndpointIdentificationAlgorithm = true  # When set to true, don't enable SSL algorithm on the SSLEngine
      useInsecureTrustManager = true                      # Use an insecure TrustManager that trusts all server certificates
      httpClientCodecMaxChunkSize = 8192                  # Maximum length of the content or each chunk
      httpClientCodecInitialBufferSize = 128              # Initial HttpClientCodec buffer size
      sslEnabledProtocols = [TLSv1.2, TLSv1.1, TLSv1]     # Array of enabled protocols for HTTPS, if empty use the JDK defaults
      sslEnabledCipherSuites = []                         # Array of enabled cipher suites for HTTPS, if empty use the AHC defaults
      sslSessionCacheSize = 0                             # SSLSession cache size, set to 0 to use JDK's default
      sslSessionTimeout = 0                               # SSLSession timeout in seconds, set to 0 to use JDK's default (24h)
      useOpenSsl = false                                  # if OpenSSL should be used instead of JSSE (requires tcnative jar)
      useNativeTransport = false                          # if native transport should be used instead of Java NIO (requires netty-transport-native-epoll, currently Linux only)
      tcpNoDelay = true
      soReuseAddress = false
      soLinger = -1
      soSndBuf = -1
      soRcvBuf = -1
      allocator = "pooled"                            # switch to unpooled for unpooled ByteBufAllocator
      maxThreadLocalCharBufferSize = 200000           # Netty's default is 16k
    }
    dns {
      queryTimeout = 5000                             # Timeout of each DNS query in millis
      maxQueriesPerResolve = 6                        # Maximum allowed number of DNS queries for a given name resolution
    }
  }
  jms {
    replyTimeoutScanPeriod = 1000  # scan period for timedout reply messages
  }
  data {
    writers = [console, file]      # The list of DataWriters to which Gatling write simulation data (currently supported : console, file, graphite, jdbc)
    console {
      light = false                # When set to true, displays a light version without detailed request stats
    }
    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
    }
    graphite {
      light = false              # only send the all* stats
      host = "localhost"         # The host where the Carbon server is located
      port = 2003                # The port to which the Carbon server listens to (2003 is default for plaintext, 2004 is default for pickle)
      protocol = "tcp"           # The protocol used to send data to Carbon (currently supported : "tcp", "udp")
      rootPathPrefix = "gatling" # The common prefix of all metrics sent to Graphite
      bufferSize = 8192          # GraphiteDataWriter's internal data buffer size, in bytes
      writeInterval = 1          # GraphiteDataWriter's write interval, in seconds
    }
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy