summaryrefslogtreecommitdiff
path: root/qpid/java/broker
diff options
context:
space:
mode:
authorRobert Gemmell <robbie@apache.org>2009-08-16 20:35:30 +0000
committerRobert Gemmell <robbie@apache.org>2009-08-16 20:35:30 +0000
commitb964a52247b0405f2f6da647bff3ac74ad2ab6c6 (patch)
tree939e56db39618cf1778c642e5a6f5247e5d68532 /qpid/java/broker
parent65c3073fd7c2ab4ed116108f8b8a3440b409c134 (diff)
downloadqpid-python-b964a52247b0405f2f6da647bff3ac74ad2ab6c6.tar.gz
QPID-2016: Add ability to reload the Log4J configuration file on request using the management console
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@804767 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java/broker')
-rw-r--r--qpid/java/broker/src/main/java/org/apache/qpid/server/logging/management/LoggingManagementMBean.java37
1 files changed, 37 insertions, 0 deletions
diff --git a/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/management/LoggingManagementMBean.java b/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/management/LoggingManagementMBean.java
index e1e6cb49b5..1ab9d913c8 100644
--- a/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/management/LoggingManagementMBean.java
+++ b/qpid/java/broker/src/main/java/org/apache/qpid/server/logging/management/LoggingManagementMBean.java
@@ -753,4 +753,41 @@ public class LoggingManagementMBean extends AMQManagedObject implements LoggingM
LOCK.unlock();
}
}
+
+ public synchronized void reloadConfigFile() throws IOException
+ {
+ try
+ {
+ LOCK.lock();
+
+ QpidLog4JConfigurator.configure(_log4jConfigFileName);
+ _logger.info("Applied log4j configuration from: " + _log4jConfigFileName);
+ }
+ catch (IllegalLoggerLevelException e)
+ {
+ _logger.warn("The log4j configuration reload request was aborted: " + e);
+ //recommended that MBeans should use standard java.* and javax.* exceptions only
+ throw new IOException("The log4j configuration reload request was aborted: " + e.getMessage());
+ }
+ catch (ParserConfigurationException e)
+ {
+ _logger.warn("The log4j configuration reload request was aborted: " + e);
+ throw new IOException("The log4j configuration reload request was aborted: " + e.getMessage());
+ }
+ catch (SAXException e)
+ {
+ _logger.warn("The log4j configuration reload request was aborted: " + e);
+ //recommended that MBeans should use standard java.* and javax.* exceptions only
+ throw new IOException("The log4j configuration reload request was aborted: " + e.getMessage());
+ }
+ catch (IOException e)
+ {
+ _logger.warn("The log4j configuration reload request was aborted: " + e);
+ throw new IOException("The log4j configuration reload request was aborted: " + e.getMessage());
+ }
+ finally
+ {
+ LOCK.unlock();
+ }
+ }
}