http://www.onjava.com/lpt/a/2856

A bare bone logging service interface. The resourceful can substitute a Log4J very easily as an implementation getting a good number of its benefits.

Features

1. Interface based
2. You can provide any implementation
3. Provides filtering of messages with exclude and include filters
4. You can turn of selectively at run time

Some drawbacks

1. Could be somewhat inefficient. But in the scheme of things and in our tests hasn't fared that bad.