Skip to content

Configuration properties

Nikolay Musienko edited this page Jul 22, 2013 · 15 revisions

Configuration properties


Roles

chassis.roles - Comma-separated list of roles. When Jagger starts the corresponding services are launched.

#chassis.roles=MASTER
#chassis.roles=RDB_SERVER
#chassis.roles=COORDINATION_SERVER
#chassis.roles=MASTER,COORDINATION_SERVER,RDB_SERVER
#chassis.roles=KERNEL
chassis.roles=MASTER,KERNEL,COORDINATION_SERVER,RDB_SERVER,HTTP_COORDINATION_SERVER

Configuration

chassis.master.session.configuration.bean.name - Name of session configuration bean that will be executed by master. Should be specified for not default value.

#chassis.master.session.configuration.bean.name=testConfiguration
chassis.master.session.configuration.bean.name=httpTestTargetConfiguration

Coordinator

chassis.coordination.bean - is bean name that implements Coordinator interface.

  • memoryCoordinator (local mode only),
  • zookeeperCoordinator
chassis.coordination.bean=zookeeperCoordinator
#chassis.coordination.bean=memoryCoordinator

chassis.coordinator.zookeeper.endpoint should be determined in distributed mode on each Jagger Node. It present address and port of Zookeeper Server (on Jagger Node with COORDINATION_SERVER role). 2181 - default port.

#chassis.coordinator.zookeeper.endpoint={server.aaddress}:2181
chassis.coordinator.zookeeper.endpoint=localhost:2181

File Storage

chassis.log.storage.bean is bean name that implements FileStorage interface. Default were implemented:

  • localFileStorage (local mode only)
  • hdfsStorage
chassis.log.storage.bean=hdfsStorage
#chassis.log.storage.bean=localFileStorage

chassis.storage.fs.default.name should be defined on each Jagger Node if hdfsStorage uses. Present address of Jagger Node with MASTER role.

#chassis.storage.fs.default.name=hdfs://{server.adress}/ 

Parameters of JDBC

MySQL, PostgreSQL and H2 are currently supported. H2 is default.

Following properties should be added to each Node in distributed mode.

# H2
#chassis.storage.rdb.client.driver=org.h2.Driver
#chassis.storage.rdb.client.url=jdbc:h2:tcp://localhost:8043/jaggerdb/db 
# 8043 - default port for H2
#chassis.storage.rdb.username=jagger
#chassis.storage.rdb.password=rocks
#chassis.storage.hibernate.dialect=org.hibernate.dialect.H2Dialect

# MySQL
chassis.storage.rdb.client.driver=com.mysql.jdbc.Driver
chassis.storage.rdb.client.url=jdbc:mysql://{mysql.server}:3306/jaggerdb
chassis.storage.rdb.username=*****
chassis.storage.rdb.password=*****
chassis.storage.hibernate.dialect=org.hibernate.dialect.MySQL5Dialect

#PostgreSQL
chassis.storage.rdb.client.driver=org.postgresql.Driver
chassis.storage.rdb.client.url=jdbc:postgresql://{postgresql.server}:5432/jaggerdb
chassis.storage.rdb.username=*****
chassis.storage.rdb.password=*****
chassis.storage.hibernate.dialect=com.griddynamics.jagger.hibernate.PostgresDialect

Size of batch to store.

chassis.storage.hibernate.batch_size=50

Conditions

chassis.conditions.monitoring.enable - switch for manage agent count control , aggregeting information from monitoring. true value means, that Master Node awaits agents in count of chassis.conditions.min.agents.count property value.

chassis.conditions.min.kernels.count - number of Kernels required for configuration.

#chassis.conditions.monitoring.enable=true
#chassis.conditions.min.agents.count=2
chassis.conditions.monitoring.enable=false

chassis.conditions.min.kernels.count=1

Reporting

chassis.master.reporting.report.format - format of report (PDF, HTML).

chassis.master.reporting.report.file.name - report file name.

chassis.engine.e1.reporting.session.comparison.baseline.session.id - baseline session ID for session comparison. If this value is set to '#IDENTITY' then session will be compared with itself (for testing purposes).

chassis.master.reporting.successrate.threshold - threshold of success for the task

chassis.master.reporting.report.format=PDF
chassis.master.reporting.report.file.name=report.pdf

chassis.engine.e1.reporting.session.comparison.baseline.session.id=#IDENTITY
#chassis.engine.e1.reporting.session.comparison.baseline.session.id=115
chassis.master.reporting.successrate.threshold=1.0

Agent Properties

Starting properties for Agent. Agent properties should be set in agent.properties file, or with -D option while launching monitoring agent. See more about Agents - Monitoring Capabilities

chassis.coordination.http.url points to HTTP_COORDINATION_SERVER. 8089 default port.

jmx.enabled enables jmx services monitoring (value = true) or not (value = false).

jmx.services - jmx services that would be monitored. If you need to monitor more then one jmx service, print all of them inline separated by commas.

jmx.monitoring.timeout - timeout for getting monitoring info via jmx

jmx.profiler.timeout - timeout for getting profiler info via jmx

chassis.coordination.http.url=http://localhost:8089
jmx.enabled=true
jmx.services=localhost:9964
#jmx.services=localhost:9964,localhost:9967
jmx.monitoring.timeout=300
jmx.profiler.timeout=300

More Properties

Changing default ports

clientPort - Zookeeper Server starts with that port, 2181 - default value.

chassis.coordination.http.port - port of http server starts on HTTP_COORDINATION_SERVER, 8089 - default.

tcpPort - port for H2 data base, 8043 - default.

#clientPort=2181
#chassis.coordination.http.port=8089
#tcpPort=8043

Workspaces

chassis.workspace - absolute or relative path to Jagger workspace. Jagger uses this folder to store its files.

chassis.log.storage.file.workspace - workspace for FileStorage.

#chassis.workspace=./jaggerworkspace
#chassis.log.storage.file.workspace=${chassis.workspace}/storage

More Properties on reporting
# Location of root report template (Spring resource location format)
#chassis.master.reporting.root.report.template.location=configuration/reporting/report-container.jrxml

# Turns on/off session comparison section
chassis.engine.e1.reporting.session.comparison.active=false
chassis.engine.e1.reporting.session.comparison.monitoring.active=false

# Allowable deviation while comparing sessions
#chassis.engine.e1.reporting.session.comparison.decision.maker.warning.deviation.threshold=0.5
#chassis.engine.e1.reporting.session.comparison.decision.maker.fatal.deviation.threshold=0.8

# Affect for interval size in plots
#chassis.engine.e1.reporting.task.point.count=100
#chassis.engine.e1.reporting.task.monitoring.point.count=200

# For REPORTER only
#report.only=true

report.only=false
report.session.id=106
report.session.name=J4G session sample
#report.session.comment=

# Create general global task plots
chassis.monitoring.reporting.show.plots.for.each.global=true
# Create general box task plots
chassis.monitoring.reporting.show.plots.for.each.box=true
# Create general sut task plots
chassis.monitoring.reporting.show.plots.for.each.sut=true
# Show numbers of tasks in report
chassis.monitoring.reporting.show.plots.show.numbers=true

Timeouts
# interval in millis between monitoring polling
#chassis.monitoring.pollinginterval=2000
# interval in millis between monitoring SuT polling for profiling
#chassis.monitoring.profile.pollinginterval=2000
# uses as timeout for starting/stoping monitoring (+pooling monitoring status) 
#chassis.monitoring.command.execution.ttl=30000

# Reconnect period of MASTER/KERNEL to COORDINATION_SERVER
#chassis.coordinator.reconnect.period=5000

# ZooKeeper session timeout
chassis.coordinator.zookeeper.session.timeout=100000000

# Masters termination time of start, stop operations
#chassis.master.distribution.start=300000
#chassis.master.distribution.stop=300000

# Termination time for task
# 5 years = 157680000000 
#chassis.master.task.maxtime=157680000000

# Time which master wait for Agents, Kernels
# 10 min = 600000
#chassis.master.node.awaittime=600000

# Termination time of calibration
#calibration.timeout=300000
# Termination time of calibration start operation
#calibration.start.timeout=10000

# Termination time of operations
#workload.start.timeout=30000
#workload.stop.timeout=3600000
#workload.polling.timeout=30000

Threads
# Number of threads to keep in the pool, even if they are idle.
#chassis.executor.pool.core=5
# Maximum number of threads to allow in the pool.
#chassis.executor.pool.max=20

# Same for Zookeeper Coordinator
#chassis.zookeeper.executor.pool.core=2
#chassis.zookeeper.executor.pool.max=30

# Same for monitoring
#chassis.monitoring.executor.pool.core=2
#chassis.monitoring.executor.pool.max=10

# Limit of workload threads
#workload.threads.maxcount=4000

Even more

chassis.util.usejboss - use jBoss serialisation or not.

chassis.log.storage.buffer.flushing.size - buffer size used for logging.

chassis.extensions.log.extensions - log out extensions info

workload.tickinterval.default - colock tick time

chassis.util.usejboss=true
chassis.log.storage.buffer.flushing.size=1000
#chassis.extensions.log.extensions=true
#workload.tickinterval.default=1000

Hadoop start properties
#hadoop.tmp.dir=${chassis.workspace}/master/storage/tmp
#hadoop.log.dir=${chassis.workspace}/master/storage/log
#hadoop.home.dir=${chassis.workspace}/master/storage/home
#hadoop.id.str=jagger
#dfs.name.dir=${chassis.workspace}/master/storage/hdfs/namedir
#fs.default.name=${chassis.storage.fs.default.name}
#dfs.replication=1
#dfs.support.append=true

Clone this wiki locally