Application Monitoring—Why Sampling Transactions is a Bad Idea
Driving with your eyes closed
If you are in a busy city, open a window and look out. Track people/cars/birds/planes for a bit and close your eyes. Wait a while (20 seconds or a couple of minutes) and open your eyes again. Keep doing it again and again. CONGRATULATIONS, what you just did was like application monitoring with transactions sampling.
Chances are you missed a police car passing or just heard the siren before or after it passed. You probably missed most of the people crossing the street or maybe saw a couple of the slower ones. Were those people slow or did they wait for the police car to pass? If you didn’t track everybody, you can’t tell if everybody with a blue shirt was just slow or slow because of the tour guide. You may end up with a conclusion that wearing a blue shirt makes people walk slowly. An entire world of people passed in front of you and you did not even see most them because your eyes were closed at the time.
Sampling is a bad idea! The world is moving too fast. It’s like driving in a busy city street with your eyes opened from time to time. If you sample, you can’t wake up after a problem happened and expect to know what was the cause of the problem. If you capture transactions some of the time you don’t see what happened the rest of the time. If you get a call about a very important user having problems you will probably NOT be able to know what happened to that user. You can also miss the root cause of problems just by looking at a partial data or miss trends that are only visible on a longer time period.
SteelCentral AppInternals captures ALL transactions for ALL users ALL the time, it analyzes and highlights misbehavior and lets you run additional analysis on those transactions after the fact.
Read more about Riverbed’s application performance monitoring solution here >