Amazon Web Services' Chatbot, released in beta yesterday, will alert you to issues, but the most interesting feature – where you issue commands for further diagnostics via a virtual user in a chatroom – is yet to come.
Chatbot integrates with channels on work collaboration nattering app Slack or with chat rooms in Amazon Chime, Bezos' giant's online meeting service.
The service works in conjunction with a couple of existing AWS systems. CloudWatch is a monitoring and management platform that does logging, metrics analysis, and alarms. It is the alarm part that is most relevant here, and this works with the AWS Simple Notification Service (SNS): CloudWatch triggers the alarm, SNS sends it out. SNS has a broad range of messaging features, including messaging for application communication, and also includes support for notifications to end users using SMS, email, and mobile push.
Chatbot uses other AWS services to send alerts to Slack or Chime
Chatbot also currently lets you receive messages from SNS in a Slack channel or in an Amazon Chime chatroom. The notification has to originate from a supported service though, which could be CloudWatch, Billing and cost management, CloudFormation infrastructure management, GuardDuty threat monitoring, AWS Health performance monitoring, or Security Hub, which combines GuardDuty and other security alerts.
Yes, yes, Slack... but what about diagnostics?
The existence of CloudWatch and SNS means that it is not difficult to receive alerts from your AWS services, so some might question the point of getting alerts from Chatbot. Preconfigured integration with Slack may be handy (though there's no Microsoft Teams support) since it alerts a team in one place, assisting collaboration. Watching a Slack channel means you can see who else is responding or seek advice from other team members.
That said, the "ask for diagnostics" part of Chatbot, which has not yet been pushed out, is the most interesting feature. We wasted a bit of time looking for detail on the ability to "execute commands to return diagnostic information" promised in the announcement, before spotting that this is not available in the beta. All we know is that:
In the near future AWS Chatbot will make it easy to retrieve diagnostic information about your AWS resources for many AWS services. Your teams will be able to analyze and respond to events faster by retrieving diagnostic information on command in a centralized place.
A chatbot that is non-interactive is not much of a chatbot.
Note that AWS does not appear to envisage sending commands through the bot that do anything other than retrieve diagnostics. The documentation specifically states that you cannot send SNS notifications from unsupported services, send arbitrary text, or run AWS CLI commands – this last one could give huge power to the bot, not a good idea.
Another disappointment is that AWS does not seem to be putting effort into any AI capabilities. The challenge in configuring alerts is to get the right balance between too much information (risking that real problems get lost in the flood) or not enough (problems are not surfaced at all). This seems like a natural candidate for AI, which could detect changes in patterns in order to highlight issues that demand human attention.
Consider this work in progress. ®