org.globus.cog.gridface.impl.util
Class ErrorDialogAppender

java.lang.Object
  extended byorg.apache.log4j.AppenderSkeleton
      extended byorg.globus.cog.gridface.impl.util.ErrorDialogAppender
All Implemented Interfaces:
org.apache.log4j.Appender, org.apache.log4j.spi.OptionHandler

public class ErrorDialogAppender
extends org.apache.log4j.AppenderSkeleton

Configure this as you would any log4j appender, but it is recommended to use only for error messages because it pops a dialog up each time a logging event is received.

 Example configuration:
 
 #############
 #Root category
 #############
 log4j.rootCategory=DEBUG, ERROR-DIALOG
 log4j.debug=true
 
 #############
 # ERROR-DIALOG is an error dialog for the desktop that allows errors to be emailed
 #############
 log4j.appender.ERROR-DIALOG=org.globus.cog.gridface.impl.util.ErrorDialogAppender
 # only use for events >= WARN
 log4j.appender.ERROR-DIALOG.level=WARN
 # the pattern for the message display
 log4j.appender.ERROR-DIALOG.messageConversionPattern=%d %-5p [%t] %C{2} (%F:%L) - %m%n
 # a url to post the data to
 # this url should handle the following parameters: message, location, level, and throwable
 log4j.appender.ERROR-DIALOG.PostURL=http://some-domain.com/cgi-bin/script.cgi
 # the layout of the details display
 log4j.appender.ERROR-DIALOG.layout=org.apache.log4j.HTMLLayout
 


Nested Class Summary
 class ErrorDialogAppender.Log4JDialog
          A Dialog that displays appended log4j events
 
Field Summary
protected  String excludeLoggerNames
          the loggernames we want to skip
protected  org.apache.log4j.Level level
          the overriden level that this dialog uses
protected  String messageConversionPattern
          the pattern of the header
protected  org.apache.log4j.PatternLayout messageLayout
          the layout of the header
protected  String postURL
          the url that we post our data to
 
Fields inherited from class org.apache.log4j.AppenderSkeleton
closed, errorHandler, headFilter, layout, name, tailFilter, threshold
 
Constructor Summary
ErrorDialogAppender()
           
 
Method Summary
protected  void append(org.apache.log4j.spi.LoggingEvent logEvent)
           
 void close()
           
 org.apache.log4j.Level getError()
           
 String getExcludeLoggerNames()
           
 String getMessageConversionPattern()
           
 org.apache.log4j.Layout getMessageLayout()
           
 String getPostURL()
           
 boolean isExcludedLoggerName(org.apache.log4j.spi.LoggingEvent logEvent)
          Determine if we are excluding an event based upon a logger name
 boolean requiresLayout()
           
 void setExcludeLoggerNames(String value)
           
 void setLevel(org.apache.log4j.Level newLevel)
           
 void setMessageConversionPattern(String value)
           
 void setMessageLayout(org.apache.log4j.PatternLayout layout)
           
 void setPostURL(String url)
           
 void showLog4JDialog(org.apache.log4j.spi.LoggingEvent logEvent)
           
 
Methods inherited from class org.apache.log4j.AppenderSkeleton
activateOptions, addFilter, clearFilters, doAppend, finalize, getErrorHandler, getFilter, getFirstFilter, getLayout, getName, getThreshold, isAsSevereAsThreshold, setErrorHandler, setLayout, setName, setThreshold
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

postURL

protected String postURL
the url that we post our data to


level

protected org.apache.log4j.Level level
the overriden level that this dialog uses


excludeLoggerNames

protected String excludeLoggerNames
the loggernames we want to skip


messageLayout

protected org.apache.log4j.PatternLayout messageLayout
the layout of the header


messageConversionPattern

protected String messageConversionPattern
the pattern of the header

Constructor Detail

ErrorDialogAppender

public ErrorDialogAppender()
Method Detail

setPostURL

public void setPostURL(String url)

getPostURL

public String getPostURL()

showLog4JDialog

public void showLog4JDialog(org.apache.log4j.spi.LoggingEvent logEvent)

setMessageConversionPattern

public void setMessageConversionPattern(String value)

getMessageConversionPattern

public String getMessageConversionPattern()

getMessageLayout

public org.apache.log4j.Layout getMessageLayout()

setMessageLayout

public void setMessageLayout(org.apache.log4j.PatternLayout layout)

setExcludeLoggerNames

public void setExcludeLoggerNames(String value)

getExcludeLoggerNames

public String getExcludeLoggerNames()

setLevel

public void setLevel(org.apache.log4j.Level newLevel)

getError

public org.apache.log4j.Level getError()

append

protected void append(org.apache.log4j.spi.LoggingEvent logEvent)

isExcludedLoggerName

public boolean isExcludedLoggerName(org.apache.log4j.spi.LoggingEvent logEvent)
Determine if we are excluding an event based upon a logger name

Parameters:
logEvent -
Returns:

close

public void close()

requiresLayout

public boolean requiresLayout()