Contact Free trial Login

Managing Schedules (CloudHub)

The CloudHub console includes a Schedules tab in the left navigation menu where you can view and control any polling elements within the flows of your deployed applications. CloudHub automatically detects the polling elements from within your flows and lists them on the Schedules tab. On this tab, you can select the polling elements and enable or disable them, change the polling frequency, or run them immediately – all during runtime, without making any changes in the underlying application.

Use Cases

The Schedules tab is useful in the following scenarios:

  • You have a job that runs nightly but you want to trigger it right now so you can debug it. You want to do this in runtime so you don’t need to update the schedule in your underlying application.

  • You want to change the schedules in your application at runtime without redeploying.

  • You want to disable a scheduled job while one of the applications you are connecting to is undergoing maintenance.

  • You want runtime visibility into the schedules in your application.

Considerations

  • Schedulers are managed by CloudHub and are triggered in only one worker even if more are available.

  • Setting a polling Schedule for less than a 10-second frequency between calls is not recommended.

  • If a scheduled job is not triggered one or more times because the application is down, CloudHub triggers the job as soon as the application restarts.

  • CloudHub scheduler reads a schedule job configuration every time it runs. This means that if you update the schedule time, the change is not immediate. The job executes as it was initially configured before the scheduler picks up the next setting for the next time it runs. To apply your changes immediately, run your jobs after every schedule update.

  • If poll execution time takes longer than 12 hours, the scheduler fails and is re-executed.

  • CloudHub schedules cannot be managed using scripts. Use the CloudHub API or Schedules tab in Runtime Manager to manage CloudHub schedules.

Flow names can contain only letters (a-zA-Z), numbers (0-9), hyphen (-), underscore (_), and period (.).

View Application Schedules in the Console

To use the scheduling feature in Runtime Manager, deploy an application that includes one or more polling elements. For example, the application illustrated below includes two simple flows, each with a polling scope.

Studio Visual Editor

scheduling+cloudhub

Studio XML Editor

<mule xmlns:tracking="http://www.mulesoft.org/schema/mule/ee/tracking" xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:doc="http://www.mulesoft.org/schema/mule/documentation" xmlns:spring="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-current.xsd
http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/ee/tracking http://www.mulesoft.org/schema/mule/ee/tracking/current/mule-tracking-ee.xsd">

    <flow name="synchronize-accounts" doc:name="synchronize-accounts">
        <poll frequency="300000" doc:name="Poll">
            <logger level="INFO" doc:name="Start" message="Start Account Synchronization ${salesforce.username}"/>
        </poll>
        <logger level="INFO" doc:name="End" message="End Account Synchronization"/>
    </flow>
    <flow name="synchronize-contacts" doc:name="synchronize-contacts">
        <poll frequency="600000" doc:name="Poll">
            <logger level="INFO" doc:name="Start" message="Start Contact Synchronization ${salesforce.username}"/>
        </poll>
        <logger level="INFO" doc:name="End" message="End Contact Synchronization"/>
    </flow>
</mule>

Because CloudHub synchronizes your schedules automatically, overriding any synchronize property set on the flows containing the polling scopes, there is no need to do any other special configuration.

Once it is deployed, select the application in the Runtime Manager console, and click Schedules in the left navigation menu. Runtime Manager lists the polling elements in your application in the order they appear in your application:

SchedulesView
The name of each element is determined by the doc:name attribute in the polling scopes, if you add one in the XML. If you do not specify a doc:name, then CloudHub applies the name, yourFlowname Poll.

The Last Run column shows the exact date and time of each recently run polling element. You can view the Logs to see further details about when the jobs started and ended their scheduled runs.

Manage Schedules at Runtime

To manage the polling elements:

  1. Check the boxes next to the individual elements you want to manage.

  2. Click Run now if you want to override the schedule and run the job immediately.

  3. Click Disable to suspend a polling element. CloudHub does not run the polling job until you Enable it once again.

  4. In the Schedule column, CloudHub lists each polling element’s polling frequency.

  5. Click the frequency of a polling element to open the schedule editor:

    SchedulesChangeTime
  6. In the schedule editor, adjust the polling frequency of the element, or disable the polling frequency by unchecking Enabled:

    CHSetPollFreq
  7. Click Switch to advanced mode to use Cron expressions, and click Quick reference for information on required fields and allowed values. Click more to view the Quartz CronTrigger Tutorial. If you change the Cron setting, click Update. Click Cancel to exit. Click Switch to basic mode to exit advanced mode.

    CHAdvModeWithQkRef
    All schedules are based in the UTC timezone, regardless of what region your CloudHub workers are on, and the timezone configuration is ignored.
  8. To see the Schedule tab in action, select one or more of the scheduled jobs and click Run Now. The schedules have been queued to run message appears.

    SchedulesRunNow
  9. To check the result, click Logs in the left navigation menu, and view the entries to verify that the job you selected ran as expected:

    SchedulesLogs

We use cookies to make interactions with our websites and services easy and meaningful, to better understand how they are used and to tailor advertising. You can read more and make your cookie choices here. By continuing to use this site you are giving us your consent to do this.