In the ideal world, every application and component would be a black box that would work perfectly the first time, and that would fulfill its purpose without any need for human intervention or review. In practice, this ideal is rarely achieved. Real world applications need to be instrumented - meaning that there need to be ways for them to report on how they are working. This may mean producing detailed trace information to determine what the program is actually doing. It may mean logging information so that users can analyze what the program actually did - information that may be essential for measuring performance, for recovering from disaster, for detecting security breaches, and more.
View More