You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by kw...@apache.org on 2014/10/10 17:46:06 UTC
svn commit: r1630926 - in
/qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server:
logging/messages/BrokerMessages.java
logging/messages/Broker_logmessages.properties
model/adapter/BrokerAdapter.java
Author: kwall
Date: Fri Oct 10 15:46:05 2014
New Revision: 1630926
URL: http://svn.apache.org/r1630926
Log:
QPID-6145: [Java Broker] Write operational log message when flow to disk activates/deactivates
Modified:
qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/logging/messages/BrokerMessages.java
qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/logging/messages/Broker_logmessages.properties
qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/adapter/BrokerAdapter.java
Modified: qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/logging/messages/BrokerMessages.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/logging/messages/BrokerMessages.java?rev=1630926&r1=1630925&r2=1630926&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/logging/messages/BrokerMessages.java (original)
+++ qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/logging/messages/BrokerMessages.java Fri Oct 10 15:46:05 2014
@@ -50,6 +50,8 @@ public class BrokerMessages
public static final String STOPPED_LOG_HIERARCHY = DEFAULT_LOG_HIERARCHY_PREFIX + "broker.stopped";
public static final String STATS_MSGS_LOG_HIERARCHY = DEFAULT_LOG_HIERARCHY_PREFIX + "broker.stats_msgs";
public static final String LISTENING_LOG_HIERARCHY = DEFAULT_LOG_HIERARCHY_PREFIX + "broker.listening";
+ public static final String FLOW_TO_DISK_INACTIVE_LOG_HIERARCHY = DEFAULT_LOG_HIERARCHY_PREFIX + "broker.flow_to_disk_inactive";
+ public static final String FLOW_TO_DISK_ACTIVE_LOG_HIERARCHY = DEFAULT_LOG_HIERARCHY_PREFIX + "broker.flow_to_disk_active";
public static final String MAX_MEMORY_LOG_HIERARCHY = DEFAULT_LOG_HIERARCHY_PREFIX + "broker.max_memory";
public static final String PLATFORM_LOG_HIERARCHY = DEFAULT_LOG_HIERARCHY_PREFIX + "broker.platform";
public static final String SHUTTING_DOWN_LOG_HIERARCHY = DEFAULT_LOG_HIERARCHY_PREFIX + "broker.shutting_down";
@@ -66,6 +68,8 @@ public class BrokerMessages
Logger.getLogger(STOPPED_LOG_HIERARCHY);
Logger.getLogger(STATS_MSGS_LOG_HIERARCHY);
Logger.getLogger(LISTENING_LOG_HIERARCHY);
+ Logger.getLogger(FLOW_TO_DISK_INACTIVE_LOG_HIERARCHY);
+ Logger.getLogger(FLOW_TO_DISK_ACTIVE_LOG_HIERARCHY);
Logger.getLogger(MAX_MEMORY_LOG_HIERARCHY);
Logger.getLogger(PLATFORM_LOG_HIERARCHY);
Logger.getLogger(SHUTTING_DOWN_LOG_HIERARCHY);
@@ -265,6 +269,70 @@ public class BrokerMessages
/**
* Log a Broker message of the Format:
+ * <pre>BRK-1015 : Message flow to disk inactive : Message memory use {0,number,#}KB within threshold {1,number,#.##}KB</pre>
+ * Optional values are contained in [square brackets] and are numbered
+ * sequentially in the method call.
+ *
+ */
+ public static LogMessage FLOW_TO_DISK_INACTIVE(Number param1, Number param2)
+ {
+ String rawMessage = _messages.getString("FLOW_TO_DISK_INACTIVE");
+
+ final Object[] messageArguments = {param1, param2};
+ // Create a new MessageFormat to ensure thread safety.
+ // Sharing a MessageFormat and using applyPattern is not thread safe
+ MessageFormat formatter = new MessageFormat(rawMessage, _currentLocale);
+
+ final String message = formatter.format(messageArguments);
+
+ return new LogMessage()
+ {
+ public String toString()
+ {
+ return message;
+ }
+
+ public String getLogHierarchy()
+ {
+ return FLOW_TO_DISK_INACTIVE_LOG_HIERARCHY;
+ }
+ };
+ }
+
+ /**
+ * Log a Broker message of the Format:
+ * <pre>BRK-1014 : Message flow to disk active : Message memory use {0,number,#}KB exceeds threshold {1,number,#.##}KB</pre>
+ * Optional values are contained in [square brackets] and are numbered
+ * sequentially in the method call.
+ *
+ */
+ public static LogMessage FLOW_TO_DISK_ACTIVE(Number param1, Number param2)
+ {
+ String rawMessage = _messages.getString("FLOW_TO_DISK_ACTIVE");
+
+ final Object[] messageArguments = {param1, param2};
+ // Create a new MessageFormat to ensure thread safety.
+ // Sharing a MessageFormat and using applyPattern is not thread safe
+ MessageFormat formatter = new MessageFormat(rawMessage, _currentLocale);
+
+ final String message = formatter.format(messageArguments);
+
+ return new LogMessage()
+ {
+ public String toString()
+ {
+ return message;
+ }
+
+ public String getLogHierarchy()
+ {
+ return FLOW_TO_DISK_ACTIVE_LOG_HIERARCHY;
+ }
+ };
+ }
+
+ /**
+ * Log a Broker message of the Format:
* <pre>BRK-1011 : Maximum Memory : {0,number} bytes</pre>
* Optional values are contained in [square brackets] and are numbered
* sequentially in the method call.
Modified: qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/logging/messages/Broker_logmessages.properties
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/logging/messages/Broker_logmessages.properties?rev=1630926&r1=1630925&r2=1630926&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/logging/messages/Broker_logmessages.properties (original)
+++ qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/logging/messages/Broker_logmessages.properties Fri Oct 10 15:46:05 2014
@@ -47,4 +47,9 @@ PLATFORM = BRK-1010 : Platform : JVM : {
# 0 Maximum Memory
MAX_MEMORY = BRK-1011 : Maximum Memory : {0,number} bytes
-MANAGEMENT_MODE = BRK-1012 : Management Mode : User Details : {0} / {1}
\ No newline at end of file
+MANAGEMENT_MODE = BRK-1012 : Management Mode : User Details : {0} / {1}
+
+# 0 - Total message size
+# 1 - Target memory size
+FLOW_TO_DISK_ACTIVE = BRK-1014 : Message flow to disk active : Message memory use {0,number,#}KB exceeds threshold {1,number,#.##}KB
+FLOW_TO_DISK_INACTIVE = BRK-1015 : Message flow to disk inactive : Message memory use {0,number,#}KB within threshold {1,number,#.##}KB
\ No newline at end of file
Modified: qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/adapter/BrokerAdapter.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/adapter/BrokerAdapter.java?rev=1630926&r1=1630925&r2=1630926&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/adapter/BrokerAdapter.java (original)
+++ qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/model/adapter/BrokerAdapter.java Fri Oct 10 15:46:05 2014
@@ -82,6 +82,9 @@ public class BrokerAdapter extends Abstr
private Timer _reportingTimer;
private final StatisticsCounter _messagesDelivered, _dataDelivered, _messagesReceived, _dataReceived;
+ /** Flags used to control the reporting of flow to disk. Protected by this */
+ private boolean _totalMessageSizeExceedThresholdReported = false, _totalMessageSizeWithinThresholdReported = true;
+
@ManagedAttributeField
private String _defaultVirtualHost;
@ManagedAttributeField
@@ -99,6 +102,7 @@ public class BrokerAdapter extends Abstr
@ManagedAttributeField
private String _confidentialConfigurationEncryptionProvider;
+
@ManagedObjectFactoryConstructor
public BrokerAdapter(Map<String, Object> attributes,
SystemConfig parent)
@@ -437,6 +441,19 @@ public class BrokerAdapter extends Abstr
}
}
+ if (totalSize > totalTarget && !_totalMessageSizeExceedThresholdReported)
+ {
+ _eventLogger.message(BrokerMessages.FLOW_TO_DISK_ACTIVE(totalSize / 1024, totalTarget / 1024));
+ _totalMessageSizeExceedThresholdReported = true;
+ _totalMessageSizeWithinThresholdReported = false;
+ }
+ else if (totalSize <= totalTarget && !_totalMessageSizeWithinThresholdReported)
+ {
+ _eventLogger.message(BrokerMessages.FLOW_TO_DISK_INACTIVE(totalSize / 1024, totalTarget / 1024));
+ _totalMessageSizeWithinThresholdReported = true;
+ _totalMessageSizeExceedThresholdReported = false;
+ }
+
for(Map.Entry<VirtualHost<?, ?, ?>,Long> entry : vhs.entrySet())
{
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org