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
Section | Setting | Default | Required | Purpose |
---|---|---|---|---|
cleanup | time_zone | UTC | no | Specifies the time zone that is applied to the start time and period of the Cleanup Service |
period | no | Specifies 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_begin | 01:00:00 | no | Specifies the start time of the Cleanup Service for the given period, e.g. on a daily basis. | |
period_end | 04.00:00 | no | Specifies 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_cleanup | false | no | If set to When the setting is set to
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_duration | 60s | no | When the | |
history_pause_delay | 30s | no | When 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_size | 1000 | no | Specifies 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_size | 8 | no | ||
order_history_age | 90d | no | Specifies 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_age | 90d | no | Specifies 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_age | 90d | no | Specifies the retention period for file transfer history entries. Any entries older than the value specified will be purged. | |
audit_log_age | 90d | no | Specifies the retention period for the Audit Log. Any audit log entries older than the value specified will be purged. | |
daily_plan_history_age | 30d | no | Specifies 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_age | 1d | no | Specifies 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_age | 1d | no | Specifies 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_age | 365d | no | Specifies the retention period for unused profiles, i.e. profiles of user accounts that did not login for the given period. | |
failed_login_history_age | 90d | no | Specifies the retention period for the history of failed logins. Unsuccessful logins that occurred before the given period will be purged. | |
reporting_age | 365d | no | Specifies the retention periof for JS7 - Reports. | |
deployment_history_versions | 10 | no | Specifies 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.