Troubleshooting
Troubleshooting
How to investigate
- Check the command exit code. See Exit codes.
- Find the run messages in the Riversoft® Console Portal (database mode) or in the text log in
applLogDir(local file mode). - Look up the message code (
MSGnnnn) in Message codes. - Repeat the run with
-testto see which rule is applied to the file. - If you need more detail, temporarily raise
applDebugand write the output with-errfile. See Level of detail.
Startup
| Symptom | Likely cause | What to do |
|---|---|---|
The command shows the help and exits with code 2. | No file and no -scan, -ini or -export option was given. | Give the file after the options or use -scan. See Syntax. |
Code 4 and MSG7942. | Invalid or expired license, mismatched serial number, configuration or log database unreachable. | Check the License file, the instance and the database connections. |
Error reading config.json. | Missing file, invalid JSON or wrong -config path. | Validate the file with python3 -m json.tool config.json. |
| Instance passwords are not accepted. | applConfigPassPhrase differs from the one used by the other products. | Use the same key. See Password encryption key. |
| The instance is not found. | cfgInstanceName differs from the instance name. | Adjust cfgInstanceName. |
Rules
| Symptom | Likely cause | What to do |
|---|---|---|
MSG7003: no rule for the file. | No rule matches the file name, directory or source. | Review FileRegEx, DirRegEx and SrcRegEx. Check that -src was given when the rule uses SrcRegEx. |
| A correct rule is never applied. | An earlier, more generic rule matches first; the rule is locked (Locked); or there is a gap in Index. | Reorder the rules, unlock the rule and keep the numbers without gaps. |
| The routing is not found. | Name in -rules differs from the registered one, or -db is missing. | Check the name in the Portal. For routings in files, give the JSON path without -db. |
MSG7027: invalid regular expression. | Syntax error in the expression, such as an unescaped backslash in the JSON. | In JSON, write \\. to represent \.. |
MSG7032: out of the allowed period. | The file arrived outside the allowed time or day. | Review the StartDate..., EndDate... and WeekDayInterval fields. |
MSG7021: minimum age not reached. | The file is newer than ProcessAfterSeconds. | Wait for the next run or lower the value, which is read in milliseconds. |
MSG7033: invalid size. | The file is outside FileLenMin and FileLenMax. | Review the limits and FileLenOption. |
| The file is not copied and no failure is recorded. | CopyFileOption does not include option 1. | Add 1 to the copy options. |
Copy, backup and commands
| Symptom | Likely cause | What to do |
|---|---|---|
MSG7007 with “file exist”. | The destination file already exists. | Add option 16 to overwrite, or include date and time or a sequence number in the name. |
MSG7007 or MSG7019 with “no such file or directory”. | The destination or backup directory does not exist. | Add option 4 to create the directory. |
MSG7007 or MSG7019 with “permission denied”. | The run user has no permission on the directory. | Adjust the permissions. See Run user. |
MSG7011 or MSG7012. | The external command does not exist, is not executable or exited with a code other than 0. | Use the absolute path, test the command as the run user and check the exit code. |
The external command receives the variable text, for example $ERROR. | The variable has no value in this run or is not replaced. | Check the Variable reference. |
MSG7022: control file not found. | The rule requires a control file (option 2) that does not exist. | Check the name in CheckLockUnlockFileName and the process that should create it. |
MSG7023: control file creation failed. | The file already exists, from an interrupted previous run. | Make sure no other run is in progress and remove the old control file. |
Scan
| Symptom | Likely cause | What to do |
|---|---|---|
| No file is processed. | -scan is missing, the scan filters exclude the files or the files are in subdirectories. | Check -scan, ScanFileRegEx, ScanDirRegEx and use -subdir2 to include subdirectories. |
| The scan exits without processing while another one is running. | The semaphore (ScanLockSem) is in use and option 1 ends the new run. | Expected behavior. Adjust the schedule interval if runs often overlap. |
Support
If the problem persists, contact Support with the version (stcpren -v), the command run, the exit code, the recorded messages and the routing exported with -export.