ISAM Agent Configuration
If you'll be using the ISAM Agent, it must be configured using the ISAMAgent property in MasterConfig.json.
ISAM Agent Configuration
{
"ISAMAgent": {
"AdminLoginDurationMinutes": 60,
"EnableHostTerminal": true,
"EnableSwaggerUI": true,
"LogCacheMaxRows": 1000,
"LogToFile": true,
"LogFilePath": "C:/PATH/TO/LOGFILES",
"PeriodicServices": {
"Entries": [
{
"Name": "PeriodicServiceTest",
"Program": "C:/PATH/TO/PROGRAM.EXE",
"Arguments": "--arg1 --arg2",
"WorkingDirectory": "",
"CronExpression": "* * * * *",
"Priority": 1,
"Enabled": true,
"PauseEnabled": false
}
]
},
"RetainInvalidatedFiles": false,
"SnapshotFactory": {
"RootFolder": "C:/PATH/TO/SNAPSHOTS",
"ReplaceFolder": ""
},
"SnapshotProvider": "LocalS3",
"SnapshotRestoreTimeoutSeconds": 21600,
"VerboseLogging": false,
"WaitForLock": 2
}
}
Configuration Properties
| Property | Type | Description |
|---|---|---|
| AdminLoginDurationMinutes | Integer | How many minutes the agent UI is valid before the user must log in again (default 60) |
| EnableHostTerminal | Boolean | Should the host login terminal be available in the UI? |
| EnableSwaggerUI | Boolean | Should the ISAM Agent expose API information via SwaggerUI? |
| LogCacheMaxRows | Integer | Maximum number of log messages retained in memory for the UI (1 to 5000, default 1000) |
| LogToFile | Boolean | When enabled, a log file is created (default false) |
| LogFilePath | String | When LogToFile is enabled, the directory where the log file should be created |
| PeriodicServices | Object | Hosted commands that run on a cron schedule |
| PeriodicServices.Entries | Object[] | An array of periodic service entries |
| ...Entry.Name | String | Job name |
| ...Entry.Program | String | The command to run |
| ...Entry.Arguments | String | Command line arguments |
| ...Entry.WorkingDirectory | String | The working directory to be set for the running program |
| ...Entry.CronExpression | String | A valid cron expression that defines when the job should run |
| ...Entry.Priority | Integer | Job priority (1 is the highest, then 2, etc.) (default 1) |
| ...Entry.Enabled | Boolean | Is the job enabled? (default false) |
| ...Entry.PauseEnabled | Boolean | Can the service be paused by an administrator? (default false) |
| RetainInvalidatedFiles | Boolean | Should files from an invalidated replica be retained? (default false) |
| SnapshotFactory | Object | Settings used when the LocalS3 provider is in use |
| ...RootFolder | String | If the LocalS3 provider is used, a folder to use for temporary files |
| ...ReplaceFolder | String | Used to remap the destination of restored files |
| SnapshotProvider | Enum | The SnapshotProvider to use (LocalS3 or RemoteS3 (default)) |
| SnapshotRestoreTimeoutSeconds | Integer | Maximum time allowed for snapshot restore operations (default 21600, 0=no limit) |
| VerboseLogging | Boolean | Should verbose logging be enabled? (default false) |
| WaitForLock | Integer | The number of seconds to wait for a record lock to be resolved |