Whilst developers take application logging for granted, it is strange that
not all developers have grasped the importance of collecting performance metrics.
In fact, this is generally an afterthought and comes about only when users start
to mutter the immortal words "the application seems to be slow today, can you check
if there is something wrong"? At this point of course, developers start to scramble around
trying to guess or identify possible bottlenecks in their code with varying degrees of success.  
Sometimes, this guess-work leads to familiar retorts like "buy more memory", "buy a bigger server", "it’s the database". Worse still, in some cases, perfectly decent applications develop a bad
"rep" due to problems that are easy to fix if only they could be identified.

As applications grow, it is important not to fall into this trap. Developers should use a suitable
performance monitoring toolkit like Epsilon from Obix Labs to asynchronously collate statistics for
their applications and to generate notifications when application performance starts to deviate from
an established trend. If nothing else, Epsilon will at least tell you where the performance bottlenecks

And this does not only apply to new applications. Epsilon can be easily integrated into
existing applications. Its API is not difficult to use, and in many ways resembles that of
a logger. If your application is Spring based, then the job is even easier as all you have to
do is to annotate your classes or business process/service implementations.
For more information see:  http://www.obix-labs.com/display/jsp/technology/epsilon.jsp