Scheduled Tasks not working.
The Task Scheduler in Kentico is a crucial component for automating various processes and maintaining the system's efficiency. When encountering issues with the Task Scheduler, it's essential to follow a systematic troubleshooting approach to identify and address the underlying problems.
There are many depedencies on why the Task Scheduler in Kentico can not successfully run so here are some areas to check for when debuging the Scheduler.
If you're using MVC development model the customers often do forget that the admin app must be up and running to process tasks - as stated in the scheduler reliability documentation we have, see: Keeping the administration application running. Setting the Start Mode advanced setting of the used application pool in IIS to AlwaysRunning. This ensures that the Xperience application's worker process does not shut down if no one accesses the administration interface for a certain period of time. If you do not want to use the AlwaysRunning setting, you can alternatively keep the application alive by sending automated HTTP requests to your Xperience application within the time-out interval.
You can also set up the Scheduler Windows service to process many types of scheduled tasks independently from the Xperience application: Installing the Scheduler Windows service | Xperience 13 Documentation
Second point - if it is the case of custom scheduled task, customers often forget what context is needed and whether the task should run on admin side, front end app side or both - depending on what data is the task working with. See: Scheduling custom tasks | Xperience 13 Documentation.
Third point - If you're are receiving failures when the tasks executes, it could be due to a few things listed below:
- Invalid SSL certificate
- For local or secured environments you can use the CMSSchedulerAcceptAllCertificates web.config key. Or, when using a self-signed SSL certificate.
- Kentico admin app cannot access itself on the domain set as Presentation URL (firewall, proxy, load balancer, etc) Large amount of times it was caused by firewall settings - the IP address of the CMS application was blocked, by simply whitelisting the IP address of the CMS had fixed the issue for previous customers.
- When debugging/testing scheduled tasks on your LOCAL environment It could be beneficial to use CMSSchedulerAdministrationUrl and CMSSchedulerPresentationUrl in the web.config keys. See documentation: Configuring your local environment and Reference - Web.config application keys | Xperience 13 Documentation
- There were quite a few Hotfixes released for certain bugs relating to the Scheduler - Apply latest Hotfix.
- If none of the tasks are running, that the Scheduler is actually enabled:
However, when emailing support simply send an email addressing the following questions:
- Details of any error messages in in the Scheduled tasks.
- Include Event log application for any errors.
- What specific Tasks are you trying to run?
- Are there any proxy servers, firewalls or anything else which could block the requests in the way?
- Are there any restrictions set in the web.config file to any of the locations inside the admin app file system?
- Are you using shared file system with the MVC app? Blob storage, CDN?