Scheduler
Azure Scheduler allows you to invoke actions that call HTTP/S endpoints or post messages to a storage queue on any schedule. In Scheduler, you can create jobs that reliably call services either inside or outside of Windows Azure and run those jobs right away, on a regular or irregular schedule, or set them to run at a future date.
If you have any feedback on Azure Scheduler, we’d love to hear it.
-
Allow scheduling jobs based on timezone
Currently, you can only schedule jobs based on a fixed time offset from GMT. This means the actual local time when the job runs will change one hour forward or backward, in spring and fall when daylight savings change.
92 votes -
Customizable timeout to a scheduled job through Azure Portal
Add the ability to customize the timeout interval through the Azure portal.
This feature is right now only available through API.81 votesMr. Andersson,
To be clear, do you mean the retry policy for an HTTP request (which includes the timespan between retries and the number of retry attempts to make)?Thanks,
Kevin -
Azure Scheduler support for variables
Having the possibility to use date variables in azure scheduler POST requests would allow us for example to make a REST call to azure table storage like 'delete all records before {DateTime.UtcNow.AddMonths(-1)}'.
49 votesIt would be helpful to hear which variables would be most useful to everyone by adding them to the comments of this suggestion.
Thanks,
Kevin -
Email alert if HTTP/S response status is 4xx or 5xx
Maybe this feature exists already, but I can't see it...
It would be great to be alerted via email if any of my HTTP/S jobs fail.
This could be DNS resolution failure, or a response with a code of 4xx or 5xx.
41 votesMr. Boot,
Thank you for your feedback. In the meantime you can create an error action on the job that is configured to send an email via a service like SendGrid or a text message via a service like Twilio.-Kevin Lam
-
Information about scheduler task and way to terminate it
For example when you have created your scheduler job and you click run once. You have no idea after that what's going on with the job and if for example you have made a error in your code and it's just looping endlessly you can't terminate and you are required to wait until the timeout.
40 votes -
Disable wrapping message with StorageQueueMessage XML
We would like an option to prevent the scheduler from wrapping the message with StorageQueueMessage XML. There is no indication in the portal that Azure will alter our message text.
We insert into our queues from the scheduler and our own code. Our messages are JSON strings. It's very inconvenient and inefficient to have to serialize and deserialize multiple times to get/put our message.
29 votesThanks for your feedback. This is on our backlog.
-
Save UTC offset settings
When we create a job, we can enter a UTC offset field.
However, when we edit the job, the UTC setting is never saved and start-time and end-time fields are changed as UTC time, as if UTC settings were ignored.From the perspective of UX, UTC settings should be saved just as we enter the data. This specification may confuse Azure Scheduler users.
25 votes -
Time fields should show 24-hour time
Start-time field and End-time field now show 12-hour time; For example, '12:00:00 AM' or in Japanese locale, '12:00:00 午前'. However, we must type Chinese characters '午前' to input a date.
In order to save trouble, it will be useful to show 24-hour time in those fields.24 votes -
Allow call internal endpoint or virtual network address
I think that it could be useful to make http call to internal endpoind of "private" cloud services or vm inside a private azure vnet (not externally visible)
22 votesThanks for making the suggestion.
This can be done by either opening a port on your VNET, using a Service Bus Relay endpoint, or installing Hybrid Connector.-Kevin
-
Allow me to create a schedule by specifying a schedule in a crontab format
Crontab is a widely used anc concise scheduling format. There are numerous open source libraries for a variety of languages available for parsing the format already written.
19 votesThanks for your feedback.
-Kevin
-
Add option to auto-delete completed one-time jobs
This is more relevant for jobs that post messages to a queue.
If you think about this scenario, this job is not the "real" job. It only sends a signal to the queue which then has to be processed somewhere else.In this case, I don't want this single one-time completed job to stay in the collection and account towards my quota. I would like it to be automatically deleted if everything was ok.
15 votesMr. Frostlander,
Thank you for your feedback, We can look at possibly adding a flag to a job that will automatically delete a successfully completed job.Regards,
Kevin -
Access Job Status Information
Scheduled jobs should expose an object that allows you to query the last run, next run, and schedule for the currently running job. There should also be some indication of whether the job succeeded for failed to allow for error handling logic to be incorporated into the job.
10 votesWe’ll take a look at improving visibility into scheduled scripts.
-
Add more configurations for Storage Queue Action Type
We use the scheduler service to start a long running job once a day. We want to set the expiration time to one day so that the service is not running in parallel or twice.
8 votesI’m not exactly clear what you are looking for. Do you mean that you would like the message in the queue to expire (be deleted) if it has not been processed (read) by a certain time?
Thanks for your suggestion,
Kevin -
Advanced Scheduler Job Dependencies
For example; Job 2 is dependent on job 1 finishing successfully before it can start.
A job should not start unless all conditions are met besides a scheduled start time. 3 conditions in particular that would be very useful for this; Queued/waiting, failed and successful. Even more useful if a job could be configured to run an action if it has been sitting in a waiting state for x amount of time...
6 votes -
For Scheduler REST API, Update Job, should allow setting "schedule=null"
The current update job REST API (with PATCH) in Scheduler does not allow recurrence frequency changing from week to hour, when the "advanced schedule" is set. That is because "advanced schedule" is only meaningful for weekly schedule. I tried to set "schedule=null", but it did not work. This means I have to use a GET to get the Job, and then a PUT to update the Job in this case. I think a better idea would be letting the user to update schedule to be null, and letting them change recurrence frequency from week to hour
6 votes -
Improve "programmatic" scheduling scenario
I'll combine multiple ideas for a single scenario.
Currently scheduler is designed towards manual scheduling scenarios. For example, if you are administering certain service and need to schedule something from time to time, it's easy to use it this way.
However, for scenarios where jobs are created as a result of user actions (not admin's actions), current scheduler falls short.
For example, consider a more or less modern website. When a user is registering at the website you need to send a welcome email - that's ok, for this case you don't actually need a scheduler as this is an…
5 votesMr. Frostlander,
Thank you for sharing your feedback.
In regards to programmatic ISV scenarios we had designed the job collections with intention of mapping either an ISV user or application representation to a job collection so that the ISV entity can have multiple jobs and they can be managed together. In your scenario you have not created that mapping. If we were to increase the job collection limit for a particular plan what would a reasonable limit be?
In regards to authentication the Scheduler service has a new REST interface behind the Azure Resource Manager (ARM) which allows you to use OAuth tokens. Would that work for you?Regards,
Kevin Lam -
Version control in Scheduling Services
Currently Version control is not enabled in Scheduler.
Code checkin and check out and team coding will help4 votesToday you can save the Scheduler definition as JSON via PowerShell and the API and check that into source control. If there is something that you are looking for in particular in regards to source control would you mind elaborating?
Thanks,
Kevin -
Append to job history
If my backend work takes longer than the http request time (asynchronous) or for queue based requests, I would like to have an API to append status to the history of the job to indicate that the actual backend work is completed.
4 votes -
add a method to the portal for downloading/viewing the exact message placed in a queue by a job
This would aid debugging services that pull jobs from the queue placed by the scheduler
4 votesWe will look into including a sample preview of the message in the portal.
-
Add Refresh in Scheduler Job Collection blade
Reproduce step.
1. Scheduler Job Collection blade > Add
2. Add a job and click OK.
3. Return to Scheduler Job Collection blade, but Monitoring section is not refreshed job list.So, it would be good to add Refresh button on the Scheduler Job Collection blade.
4 votes
- Don't see your idea?
