Arangobench Startup Options
Usage: arangobench [<options>]
Global
Name | Type | Description |
---|
async | boolean | Send asynchronous requestsThis option can be specified without value to enable it.Default: false |
batch-size | uint64 | Number of operations in one batch (0 disables batching)Default: 0 |
check-configuration | boolean | Check the configuration and exitThis is a command, no value needs to be specified. The process terminates after executing the command. |
collection | string | Collection name to use in tests (if they involve collections)Default: "ArangoBenchmark" |
complexity | uint64 | Complexity parameter for the test (meaning depends on test case)Default: 1 |
concurrency | uint64 | Number of parallel threads and connectionsDefault: 1 |
config | string | The configuration file or ‘none’Default: "" |
configuration | string | The configuration file or ‘none’Default: "" |
define | string… | Define key=value for a @key@ entry in config fileDefault: [] |
delay | boolean | Use a startup delay (necessary only when run in series)This option can be specified without value to enable it.Default: false |
dump-dependencies | boolean | Dump dependency graphThis is a command, no value needs to be specified. The process terminates after executing the command. |
dump-options | boolean | Dump configuration options in JSON formatThis is a command, no value needs to be specified. The process terminates after executing the command. |
junit-report-file | string | Filename to write junit style report toDefault: "" |
keep-alive | boolean | Use HTTP keep-aliveThis option can be specified without value to enable it.Default: true |
log | string… | The global or topic-specific log levelDefault: ["info"] Deprecated in: v3.5.0 |
number-of-shards | uint64 | Number of shards of created collections (cluster only)Default: 1 |
progress | boolean | Log intermediate progressThis option can be specified without value to enable it.Default: true |
quiet | boolean | Suppress status messagesThis option can be specified without value to enable it.Default: false |
replication-factor | uint64 | Replication factor of created collections (cluster only)Default: 1 |
requests | uint64 | Total number of operationsDefault: 1000 |
runs | uint64 | Run test n times (and calculate statistics based on median)Default: 1 |
test-case | string | Test case to useDefault: "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” |
verbose | boolean | Print out replies if the HTTP header indicates DB errorsThis option can be specified without value to enable it.Default: false |
version | boolean | Reports the version and exitsThis is a command, no value needs to be specified. The process terminates after executing the command. |
wait-for-sync | boolean | Use waitForSync for created collectionsThis option can be specified without value to enable it.Default: false |
Log
Name | Type | Description |
---|
log.color | boolean | Use colors for TTY loggingThis option can be specified without value to enable it.Default: dynamic (e.g. true ) |
log.escape | boolean | Escape characters when loggingThis option can be specified without value to enable it.Default: true |
log.file | string | Shortcut for ‘—log.output file://'Default: "-" |
log.file-group | string | Group to use for new log file, user must be a member of this groupDefault: "" Introduced in: v3.4.5, v3.5.0 |
log.file-mode | string | Mode to use for new log file, umask will be applied as wellDefault: "" Introduced in: v3.4.5, v3.5.0 |
log.force-direct | boolean | Do not start a seperate thread for loggingThis option can be specified without value to enable it.Default: false |
log.foreground-tty | boolean | Also log to tty if backgroundedThis option can be specified without value to enable it.Default: dynamic (e.g. false ) |
log.ids | boolean | Log unique message idsThis option can be specified without value to enable it.Default: true Introduced in: v3.5.0 |
log.keep-logrotate | boolean | Keep the old log file after receiving a sighupThis option can be specified without value to enable it.Default: false |
log.level | string… | The global or topic-specific log levelDefault: ["info"] |
log.line-number | boolean | Append line number and file nameThis option can be specified without value to enable it.Default: false |
log.output | string… | Log destination(s), e.g. file:///path/to/file (Linux, macOS) or file://C:\path\to\file (Windows)Default: [] |
log.performance | boolean | Shortcut for ‘—log.level performance=trace’This option can be specified without value to enable it.Default: false Deprecated in: v3.5.0 |
log.prefix | string | Prefix log message with this stringDefault: "" |
log.request-parameters | boolean | Include full URLs and HTTP request parameters in trace logsThis option can be specified without value to enable it.Default: true |
log.role | boolean | Log server roleThis option can be specified without value to enable it.Default: false |
log.shorten-filenames | boolean | Shorten filenames in log output (use with —log.line-number)This option can be specified without value to enable it.Default: true |
log.thread | boolean | Show thread identifier in log messageThis option can be specified without value to enable it.Default: false |
log.thread-name | boolean | Show thread name in log messageThis option can be specified without value to enable it.Default: false |
log.time-format | string | Time format to use in logsDefault: "utc-datestring" Possible values: “local-datestring”, “timestamp”, “timestamp-micros”, “timestamp-millis”, “uptime”, “uptime-micros”, “uptime-millis”, “utc-datestring”, “utc-datestring-millis”Introduced in: v3.5.0 |
log.use-local-time | boolean | Use local timezone instead of UTCThis option can be specified without value to enable it.Default: false Deprecated in: v3.5.0 |
log.use-microtime | boolean | Use microtime insteadThis option can be specified without value to enable it.Default: false Deprecated in: v3.5.0 |
Random
Name | Type | Description |
---|
random.generator | uint32 | 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
Name | Type | Description |
---|
server.authentication | boolean | 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-timeout | double | Connection timeout in secondsDefault: 5 |
server.database | string | Database name to use when connectingDefault: "_system" |
server.endpoint | string | Endpoint to connect to. Use ‘none’ to start without a server. Use http+ssl:// or vst+ssl:// as schema to connect to an SSL-secured server endpoint, otherwise http+tcp://, vst+tcp:// or unix://Default: "http+tcp://127.0.0.1:8529" |
server.force-json | boolean | Force to not use VelocyPack for easier debuggingThis option can be specified without value to enable it.Default: false Introduced in: v3.6.0 |
server.max-packet-size | uint64 | Maximum packet size (in bytes) for client/server communicationDefault: 1073741824 |
server.password | string | Password to use when connecting. If not specified and authentication is required, the user will be prompted for a passwordDefault: "" |
server.request-timeout | double | Request timeout in secondsDefault: 1200 |
server.username | string | Username to use when connectingDefault: "root" |
SSL
Name | Type | Description |
---|
ssl.protocol | uint64 | Ssl protocol (1 = SSLv2 (unsupported), 2 = SSLv2 or SSLv3 (negotiated), 3 = SSLv3, 4 = TLSv1, 5 = TLSv1.2, 6 = TLSv1.3, 9 = generic TLS)Default: 5 Possible values: 1, 2, 3, 4, 5, 6, 9 |
Temp
Name | Type | Description |
---|
temp.path | string | Path for temporary filesDefault: "" |
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 |