::: nBlog :::
Most modern software applications, internal or external to organizations, tend to become highly complex over time, when it comes to physical and logical servers, databases, front ends and other components. In order to troubleshoot these, many companies offer shrink-wrap products that promise to find â€™Root Cause’ for any current or even new performance and reliability issues.
These products work well for, eh, shrink-wrap applications which also have deterministic, shrink-wrap issues pre-built into the monitoring product’s problem database.
Our experience is that even a basic CRM application is usually customized, or built into a slightly different networking environment so that no canned product can find those real performance bottlenecks.
We’ve always taken a different approach. In cases where our Platform is primarily used for performance tracking, we enable as many data feeds as possible from all software and hardware components in and near the target system. This easily generates few hundred kilobits per second data flow, which is then templated and visualized in real time. All visualization components are modular and thus the performance view can be very quickly adapted to match the application structure.
According to Donald Rumsfeld (who clearly has read his Clausewitz) there are known knowns, known unknowns and unknown unknowns. With application features and complexity increasing it becomes more and more critical to scalably measure and infer the latter two.