iCM scheduled tasks carry out background and housekeeping jobs in iCM. They can also be run on demand and be used to schedule the executions of end points that have been deployed to the serverlibrary.
The scheduled tasks home page lists all of the core tasks, temporary tasks that have been scheduled via iCM, such as bulk mailings and iCM reports (provided you have sufficient iCM security privileges to see them) and any schedules set up for end points.
The core set of tasks will always be listed regardless of whether they are currently scheduled or not.
Running a Task
Right-click a listed task to display a menu of available actions. You can either create a schedule or run the task now.
Scheduling a Task
When creating a schedule you can set the following properties. All dates should be entered in the format dd-MMM-yyyy and times as hh:mm:ss (twenty-four hour format)
Property | Description |
---|---|
Once on | The task will run once at the date/time specified |
Recurring between | The task will run daily, weekly or monthly at the set time, between the dates specified. Leave the end date blank if you would like it to run indefinitely |
Daily every | The task will run every hours/minutes/seconds between the times and dates specified starting at the "from" time. For example, starting a task at 12:10 to run every 15 minutes will cause it to run at 12:10, 12:25, 12:40 etc. Leave the end date blank if you would like it to run indefinitely. For example, you could set a task to run every 30 minutes between 08:00:00 and 18:00:00 from a certain date, forever |
Deleting a Schedule
To clear a schedule, right-click on it a select "Delete". This deletes the schedule and returns the status to "Not scheduled".
Task Results
Results are emailed to the "Task Status" email address held in your iCM Autoconfig. This address is set when iCM is first installed and can only be changed by our network support team. Please raise a support ticket if you need to update it.
Scheduling End Points
To schedule and end point, click "Schedule and end point" in the actions panel. The schedule properties have the same options as the core tasks described above.
Use the "Select" button to pick the end point you'd like to invoke on a schedule. The end point must be deployed to the serverlibrary. You can pick the latest version, the latest version within a major version number, or a specific major-minor version.
The description you enter here will be visible in the list of scheduled tasks. If you don't enter one, the end point's description will be used instead.
The parameters editor is the same as that found in the testing area of the end point editor. Parameters must be a valid JSON object of name/value pairs. The same parameters will be used each time the end point is invoked.
End point schedules can also be imported and exported from one iCM to another. To export an individual schedule, right click on it. To export all schedules, select "Export end point schedules" from the actions panel.
The request to execute the chosen end point is made by iCM. This means an iCM server must be running for the schedules to execute.
Copying Databases
When you copy an iCM database from one environment to another you should delete then recreate any scheduled tasks listed in this section of iCM.
Core Scheduled Task Recommendations
The following recommendations will suit a typical iCM installation. Most tasks should be run at "off-peak" periods, we recommend midnight and the very early hours.
Option | Description | Recommendation |
---|---|---|
ArticleArchiveCheck | Articles set to be archived will be moved when this task runs | If article archiving is to being used, then this task should be run daily |
AuthenticateGroups | If iCM Single Sign-On is being used, this task will synchronise iCM Users with the authentication provider | If network authentication is being used, this task should be run daily during off-peak periods |
BasketCheck | Empties abandoned shopping baskets after a specified number of days | If the commerce facility is used, this task should run daily |
CleanupClusterFiles | Deletes old temporary files from clustered servers (where one iCM database is used by more than one server) | This task should be run daily during off-peak periods |
CleanupDirectories | Deletes log files and other temporary files that may take up space on the server | This task should be run daily during off-peak periods |
DatabaseStatisticsMaintenance | Rebuilds the statistics for the main database tables used by the History worker | This task should be run daily during off-peak periods |
ExternalLinkCheck | Checks for unreachable external links. See External Link Testing for more information | This task should be run daily during off-peak periods |
InactiveCSUserLogout | Logs out any iCM users who have been inactive for the period specified in Timeouts | This task should be run once per inactive iCM user timeout period |
IndexWorkflowProcesses | Adds process instance and task information to the Workflow SOLR collection. The Workflow worker must also have | This task should never be scheduled or used on production environments. Updates are managed automatically as events occur in the workflow engine |
IndexWorkflowVerify | Verifies workflow process instance data in the search collections This task calls the Workflow worker verifyCollection. See that article for details | There shouldn't be any need to run this task. It has been added a a convenient way to call the worker method |
LockStaleUsers | Indefinitely locks out any iCM users who meet the conditions set in the lockstaleusers.cfm script (in the custom folder). Out of the box this script only includes example code, it does not lock users out. Locked out users are emailed. Users can be unlocked by an iCM administrator editing the user and unchecking the "Locked out" checkbox | This task should be run daily during off-peak periods |
ProductArchiveCheck | Archives product types in the products tree | If the commerce facility is used, this task should run daily |
PurgeProcessInstance | Deletes historic (closed) process instances. By default deletes any instances older than 365 days from when the task is run. This default is set in iCM's Content Settings. When this task runs a history is written to the platform's history service with a "labela" value of "Workflow". This records the number of instances deleted, or any errors | This task should be run daily during off-peak periods. Deleted instances cannot be recovered. Check that instance data is not being used before running (historic instance data needed for reporting should be recorded in the history service) |
PurgeVersionHistory | Checks content against your current version control policies and purges out of date items | This task should not be scheduled. iCM automatically maintains your version history as content is created and updated. If you make major changes to your version policies you may want to run this task as a one-off following those changes |
RetrySearchUpdate | If a search update gateway message fails (so content and the search collection become out of sync) this scheduled task will find the failed messages and attempt to reprocess them | This task should be run daily during off-peak periods |
SearchIndex | Rebuilds indexes for any custom Search Collections. Has no interaction with the standard search collections | If the website has custom search collections, this task should be run on a daily basis during off-peak periods. If the site doesn't use custom search collections, this task serves no purpose |
SearchRefresh | Re-indexes all of the standard search collections below. Before reindexing the current collections are deleted | Never schedule this task, it deletes all of the search collections which will take several hours to rebuild, during which time you will get no search results. It's generally only used after an upgrade |
SearchRefresh-Articles | As above, article specific | This task should never need to be scheduled. iCM maintains the search collections automatically as content is updated. If changes to your content aren't reflected in the search it could point to some other problem |
SearchRefreshMedia | As above, media specific | As above - this task should never need to be scheduled |
SearchRefresh-Objects | As above, object specific | As above - this task should never need to be scheduled |
SearchRefresh-PublishedEndpoints | As above, end point specific | As above - this task should never need to be scheduled |
SearchRefresh-PublishedForms | As above, form specific | As above - this task should never need to be scheduled |
SearchRefresh-SiteUsers | As above, site user specific | As above - this task should never need to be scheduled |
SearchRefresh-WIPEndpoints | As above, end point specific | As above - this task should never need to be scheduled |
SearchRefresh-WIPForms | As above, form specific | As above - this task should never need to be scheduled |
StaleArticleCheck | Checks for articles and media that are due or overdue for updating. The warning and escalation periods used by this task are set in the Content Settings section | If article updates are being used, this task should be run daily |
SuggesterTrain | Rebuilds the indexes used by the suggester feature to learn which suggested content is likely to be relevant | This task should never be scheduled. It is only ever used following an iCM upgrade. iCM maintains the suggester collections automatically as content is updated |
YouMayLikeRefresh | If "You may like" functionality is provided by your website templates, this task re-indexes the lists of "You may like" articles | If "You may like" is being used, this task should be run daily during off-peak periods |