Wouldn’t it be great if there were tiny robots that kept track of what you were thinking, then helped you implement your plans automatically? Well, if you’re an admin responsible for monitoring infrastructure, they exist. They’re called chatbots, and they are the key to leveraging ChatOps in order to optimize your monitoring and incident management workflow.
This post explains what chatbots and ChatOps do and why they’re so valuable for organizations that are adopting DevOps practices.
A “chatbot” can mean different things to different people. Broadly defined, a chatbot is any type of program that “talks” to humans. Chatbots have been around for a long time. If you grew up in the era when AOL still ruled the Internet, for example, you probably remember SmarterChild, a chatbot for the AIM instant messaging service.
When people speak of chatbots within the context of incident management and infrastructure monitoring, however, they usually have a narrower definition in mind. They are referring to programs that don’t just understand what humans say and provide responses in order to make conversation, but instead automate monitoring and incident response tasks.
In other words, a chatbot in this context is a program that integrates with a communication platform, such as Slack or HipChat, and processes commands in response to human input. The commands themselves are often executed by a server that runs in the background. But the only thing an admin has to do is tell the chatbot what should happen, and the rest is handled based on predefined automation.
Chatbots and ChatOps
Chatbots, then, enable what’s called ChatOps, or the ability to use chat platforms as a tool in IT and development operations. They benefit developers and operations teams in several key ways, including:
Providing convenient interfaces for running commands
If you already have HipChat, Slack, or another communication platform already open, why switch to a different interface in order to run a command? With chatbots, you don’t have to. You can take action directly from the chat interface without needing to toggle between tools, so you don’t need to switch context and can do things a lot faster.
When you interact with a chatbot in a public communications forum, everyone participating in the forum can see which commands you ran. This maximizes visibility across your team and solves the age-old challenge of making sure that team members are not running redundant or contradictory commands. And simultaneously, it’s a fantastic way to enable learning across the team.
Facilitating real-time action
Traditionally, teams would meet, make a plan, then go off and implement it. With chatbots and ChatOps, however, the conversation and implementation can occur in real-time, because the communication and operations interfaces are integrated. I’m not saying you should never take the time to plan major operations before executing them. But when time is of the essence—as when you are responding to an infrastructure failure, for example—being able to plan and operate in real time is a major advantage.
Chatbots, ChatOps, and DevOps
Those advantages would prove useful to almost any type of organization. But they’re especially valuable today, as more organizations migrate to a DevOps-style workflow.
Why? Because two of the defining principles of DevOps are seamless communication and operational agility. If you want your software delivery to be continuous (and enable a culture of transparency and openness) you need to avoid communication gaps between different members of the team. You also need to be able to move quickly and easily when making changes or responding to problems so that they are resolved before they break your continuous delivery pipeline.
The same logic applies to monitoring and incident management. If you want your monitoring team to be able to act continuously, which means identifying and resolving incidents in real time, you need instant, highly visible communication across the team. You also need a way to take action quickly and disseminate responsibilities between team members in an efficient and coordinated way. Chatbots enable all of this. For that reason, they’re the robots that are conquering the DevOps world.
To learn more about how to get the most out of ChatOps with some great live demos and use cases, register for the webinar — Better Incident Management with ChatOps.