Purpose

  • The Cleanup Service is used to purge historical data that is no longer required. This includes data from the JS7 - History, the JS7 - Daily Plan history, the JS7 - Deployment of Scheduling Objects history and the JS7 - Audit Log.
    • The execution history and logs of orders and tasks is purged.
    • The history of submissions to the Daily Plan is purged.
    • The deployment history is purged.
    • The audit log is purged.
  • A purge of historical data is performed in order to avoid filling up the JS7 - Database and to guarantee overall performance at an ongoing basis, see JS7 - Database Maintenance.
  • For organizations that are subject to compliance requirements, different retention policies might apply - for example, when it comes to the period for which task logs and audit log entries should be stored. In this situation consider the default values mentioned below for operation of the Cleanup Service and adjust them to your needs. This includes the option of not using the Cleanup Service and manually purging the JS7 database.

Cleanup Order and Task History

When an order is launched for a workflow then this will create an order log and a task log. The order log includes any output from jobs and instructions in the workflow, with the task log being available for each job individually. 

Therefore the number of records in the order and task history depends on the number of workflows and jobs executed in a given period. The size of historical records depends on the size of the output that is logged by your jobs.

Cleanup Daily Plan History

The JS7 - Daily Plan Service submits orders to any connected Controllers. The history of submissions allows tracking of the creation of orders, it is not related to the order and task history.

It is considered safe to purge entries from the Daily Plan History after orders have been completed.

Cleanup Deployment History

The Deployment History stores any objects that are subject to deployment, i.e. objects which have been forwarded to a Controller. The Deployment History allows tracking of the lifecycle of an object and allows re-deployment of objects from an older state.

It is safe to purge deployment history entries if you do not rely on falling back to an earlier version of an object, such as a workflow.

The purge is based on the number of versions per object that should be retained.

Cleanup Audit Log

The JS7 - Audit Log holds information about any operation performed which changes the state of an object, such as deploying objects, adding orders etc. Depending on the number of deployments and interventions related to order execution, the audit log can grow to some considerable size.

In addition, the Audit Log holds the History of Failed Logins that can be used to identify reasons for unsuccessful logins and to identify attacks from repeatedly failed logins.

Organizations which are subject to compliance requirements should check if retention periods for purging the Audit Log and History of Failed Logins meet their needs.

Cleanup Identity Services

The JS7 - Identity Services manage accounts that hold JS7 - Profiles.

For accounts that have not been used for a longer time the user profiles are purged. This does not prevent users from logging in at any later point in time, instead it prevents garbage from unused user profiles.

Configuration

Location

  • The "Settings" menu can be accessed in the JOC Cockpit GUI.

Configuration Items

SectionSettingDefaultRequiredPurpose
cleanuptime_zoneUTCnoSpecifies the time zone that is applied to the start time and period of the Cleanup Service

period
noSpecifies weekdays on which the Cleanup Service is performed. The first day of week is assumed to be Monday. When initially installing JS7 then the distribution includes the value: 1,2,3,4,5,6,7. Without this setting the Cleanup Service will not start.

period_begin01:00:00noSpecifies the start time of the Cleanup Service for the given period, e.g. on a daily basis.

period_end04.00:00noSpecifies the end of the period which the Cleanup Service is allowed to run for. If the Cleanup Service completes its task first then it will stop before the indicated time. However, it will not continue to run beyond the indicated time. 

force_cleanupfalseno

If set to true, specifies that the Cleanup Service will be forcibly executed. By default the Cleanup Service will stop if it detects activity of the History Service. The setting allows the Cleanup Service to pause the History Service for a configurable duration.

When the setting is set to true, then the following settings are considered:

  • history_pause_duration: period for which the History Service is paused.
  • history_pause_delay: delay after the History Service is resumed from a pause for which the Cleanup Service will wait to restart.

Users who run jobs 24/7 without sufficient idle time of the History Service to allow the Cleanup Service to become active, should activate the setting to force execution of the Cleanup Service. Missing purge of the database will result in reduced performance and growing resource consumption of the database.


history_pause_duration60sno

When the force_cleanup setting is set to true then the History Service will be paused for the indicated duration or for completion of cleanup whichever occurs first. While the History Service is paused, no new history entries about execution of orders and tasks are made available in JOC Cockpit. On completion of the History Service pause any pending history entries will be processed.


history_pause_delay30snoWhen the force_cleanup setting is set to true and the History Service pause is completed, then the Cleanup Service will wait for the indicated delay and will restart if further purge of the database is required.

batch_size1000noSpecifies the number of records that are purged within a single transaction. Increasing this value can improve performance - at the same time it will increase the risk of conflicts with concurrent transactions if Services are operating on the database in parallel.

max_pool_size8no

Specifies the maximum number of database connections used by the service.

Availability starting with JOC-1366 - Getting issue details... STATUS


order_history_age90dnoSpecifies the retention period for the execution history of orders and tasks. Any history entries older than the value specified will be purged.

order_history_logs_age90dnoSpecifies the retention period for orders and task logs. Any logs older than the value specified will be purged. Note that this value should not exceed the value of the cleanup_order_history_age setting as otherwise navigation to logs cannot be provided by the JOC Cockpit GUI.

file_transfer_history_age90dnoSpecifies the retention period for file transfer history entries. Any entries older than the value specified will be purged.

audit_log_age90dnoSpecifies the retention period for the Audit Log. Any audit log entries older than the value specified will be purged.

daily_plan_history_age30dnoSpecifies the retention period for the history of submissions with the Daily Plan. Any history entries older than the value specified will be purged.

monitoring_history_age1dnoSpecifies the retention period for entries in the Monitor view. As this suggests to be a tactical view longer retention periods are not recommended.

notification_history_age1dnoSpecifies the retention period for notifications, e.g. about job errors and warnings. As notifications are typically handled on the same day longer retention periods are not recommended.

profile_age365dnoSpecifies the retention period for unused profiles, i.e. profiles of user accounts that did not login for the given period.

failed_login_history_age90dnoSpecifies the retention period for the history of failed logins. Unsuccessful logins that occurred before the given period will be purged.

reporting_age365dnoSpecifies the retention periof for JS7 - Reports.

deployment_history_versions10noSpecifies the number of versions per deployed object that should be retained. Such versions can be used to re-deploy an object from an earlier state. Any earlier deployed versions of deployed objects are removed.

Logging

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