Recently, we hear the term "alert fatigue" a lot. I have a few questions regarding this:
- where did this term come from?
- was it invented by a company like PagerDuty?
- what is alert fatigue actually?
The term Alert Fatigue, also known as Alarm Fatigue has been around for decades. It affects many professions, including medical, technical, and construction industries. According to the Alert Fatigue by Other Names
reference, the earliest literature on the topic came during the Israeli Arab conflict. The practice/understanding of the issue is ancient.
No, PagerDuty did not invent the term.
Alert Fatigue:
occurs when one is exposed to a large number of frequent alarms (alerts) and consequently becomes desensitized to them.
Aesop's Fable about the boy who cried wolf is a classic example of Alert Fatigue. In Technology and Medical fields it occurs when alarms/alerts occur so frequently (with or without reason) that we become desensitized to them. The outcome of this desensitization:
dramatically reduces our reaction to similar subsequent threats.
In other words we are become so used to the alert that we either ignore it or take our time to acknowledge it.
References
Alert fatigue by other names
Alarm_fatigue
Cry Wolf - When Experience Becomes Fateful
I have spend years developing a variety of monitoring tools which employ a variety of approaches to track data points ranging from filtered logs, collecting system stats (i.e.: querying data from /proc or running a command and parsing output), and/or putting concise “tagging” code inside application workflow code to track overall performance. With all of these different approaches, the process of alerting when conditions are met hasn't changed all that much. From this experience, I have learned some key principles to avoid “alert fatigue” which can be described as simply getting so many alert messages by your pager, email, or mobile notifications that they decide can be ignored (either because they were told to or they took it upon themselves) resulting in your staff ignoring potentially important events, slowly insane, and/or secretly wishing for your early demise.
That said, these are few key principles in creating triggered alerts which I would say are relevant now as they were 20 years ago. Of course there are gobs of other principles to creating good monitoring and alerting so this is by no means a complete list.
Start with these three tenets first if “alert fatigue” is an increasing issue in your team. If after doing this and you get to a point where your alerts are meaningful and concise but are are overwhelming in sheer numbers, you probably need to focus on creating automated recovery as the next phase of your monitoring endeavors starting with incidents where the run-book is discrete. For example, if a web service is unresponsive because of an exception that it cannot recover on its own, instead of sending an alert, attempt a restart. Send the alert only if the restart doesn't resolve it and send a non-urgent message if it does which can be noted during the next business hours.