- 
                Notifications
    You must be signed in to change notification settings 
- Fork 11
v3.2 Configuration
        Andrey Kurilov edited this page Mar 3, 2017 
        ·
        2 revisions
      
    All the configuration values have the default values which may be seen
in the file <MONGOOSE_DIR>/config/defaults.json
To configure the run an user should use the corresponding CLI arguments to override the default values. A CLI argument is parsed as a JSON path:
--item-data-size=100KB
is parsed to point to the following JSON node:
"item" : {
    "data" : {
        "size" : "100KB"
    }
}| Name | Type | Default Value | Description | 
|---|---|---|---|
| item-data-content-file | Path | null | The source file for the content generation | 
| item-data-content-seed | String | 7a42d9c483244167 | The initial value for the random data generation | 
| item-data-content-ringSize | Fixed Size | 4MB | The size of the content source ring buffer | 
| item-data-ranges-fixed | Byte Range list | null | The fixed byte ranges to update or read (depends on the specified load type) | 
| item-data-ranges-random | Integer >= 0 or Byte Range | 0 | The count of the random ranges to update or read | 
| item-data-ranges-threshold | Size | 0 | The size threshold to enable multipart upload if supported by the configured storage driver | 
| item-data-size | Size | 1MB | The size of the data items to process. Doesn't have any effect if item.type=container | 
| item-data-verify | Flag | false | Specifies whether to verify the content while reading the data items or not. Doesn't have any effect if load-type != read | 
| item-input-file | Path | null | The source file for the items to process. If null the behavior depends on the load type. | 
| item-input-path | String | null | The source path which may be used as items input if not "item-input-file" is specified. Also used for the copy mode as the path containing the items to be copied into the output path. | 
| item-naming-type | Enum | random | Specifies the new items naming order. Has effect only in the case of create load. "asc": the new items are named in the ascending order, "desc": the new items are named in the descending order, "random": the new items are named randomly | 
| item-naming-prefix | String | null | The name prefix for the processed items. A correct value is neccessary to pass the content verification in the case of read load. | 
| item-naming-radix | Integer >= 2 | 36 | The radix for the item ids. May be in the range of 2..36. A correct value is neccessary to pass the content verification in the case of read load. | 
| item-naming-offset | Integer >= 0 | 0 | The start id for the new item ids | 
| item-naming-length | Integer > 0 | 13 | The name length for the new items. Has effect only in the case of create (if not partial) load | 
| item-output-delay | Integer >= 0 | 0 | The minimum delay between the subsequent I/O operations for each item (chain load). 0 means no delay. | 
| item-output-file | Path | null | Specified the target file for the items processed successfully. If null the items info is not saved. | 
| item-output-path | String | null | The target path. Null (default) value leads to path name generation and pre-creation. | 
| item-type | Enum | data | The type of the item to use, the possible values are: "data", "container". In case of filesystem "data" means files and "container" means directories | 
| load-circular | Flag | false | Specifies whether to process the items multiple times (again and again) or not | 
| load-concurrency | Integer > 0 | 1 | The concurrency level. In case of filesystem the number of open files at any moment. In case of HTTP the number of the active connections at any moment. | 
| load-generator-shuffle | Flag | false | Defines whether to shuffle or not the items got from the item input, what should make the order of the I/O tasks execution randomized | 
| load-job-name | String | null | The load job name for this launch. Generated automatically if not specified (null). Specifies also the log directory path: log/<JOB_NAME>/ | 
| load-limit-count | Integer >= 0 | 0 | The maximum number of the items to process for any load job. 0 means infinite | 
| load-limit-rate | Float >= 0 | 0 | The maximum number of the items to process per second (throughput limit). 0 means no rate limit. | 
| load-limit-size | Fixed size >= 0 | 0 | The maximum size of the data items to process. 0 means no size limit. | 
| load-limit-time | Time >= 0 | 0 | The maximum time to perform a load job. 0 means no time limit | 
| load-metrics-period | Time | 10s | The time period for the load job's metrics console output. 0 means to not to output the metrics at all | 
| load-metrics-precondition | Flag | false | Enabling precondition mode disables the metrics output for a load job to the perf*.csv log files | 
| load-metrics-threshold | 0 <= Float <= 1 | 0 | The concurrency threshold to enable intermediate statistics calculation | 
| load-queue-size | Integer >= 1 | 1000000 | The maximum number of the unique items processed in the case of the circular load | 
| load-type | Enum | create | The operation to process the items, may be "create", "update", "read" or "delete" | 
| scenario-file | Path | null | The default JSON scenario to run, null means invoking the default.json scenario bundled into the distribution | 
| storage-auth-id | String | null | The authentication identifier | 
| storage-auth-secret | String | null | The authentication secret | 
| storage-auth-token | String | null | S3: no effect, Atmos: subtenant, Swift: token | 
| storage-driver-remote | Flag | false | Distributed mode: the flag to enable using remote storage drivers | 
| storage-driver-addrs | List of strings | 127.0.0.1 | Distributed mode: the list of the storage drivers IPs or hostnames, may include port numbers to override the default port number value | 
| storage-driver-port | Integer > 0 | 1099 | Distributed mode: the common port number to start the storage driver services | 
| storage-mock-capacity | Integer > 0 | 1000000 | WS mock: the maximum count of the items to be stored in the storage mock which are may be to read back | 
| storage-mock-container-capacity | Integer > 0 | 1000000 | WS mock: the maximum count of the items to be stored in the container which are may be to read back | 
| storage-mock-countLimit | Integer > 0 | 1000000 | WS mock: the maximum count of the containers to be stored in the storage mock | 
| storage-mock-node | Flag | false | Start the storage mock cluster node with local network auto discovery | 
| storage-net-timeoutMilliSec | Integer >= 0 | 1000000 | The socket timeout | 
| storage-net-reuseAddr | Flag | true | |
| storage-net-keepAlive | Flag | true | |
| storage-net-tcpNoDelay | Flag | true | |
| storage-net-linger | Integer >= 0 | 0 | |
| storage-net-bindBacklogSize | Integer >= 0 | 0 | |
| storage-net-interestOpQueued | Flag | false | |
| storage-net-selectInterval | Integer > 0 | 100 | |
| storage-net-ssl | Flag | false | The flag to enable the load through SSL/TLS. Currently only HTTPS implementation is available. Have no effect if configured storage type is filesystem. | 
| storage-net-http-api | Enum | S3 | Specifies the HTTP storage API to use: Atmos, S3 or Swift | 
| storage-net-http-fsAccess | Flag | false | Specifies whether filesystem access is enabled or not in the case of S3 or Atmos API | 
| storage-net-http-headers | Map | { "Connection" : "keep-alive", "User-Agent" : "mongoose/3.0.0" } | Custom HTTP headers section. An user may place here a key-value pair which will be used as HTTP header. | 
| storage-net-http-namespace | String | null | The HTTP storage namespace. WARNING: the default value (null) will not work in the case of Swift API | 
| storage-net-http-versioning | Flag | false | Specifies whether the versioning storage feature is used or not | 
| storage-net-node-addrs | List of strings | 127.0.0.1 | The list of the storage node IPs or hostnames to use for HTTP load. May include port numbers. | 
| storage-net-node-port | Integer > 0 | 9020 | The common port number to access the storage nodes, may be overriden adding the port number to the storage-driver-addrs, for example: "127.0.0.1:9020,127.0.0.1:9022,..." | 
| version | String | next | The Mongoose version | 
The configuration parameters supporting the time type:
- load-limit-time
- load-metrics-period
| Value | Effect | 
|---|---|
| 0 | Infinite/not set | 
| -1 | Invalid value | 
| 1 | 1 second | 
| "1s" | 1 second | 
| "2m" | 2 minutes | 
| "3h" | 3 hours | 
| "4d" | 4 days | 
| "5w" | Invalid value | 
| "6M" | Invalid value | 
| "7y" | Invalid value | 
The configuration parameters supporting the time type:
- item-data-content-ringSize
- item-data-size
- load-limit-size
| Value | Effect | 
|---|---|
| -1 | Invalid Value | 
| 0 | 0 bytes (Infinity in case of load.limit.size) | 
| 1 | 1 bytes | 
| 1024 | 1024 bytes or 1KB | 
| "0B" | 0 bytes (Infinity in case of load.limit.size) | 
| "1024B" | 1024 bytes or 1KB | 
| "1KB" | 1024 bytes or 1KB | 
| "2MB" | 2MB | 
| "6EB" | 6EB (exobytes) | 
| "7YB" | Invalid Value | 
| Alias | Target Parameter | Default Value | 
|---|---|---|
| load-threads | load-concurrency | * | 
| run-id | load-job-name | * | 
| noop | load-type | noop | 
| create | load-type | create | 
| read | load-type | read | 
| update | load-type | update | 
| delete | load-type | delete | 
| Alias | Target Parameter | Default Value | 
|---|---|---|
| atmos-subtenant | storage-auth-token | * | 
| Alias | Target Parameter | Default Value | 
|---|---|---|
| s3-input-bucket | item-input-path | * | 
| s3-output-bucket | item-output-path | * | 
| Alias | Target Parameter | Default Value | 
|---|---|---|
| swift-input-container | item-input-path | * | 
| swift-input-container | item-output-path | * | 
- Overview
- Deployment
- User Guide
- Troubleshooting
- Reference