Dynamic Bytecode Instrumentation
Dynamic Bytecode Instrumentation (DBI). What is it? DBI is one of the technologies that enables a new generation of Java application profiling tools.
Why should anyone care? The truth of the matter is that you do not need to master the nitty-gritty details of DBI to benefit from it. The most important thing to understand about DBI is the first word: dynamic. Java profilers can use DBI to turn profiling of your application on and off without restarting the JVM. You can even remove profiling completely; then you can add it back later if you so desire. This is a handy feature to have, particularly when profiling a really large application.
I am listed as a co-author but Ian deserves most of the credit; the article is essentially a written version of the presentation that he and I did last year at JavaOne in both San Francisco and Tokyo. CMP Media, the publisher of Dr. Dobb's Journal, has the full text of the article out on their developerpipeline.com site.