public interface

MailLoggingManager

com.atlassian.jira.mail.MailLoggingManager
Known Indirect Subclasses

Class Overview

Central place for manipulating logging/debug state for mail servers. Part of JIRA API because mail handlers (e.g. MailFetcherService and its descendants) may need to access JIRA mail logging configuration in order to behave well.

Apache Log4J (1.2+) is used as the logging mechanism and its Loggers are directly exposed via API

Summary

Public Methods
void configureLogging(MailServer mailServer)
Normally you don't need to use this method, unless you explicitely creates instances of MailServer classes, then it's advisable to configure their logging level by calling this method.
Logger getIncomingMailChildLogger(String subname)
Clients willing to log to incoming mail log (by default written to a separate log file) can use this method to obtain their more specific logger, which will inherit the appenders from the main incoming mail logger, thus information sent there will be logged also in the incoming mail log file.
Logger getIncomingMailLogger()
Clients willing to log to incoming mail log (by default written to a separate log file) can use this logger.
Level getIncomingMailLoggingLevel()
Retrieves currently configured logging level for incoming mail
Logger getOutgoingMailLogger()
Clients willing to log to outgoing mail log (by default written to a separate log file) can use this logger.
Level getOutgoingMailLoggingLevel()
Retrieves currently configured logging level for outgoing mail
boolean isMailRelatedLogger(Logger logger)
void setIncomingMailLoggingLevel(Level loggingLevel)
Sets new logging level for incoming mail
void setOutgoingMailLoggingLevel(Level loggingLevel)
Sets new logging level for outgoing mail

Public Methods

public void configureLogging (MailServer mailServer)

Normally you don't need to use this method, unless you explicitely creates instances of MailServer classes, then it's advisable to configure their logging level by calling this method.

Parameters
mailServer configures logging for given server.

public Logger getIncomingMailChildLogger (String subname)

Clients willing to log to incoming mail log (by default written to a separate log file) can use this method to obtain their more specific logger, which will inherit the appenders from the main incoming mail logger, thus information sent there will be logged also in the incoming mail log file.

Parameters
subname additional name for this logger. It will be concatenated with the main incoming mail logger using "." (dot).
Returns
  • logger which can be used to log incoming mail handling details

public Logger getIncomingMailLogger ()

Clients willing to log to incoming mail log (by default written to a separate log file) can use this logger.

Returns
  • logger which can be used to log incoming mail handling details

public Level getIncomingMailLoggingLevel ()

Retrieves currently configured logging level for incoming mail

Returns
  • currently configured logging level for incoming mail

public Logger getOutgoingMailLogger ()

Clients willing to log to outgoing mail log (by default written to a separate log file) can use this logger.

Returns
  • logger which can be used to log outgoing mail handling details

public Level getOutgoingMailLoggingLevel ()

Retrieves currently configured logging level for outgoing mail

Returns
  • currently configured logging level for outgoing mail

public boolean isMailRelatedLogger (Logger logger)

public void setIncomingMailLoggingLevel (Level loggingLevel)

Sets new logging level for incoming mail

Parameters
loggingLevel new logging level

public void setOutgoingMailLoggingLevel (Level loggingLevel)

Sets new logging level for outgoing mail

Parameters
loggingLevel new logging level