Overview
This page provides information about how to set global configurations for the SkySync platform. You configure variables in the database through the command-line interface or in the appSettings.json file. (The appSettings.json file is located in C:\Program Files\SkySync\appSettings.json unless a different directory was specified during installation).
Before changing any configuration settings, it’s important to understand the factors that influence transfer performance. These variables all have a significant effect, positive or negative, on the throughput that any migration will achieve. |
Environment Overrides and Precedence
Below is the order of precedence, in order from highest to lowest, in which SkySync reads the configuration once the database and service are online and installation is complete. If a variable is set in two locations, SkySync will override the setting in the lower source with the one in the higher source.
License first
Then database
Then command-line
Then environment variables
Then appSettings.json
Changes to the appsettings.json file will not take effect until the SkySync services is restarted. |
Available Configuration Options
The table below lists the global configuration options available to edit.
Object | Key | Description | Acceptable Values | Default Value | Applicable to appSettings.json Only |
---|---|---|---|---|---|
logging | |||||
level | Audit Level or Log Level
| Trace | info | false | |
retention_days | The log retention duration in days | integer | 21 | false | |
metrics | |||||
graphite:host | The graphite server name to use when publishing metrics | string | (null) | true | |
graphite:port | The graphite server port (can be empty and will default based on server format) | integer | (null) | true | |
graphite:id | A node identifier to prefix all metric key names (useful to distinguish metrics coming from multiple nodes in a cluster) | string | (null) | true | |
net | |||||
fiddler:enable | Enable the FiddlerCore plugin to allow the embedded Fiddler to collect traces. You will still need to separately enable and disable trace collection as needed. | true | false | false | |
Box | |||||
box:suppress_notes_versions | Determines if Box Notes versions should be transferred. By default, the value is set to true, which suppresses versions and only transfers the latest version. If set to false, all versions of the Box Note will transfer. | true | true | false | |
office365 | |||||
batch_item_limit | The default batch item limit in Office365 | integer | 100 | false | |
batch_max_size | The default batch max total size in Office365 | integer | (null) | false | |
batch_monitor_interval | The retry interval when monitoring Office365 batches for completion (ms) | integer | 1000 | false | |
batch_monitor_max_retries | The maximum number of retries when monitoring Office365 batches for completion | integer | 86400 | false | |
site_template_ids | Comma delimited list of site template ids to be returned when listing site collections | string | "STS#0", "GROUP#0", "EHS#1" | false | |
performance | |||||
parallel_writes | Performance Parallel Writes The default parallel write value is set at 4, 8, or 12 based on CPU logical processors count of the machine running the SkySync service. If the CPU Logical Processors is 2, the default parallel writes value is 4. | integer | Varies | false | |
concurrent_transfers | Performance Concurrent Transfers | integer | 6 | false | |
upload | Performance Throttle Upload | integer | (null) | false | |
download | Performance Throttle Download | integer | (null) | false | |
transfers | |||||
encode_invalid_characters | Encodes invalid characters instead of replacing them with an underscore | true | false | false | |
segment_truncate | Shortens a path or segment name when it exceed the maximum number of characters allowed based on the platform. Truncation removes the right-most characters until the path meets the length requirements. | true | false | false |
Usage Examples
For each of the variable override options above, there exists a specific method of setting the variable that is called. In these examples, we will look at increasing the default concurrent transfer limit.
Database
To set the config option via the database, enter the following command with your desired option:
Code Block |
---|
>skysync.exe config set performance:concurrent_transfers 10 --in-database |
To clear the configuration option in the database, run the following:
Code Block |
---|
>skysync.exe config clear --config-key performance:concurrent_transfers --in-database |
Command-Line Interface
To set the config option via the command-line interface, enter the following with your desired option:
Code Block |
---|
>skysync.exe --performance:concurrent_transfers=10 |
appSettings.json File
To set the configuration option via your local appSettings.json file, add the following snippet with your desired option:
Code Block |
---|
{ "performance": { "concurrent_transfers": "10" }, } |
To see this in full context of your local appSettings.json file with multiple options enabled:
Code Block | ||
---|---|---|
| ||
{ "data": { "provider": "sqlserver", "connection": "Server=server_location;Database=database_name;User ID=sa;Password=passW@rd!;", "embedded": "false", "native_encryption": "false" }, "performance": { "parallel_writes": 6, "concurrent_transfers": 10 } } |
Changes to the appsettings.json file will not take effect until the SkySync services is restarted. |