Make robots do your work for you
A library to help run a highly-scalable AWS service that performs data processing tasks in response to external events. You provide the messages and the logic to process them, while Watchbot handles making sure that your processing task is run at least once for each message. Watchbot is similar in many regards to AWS Lambda, but is more configurable, more focused on data processing, and not subject to several of Lambda's limitations.
Add these lines to your Dockerfile, to use the latest watchbot for the linux operating system.
RUN wget https://s3.amazonaws.com/ecs-watchbot-binaries/linux/v10.0.2/watchbot -O /usr/local/bin/watchbot
RUN chmod +x /usr/local/bin/watchbot
os: You can replace linux
with other operating systems like alpine
, macosx
or, windows
tag: You can replace v10.0.2
with any watchbot tag starting from and more recent than v4.0.0
https://s3.amazonaws.com/watchbot-binaries/linux/{VERSION}/watchbot
(note the difference in bucket name)If you are an existing user of watchbot, take a look at "Upgrading to Watchbot 10", for a complete set of instructions to upgrade your stacks to Watchbot 10.
WatchbotUseWebhooks
in the parameters section below).command
property in the cloudformation template. Watchbot sets environment variables for the subprocess that represent the content of a single message.maxSize
and minSize
parameters in the cloudformation template. The service scales the number of tasks based on the existence of messages in the queue.CMD
instruction, use the command
property in the cloudformation template to indicate what will be executed when your worker is launched in response to a message. Note that message details will be provided as environment variables to your worker subprocess, and that your worker's exit code will determine whether the message is deleted or returned to the queue (see below).