Arangobench Startup Options

Usage: arangobench [<options>]

Global Options

NameTypeDescription
asyncboolean Send asynchronous requests.
This option can be specified without value to enable it.
Default: false
batch-sizeuint64 Number of operations in one batch (0 disables batching).
Default: 0
check-configurationboolean Check the configuration and exit.
This is a command, no value needs to be specified. The process terminates after executing the command.
Default: false
collectionstring Collection name to use in tests (if they involve collections).
Default: "ArangoBenchmark"
complexityuint64 Complexity parameter for the test (meaning depends on test case).
Default: 1
concurrencyuint64 Number of parallel threads and connections.
Default: 1
configstring The configuration file or 'none'.
Default: ""
configurationstring The configuration file or 'none'.
Default: ""
definestring... Define key=value for a @key@ entry in config file.
Default: []
delayboolean Use a startup delay (necessary only when run in series).
This option can be specified without value to enable it.
Default: false
dump-dependenciesboolean Dump dependency graph.
This is a command, no value needs to be specified. The process terminates after executing the command.
Default: false
dump-optionsboolean Dump configuration options in JSON format.
This is a command, no value needs to be specified. The process terminates after executing the command.
Default: true
junit-report-filestring Filename to write junit style report to.
Default: ""
keep-aliveboolean Use HTTP keep-alive.
This option can be specified without value to enable it.
Default: true
logstring... The global or topic-specific log level.
Default: ["info"]
number-of-shardsuint64 Number of shards of created collections (cluster only).
Default: 1
progressboolean Log intermediate progress.
This option can be specified without value to enable it.
Default: true
quietboolean Suppress status messages.
This option can be specified without value to enable it.
Default: false
replication-factoruint64 Replication factor of created collections (cluster only).
Default: 1
requestsuint64 Total number of operations.
Default: 1000
runsuint64 Run test n times (and calculate statistics based on median).
Default: 1
test-casestring Test case to use.
Default: "version"
Possible values:
  • "aqlinsert"
  • "aqltrx"
  • "aqlv8"
  • "collection"
  • "counttrx"
  • "crud"
  • "crud-append"
  • "crud-write-read"
  • "document"
  • "edge"
  • "hash"
  • "import-document"
  • "multi-collection"
  • "multitrx"
  • "random-shapes"
  • "shapes"
  • "shapes-append"
  • "skiplist"
  • "stream-cursor"
  • "version"
verboseboolean Print out replies if the HTTP header indicates DB errors.
This option can be specified without value to enable it.
Default: false
versionboolean Reports the version and exits.
This is a command, no value needs to be specified. The process terminates after executing the command.
Default: false
wait-for-syncboolean Use waitForSync for created collections.
This option can be specified without value to enable it.
Default: false

Log Options

NameTypeDescription
log.colorboolean Use colors for TTY logging.
This option can be specified without value to enable it.
Default: true
log.escapeboolean Escape characters when logging.
This option can be specified without value to enable it.
Default: true
log.filestring Shortcut for '--log.output file://<filename>'.
Default: "-"
log.file-groupstring Group to use for new log file, user must be a member of this group.
Default: ""
Introduced in: v3.4.5, v3.5.0
log.file-modestring Mode to use for new log file, umask will be applied as well.
Default: ""
Introduced in: v3.4.5, v3.5.0
log.force-directboolean Do not start a seperate thread for logging.
This option can be specified without value to enable it.
Default: false
log.foreground-ttyboolean Also log to tty if backgrounded.
This option can be specified without value to enable it.
Default: false
log.keep-logrotateboolean Keep the old log file after receiving a sighup.
This option can be specified without value to enable it.
Default: false
log.levelstring... The global or topic-specific log level.
Default: ["info"]
log.line-numberboolean Append line number and file name.
This option can be specified without value to enable it.
Default: false
log.outputstring... Log destination(s).
Default: []
log.performanceboolean Shortcut for '--log.level performance=trace'.
This option can be specified without value to enable it.
Default: false
log.prefixstring Prefix log message with this string.
Default: ""
log.request-parametersboolean Include full URLs and HTTP request parameters in trace logs.
This option can be specified without value to enable it.
Default: true
log.roleboolean Log server role.
This option can be specified without value to enable it.
Default: false
log.shorten-filenamesboolean Shorten filenames in log output (use with --log.line-number).
This option can be specified without value to enable it.
Default: true
log.threadboolean Show thread identifier in log message.
This option can be specified without value to enable it.
Default: false
log.thread-nameboolean Show thread name in log message.
This option can be specified without value to enable it.
Default: false
log.use-local-timeboolean Use local timezone instead of UTC.
This option can be specified without value to enable it.
Default: false
log.use-microtimeboolean Use microtime instead.
This option can be specified without value to enable it.
Default: false

Random Options

NameTypeDescription
random.generatoruint32 Random number generator to use (1 = MERSENNE, 2 = RANDOM, 3 = URANDOM, 4 = COMBINED (not for Windows), 5 = WinCrypt (Windows only).
Default: 1
Possible values:
  • 1
  • 2
  • 3
  • 4

Server Options

NameTypeDescription
server.authenticationboolean Require authentication credentials when connecting (does not affect the server-side authentication settings).
This option can be specified without value to enable it.
Default: false
server.connection-timeoutdouble Connection timeout in seconds.
Default: 5
server.databasestring Database name to use when connecting.
Default: "_system"
server.endpointstring Endpoint to connect to, use 'none' to start without a server.
Default: "http+tcp://127.0.0.1:8529"
server.max-packet-sizeuint64 Maximum packet size (in bytes) for client/server communication.
Default: 1073741824
server.passwordstring Password to use when connecting. If not specified and authentication is required, the user will be prompted for a password.
Default: ""
server.request-timeoutdouble Request timeout in seconds.
Default: 1200
server.usernamestring Username to use when connecting.
Default: "root"

Ssl Options

NameTypeDescription
ssl.protocoluint64 Ssl protocol (1 = SSLv2, 2 = SSLv2 or SSLv3 (negotiated), 3 = SSLv3, 4 = TLSv1, 5 = TLSv1.2).
Default: 5
Possible values:
  • 1
  • 2
  • 3
  • 4
  • 5

Temp Options

NameTypeDescription
temp.pathstring Path for temporary files.
Default: ""

Notes

Test cases

Value Description
aqlinsert Insert documents via AQL
aqltrx AQL Transactions with deep nested AQL FOR - loops
aqlv8 Execute AQL with V8 functions to insert random documents
collection Creates collections
counttrx Uses JS transactions to count the documents and insert the result again
crud Create/Read/Update/Delete
crud-append Create/Read/Update/Read again
crud-write-read Create/Read Documents
document Creates documents
edge Create/Read/Update edge documents
hash Create/Read/Update/Read documents indexed by a hash index
import-document Creates documents via the import API
multi-collection Multiple transactions combining reads & writes from js on multiple collections
multitrx Multiple transactions combining reads & writes from js
random-shapes Create/Read/Delete heterogeneous documents with random values
shapes Create & Delete documents with heterogeneous attribute names
shapes-append Create documents with heterogeneous attribute names
skiplist Create/Read/Update/Read documents indexed by a skiplist
stream-cursor Create documents and retrieve them in a streaming fashion
version Requests /_api/version