I am aware of the CloudWatch recurring events that can be used to run Lambda recurringly.. but is there a way that I can trigger it on a certain time and not repeat?
-
Google AWS Scheduler with cron expression. – Jaydip Jadhav Jan 31 '18 at 09:01
-
1You can set in both way. one bye using Fixed Rate option and other is cron. you can find it under Cloudwatch > Rules >Create Rule – Jaydip Jadhav Jan 31 '18 at 09:05
3 Answers
Using cloud watch rules - a single non-repetitive date can be assigned.
Example cron : 0 10 16 6 ? 2019 min hours day month dayOfWeek year
This will execute once on Sun, 16 Jun 2019 10:00:00 GMT as an example.
Reference: https://docs.aws.amazon.com/AmazonCloudWatch/latest/events/ScheduledEvents.html
- 171
- 1
- 4
you can provide to it a cron expression or rate. what you are looking for is the cron expression option that will let you to say when exactly to run. more info - https://docs.aws.amazon.com/lambda/latest/dg/tutorial-scheduled-events-schedule-expressions.html
if you want to run it once, manually, you can always trigger it with the "test" button at the top of the page. you can really be creative here, for example, you can even trigger it with an http request that will allow you to integrate it to whatever you want, super easily (Invoke a AWS Lambda function by a http request)
- 1,316
- 17
- 30
-
1Although, it's not possible to *Not Repeat* a cron, since it can be made to repeat once a year, I'm using that and managing the deletion of the rule. – Faizuddin Mohammed Jan 31 '18 at 09:41
You will need to make use of cloudwatch event rules. Lambda can be triggered from the rule based on the cron expression you provide. This AWS tutorial will walk you through the setup.
- 523
- 2
- 8