Troubleshoot Rule Engine Server

The Rule Engine runtimes can be in one of three states:

  • ERR_CREATE
  • ERR_CONFIG
  • CONFIGURED

In order to query the state of the Rule Engine runtimes, use the RuleEngineStatusRest call (see Example for RuleEngineStatusRest call). Runtimes that are in the ERR_CREATE or ERR_CONFIG state will be listed in the inErrorEnginesStatus portion of the response, while CONFIGURED runtimes will be part of inUseEngineStatus or freeEngineStatus.

The ERR_CREATE state

Rule Engine runtimes enter this state if there was an error executing the rdjins or rdjsic scripts. An error at this stage usually signals either that there is a problem with the installation or that the current user has insufficient read/write permissions.

Runtimes in this state will not be taken into account in subsequent configuration updates and will remain in the inErrorEnginesStatus queue until the server is restarted.

It is possible that the incomplete runtime is written on disk, and that a server restart is not enough to remove the runtimes from the inErrorEnginesStatus queue. After the underlying cause of the error is resolved, it is recommended that you manually delete such runtimes.

Note   Although the runtimes are not taken into account for subsequent processing, they still count towards the license count limit. If the number of runtimes in ERR_CREATE becomes large enough, further runtime creation may be halted due to license limitations.

The ERR_CONFIG state

Rule Engine runtimes enter this state whenever there is an error executing the rdjraz, rdjdep, rdjmaj, or rdjrch scripts. An error at this stage usually signals that there is a problem with the configuration you are trying to deploy on the current runtime.

When a configuration causes a runtime to enter the ERR_CONFIG state, it is marked as faulty. Until the configuration is updated, it will not be allowed to be deployed on a runtime.

The Rule Engine Server will attempt to reconfigure runtimes in this state before reconfiguring runtimes with a valid configuration. Manual deletion of these runtimes is not mandatory.

The CONFIGURED state

Rule Engine runtimes enter this state when the configuration process signaled no errors. They are working as intended and are ready to be used for processing.

Delete a runtime

In case one or more runtimes end up in the ERR_CREATE state, and restarting the server does not remove them from the inErrorEnginesStatus queue, they must be manually deleted from the filesystem.

In order to delete a runtime named ARE_9 of type File, follow these steps:

  • Ensure that the Rule Engine Server is closed
  • Delete the <InstallPath>/AccountingIntegrator/RuleEngineFile/runtimes/ARE_9 folder
  • Edit the <InstallPath>/Configuration/Install_AIRuleEngineFile_V2.3.0.properties and delete all occurrences of ARE_9 contained in the file, for example:

ARE_9 = true

ARE_9.Type = Module

ARE_9.ModuleType = Dynamic

ARE_9.LogicalName = ARE_9

ARE_9.ParentName = Runtime

ARE_9.Title = ARE_9

RUNTIME_DIR_ARE_9 = <InstallPath>/AccountingIntegrator/RuleEngineFile/runtimes/ARE_9

RUNTIME_DIR_ARE_9.Type = Directory

RUNTIME_LANG_ARE_9 = English

INSTALL_VALID_ARE_9 = false

 

Related Links