Paul Smith wrote:
On a side note, you mentioned you have done a lot of work in the JMX  area for log4j..  Would you be interested in floating what you have  done to the community, and if we think it's good, consider donating  it?  (it's a bit of a legal process, and likely to require your  company to sign something).
I could look into floating this, but since it was done on work time doing so may require some hoop jumping :-)

The other issue is that at this point the implementation is heavily based on various MBean base class and utility classes into which I've extracted capabilities shared by many of our MBeans.

Some tidbits I've addressed include:
  • Support for multiple LoggerRepository's
    • For instance, each web app can have its LoggerRepository and MBeans specifically for it.  The servlet engine itself may separately have yet another LoggerRepository and other MBeans for this.
    • This is probably the biggest/deepest change from the existing log4j code.  My LoggerRepository monitoring MBeans can be rooted anywhere in the ObjectName tree and all related MBeans will be given relative names.  All the code thus works against a LoggerRepository reference maintained in the MBeans and passed into the construction thereof.
  • Integrated configuration file watching (with appropriate thread termination on web app shutdown, etc)
    • This is my own implementation due to issues with the watching built into log4j 1.2.
  • Specific MBean subclasses for various appender types so you can tail log files from JMX, properly interact with asynch appenders, etc.
  • Numerous bugs
--
Jess Holle

Reply via email to