Skip to content

Commit

Permalink
adding gatling conf template
Browse files Browse the repository at this point in the history
  • Loading branch information
harikrishnan83 committed May 19, 2021
1 parent 016ad0e commit c74b79a
Show file tree
Hide file tree
Showing 2 changed files with 125 additions and 1 deletion.
123 changes: 123 additions & 0 deletions templates/gatling.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,123 @@
#########################
# 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 = "perf.GatlingSoakSimulation" # The FQCN of the simulation to run (when used in conjunction with noReports, the simulation for which assertions will be validated)
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
shutdownTimeout = 10000 # Milliseconds to wait for the actor system to shutdown
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 {
simulations = src/gatling/simulations # Directory where simulation classes are located (for bundle packaging only)
resources = src/gatling/resources # Directory where resources, such as feeder files and request bodies are located (for bundle packaging only)
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 = "https://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 {
connectTimeout = 10000 # Timeout in millis for establishing a TCP socket
handshakeTimeout = 10000 # Timeout in millis for performing TLS handshake
pooledConnectionIdleTimeout = 60000 # Timeout in millis for a connection to stay idle in the pool
maxRetry = 2 # Number of times that a request should be tried again
requestTimeout = 60000 # Timeout in millis for performing an HTTP request
enableSni = true # When set to true, enable Server Name indication (SNI)
enableHostnameVerification = false # When set to true, enable hostname verification: SSLEngine.setHttpsEndpointIdentificationAlgorithm("HTTPS")
useInsecureTrustManager = true # Use an insecure TrustManager that trusts all server certificates
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 = true # if OpenSSL should be used instead of JSSE
useNativeTransport = false # if native transport should be used instead of Java NIO (requires netty-transport-native-epoll, currently Linux only)
enableZeroCopy = true # if zero-copy upload should be used if possible
tcpNoDelay = true
soReuseAddress = false
allocator = "pooled" # switch to unpooled for unpooled ByteBufAllocator
maxThreadLocalCharBufferSize = 200000 # Netty's default is 16k
}
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
}
}
jms {
replyTimeoutScanPeriod = 1000 # scan period for timedout reply messages
}
data {
writers = [console, file, graphite] # 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
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
}
graphite {
light = false # only send the all* stats
host = "influxdb" # 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 # Internal data buffer size, in bytes
writePeriod = 1 # Write period, in seconds
}
}
}
3 changes: 2 additions & 1 deletion templates/perfiz.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,11 @@
# Documentation: https://github.com/znsio/perfiz#perfiz-yaml-documentation
# Example: https://github.com/znsio/perfiz-demo
#
# Example / Template. Uncomment below lines per your needs.
# Example / Template. Uncomment below lines as per your needs.
##############################################################################
#
#karateFeaturesDir: "karate-features"
#karateEnv: "dev"
#karateFeatures:
# - karateFile: "petstore.feature"
# gatlingSimulationName: "AllGet"
Expand Down

0 comments on commit c74b79a

Please sign in to comment.