We use machine learning technology to do auto-translation. Click "English" on top navigation bar to check Chinese version.
Automatically delete schedules upon completion with Amazon EventBridge Scheduler
Amazon EventBridge Scheduler allows you to create, run, and manage schedules on scale. Using EventBridge Scheduler, you can schedule millions of tasks to invoke over 270 Amazon Web Services services and over 6,000 API operations, such as
By default, EventBridge Scheduler allows customers to have
Deleting after completion
When you configure automatic deletion for a schedule, EventBridge Scheduler deletes the schedule shortly after its last target invocation. You can set up automatic deletion when you create the schedule, or you can update the schedule settings at any point before its last invocation.
You can configure this setting in one-time and recurring schedules.
- One-time schedules : your schedule is deleted after the schedule has invoked its target once.
- Recurring schedules: set with rate or cron expressions, your schedule is deleted after the last invocation.
If all
With this new capability, you can save time, resources, and operational costs when managing your schedules.
Setting up schedules to delete after completion
You can create schedules that are automatically deleted after completion from the
For example, imagine that you are a developer on a platform that allows end users to receive notifications when a task is due. You are already using EventBridge Scheduler to implement this feature. For every task that your users create in your application, your code creates a new schedule in EventBridge Scheduler. You can now configure all these schedules to be deleted automatically after completion. And shortly after the schedules run, they are removed from your EventBridge Scheduler, allowing you to scale your system and keep on creating schedules, making it easier to manage your active schedules and quota limits.
Let see how you can implement this example with the new capability of EventBridge Scheduler. When a user creates a new task with a reminder, a function is triggered from your application. That function creates a one-time schedule in EventBridge Scheduler.
This example shows how you can create a new one-time schedule that is automatically deleted after completion using the Amazon Web Services CLI and has SNS as a target. Make sure that you update the Amazon Web Services CLI to the latest version. Then you can create a new schedule with the parameter action-after-completion ‘DELETE’.
$ aws scheduler create-schedule --name SendEmailOnce \
--schedule-expression ”at(2023-08-02T17:35:00)",\
--schedule-expression-timezone "Europe/Helsinki" \
--flexible-time-window "{\"Mode\": \"OFF\"}" \
--target "{\"Arn\": \"arn:aws:sns:us-east-1:xxx:test-send-email\", \"RoleArn\": \" arn:aws:iam::xxxx:role/sam_scheduler_role\" }" \
--action-after-completion 'DELETE'
This command creates a one-time schedule with the name SendEmailOnce, that runs at a specific date, defined in the schedule-expression , and in a specific time zone, defined in the schedule-expression-timezone . This schedule is not using the
You can validate that your schedule is created correctly from the Amazon Web Services CLI with the
$ aws scheduler get-schedule --name SendEmailOnce
{
"ActionAfterCompletion": "DELETE",
"Arn": "arn:aws:scheduler:us-east-1:905614108351:schedule/default/SendEmailOnce",
"CreationDate": 1690874334.83,
"FlexibleTimeWindow": {
"Mode": "OFF"
},
"GroupName": "default",
"LastModificationDate": 1690874334.83,
"Name": "SendEmailOnce3",
"ScheduleExpression": "at(2023-08-02T17:35:00)",
"ScheduleExpressionTimezone": "Europe/Helsinki",
"State": "ENABLED",
"Target": {
"Arn": "arn:aws:sns:us-east-1:xxxx:test-send-email",
"RetryPolicy": {
"MaximumEventAgeInSeconds": 86400,
"MaximumRetryAttempts": 185
},
"RoleArn": "arn:aws:iam::XXXX:role/scheduler_role"
}
}
In addition, you can see the details of the schedule from the Amazon Web Services Management Console.
Now when the date of the notification arrives, EventBridge Scheduler invokes the target configured in the schedule, in this case SNS, and emails a notification to the customer.
Shortly after this schedule is completed, if you
$ aws scheduler list-schedules
{
"Schedules": [
]
}
Benefits of automation
Traditionally, many problems that EventBridge Scheduler solves were addressed using batch processes and pull-based models.
Some organizations are using EventBridge Scheduler to replace their pull-based models for a more dynamic push-based model. Before implementing Scheduler, they were relying on the customer to ask for the data when they need it. Now, with EventBridge Scheduler, they are creating schedules to report back to their customers at critical times of their journey.
For example, an airline can use EventBridge Scheduler to create one-time schedules 24 hours, 4 hours, and 2 hours before the flight, to keep their passengers up to date with the flight status. Customers receive a notification with the link for the online check-in, the check-in counter number, baggage pick up information, and any flight changes that occur. In this way, passengers are always up to date on their flight status and they can take immediate action. This dynamic model not only helps to improve the customer experience but also improves the operational efficiency for the airline.
Other organizations use EventBridge Scheduler to replace batch operations, as you can configure a schedule that starts a batch process at the time of the day you need. Also, you can take advantage of EventBridge Scheduler time zones and run the processes at the time that make sense for your end customer.
For example, consider an international financial institution that must send customers a statement of their account at the end of the day. You can use EventBridge Scheduler to set up a recurrent schedule for each of your customers that sends a report at the end of the day of your customers’ time zone. In this way, you can improve the customer experience as now the system is personalized for their settings, and also reduce operational overhead, as the processing operations are distributed throughout the day.
In addition, EventBridge Scheduler solves many new use cases for customers. For example, if you are a financial institution that handles payments, you can create a one-time schedule for every large transaction that needs a confirmation. If the transaction is not confirmed when the schedule runs, you can cancel the transaction. This decreases the risk of handling transactions, improves the customer experience, and also improves the automation of your processes by making them real time.
Another use case is to handle credit card expiration dates. You can create a one-time schedule that emails the customer to update their credit card information one month before the expiration date. This solution removes operational overhead compared to the traditional implementation of using servers and batch processes.
Conclusion
In the preceding use cases listed, automation and task scheduling improve the end user experience, remove undifferentiated heavy lifting, and benefit from using the new capability of removing schedules after their completion.
This blog post introduces the new capability from Amazon EventBridge Scheduler that automatically deletes the completed schedules. This feature simplifies the use of EventBridge Scheduler, reduces the operational overhead of managing schedules at scale, and allows you to scale even further. In the
To get started with EventBridge Scheduler, visit
The mentioned AWS GenAI Services service names relating to generative AI are only available or previewed in the Global Regions. Amazon Web Services China promotes AWS GenAI Services relating to generative AI solely for China-to-global business purposes and/or advanced technology introduction.