For scheduled tasks running against an AWS RDS server, I use a mix of apps living on an EC2 server and SQL Agent jobs. The apps can easily write success or failure to CloudWatch using the handy AWS command line interface, but the SQL Agent jobs cannot - there's no exposed local drive to install AWS to, and
xp_cmdshell is not available. Also, Database Mail and SQL Agent Notifications are not available. As such, I have no sure way to know if a SQL Agent job is failing, other than checking the Job Activity Monitor periodically.
Is there a way to write to CloudWatch from within a procedure on an Amazon RDS SQL Server instance? I've seen that several tasks which on RDS are not possible directly (e.g., resizing a temp file) have Amazon-provided sprocs to achieve the same result.
If that's not possible, I could ditch SQL Agent and run all routine tasks with apps on EC2. Another possibility would be a heartbeat app which polls an error table and writes to CloudWatch. If anyone has dealt with this issue, I would appreciate knowing more about what worked for you - or didn't.