Introduction

  • The History Service is used to receive events about the execution of workflows and jobs from any connected Controllers and to add them to the JS7 - History.
  • As a result, the execution history and logs of orders and tasks become available. Due to the asynchronous nature of JS7 products this task is performed by a background service.

Execution History

The execution history includes reporting information about workflows, orders and tasks such as start time, end time and execution result.

Execution Logs

Execution logs are provided for orders and tasks. Log output is added to the reporting database and is accessible from the JS7 - History.

Interaction with Controller

The History Service connects to the Controller by use of the Proxy Service, see JS7 - System Architecture.

The Controller holds events occurring from JS7 - Order State Transitions for any subscribed History Service instance and forwards them to the History Service. After any subscribed History Service instances have received events and confirmed receipt by releasing events then the Controller will drop these events from its journal.

Behavior of the History Service in case of Outages

If a Controller is not active or the network connection to a Controller is not available then the History Service will repeatedly try to connect. This behavior will continue for minutes, hours and days.

If a fail-over or switch-over with a Controller occurs then this will not affect the History Service which is automatically routed to the active Controller instance by use of the Proxy Service.

Behavior of the Controller in case of Outages

If the History Service is not active and therefore does not release events then these events will remain with the Controller and will fill up its journal. Events include any log output that is created from jobs and workflow instructions. Users should make an assumption about the maximum duration of an outage of the History Service during periods of high job frequency. The Controller's journal will grow as large as allowed within the limits of the file system. Due to the fact that individual log output of jobs is included and that jobs are executed at individual frequencies we cannot give an estimate of the growth rate. However, reserving a few GB disk space for both the Primary and Secondary Controllers' journals is required.

  • It is desirable that no events will be lost during an outage of the History Service or an outage of the connection between History Service and Controller. 
  • If users operate jobs with considerable log output at medium frequencies, e.g. > 10 000 jobs per hour, then sufficient disk space should be made available. There is no problem in having a Controller journal exceed, for example 30 GB of disk space. The journal will shrink automatically after events have been processed and have been released by the History Service.

Configuration

There are no configuration items for the History Service.

Logging

  • The History Service logs general messages, warnings and errors in the joc.log file.
  • More detailed information in addition is logged in the Main Log service-history.log file.
  • In addition to the Main Log detailed debug information is logged in the Debug Log service-history-debug.log file.
  • For details see the JS7 - Log Files and Locations article.