summaryrefslogtreecommitdiff
path: root/java/broker-plugins
diff options
context:
space:
mode:
authorMartin Ritchie <ritchiem@apache.org>2010-06-02 16:41:22 +0000
committerMartin Ritchie <ritchiem@apache.org>2010-06-02 16:41:22 +0000
commit9183853b271b99e357677bd13bb494b5e889c329 (patch)
tree6f44237705f45b42b382f53083ec8f646ee9d5ca /java/broker-plugins
parent5beb23a46083a25c92fb61bd7116c5673b473d66 (diff)
downloadqpid-python-9183853b271b99e357677bd13bb494b5e889c329.tar.gz
QPID-1447 : Add Logging to SCD. Update PluginManager to expose the logging packages via OSGi.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@950636 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java/broker-plugins')
-rw-r--r--java/broker-plugins/experimental/slowconsumerdetection/MANIFEST.MF2
-rw-r--r--java/broker-plugins/experimental/slowconsumerdetection/build.xml42
-rw-r--r--java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/SlowConsumerDetection.java21
-rw-r--r--java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/logging/LogMessages.properties8
-rw-r--r--java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/policies/TopicDeletePolicy.java5
5 files changed, 68 insertions, 10 deletions
diff --git a/java/broker-plugins/experimental/slowconsumerdetection/MANIFEST.MF b/java/broker-plugins/experimental/slowconsumerdetection/MANIFEST.MF
index 3b2fe3d37d..3d3d91381b 100644
--- a/java/broker-plugins/experimental/slowconsumerdetection/MANIFEST.MF
+++ b/java/broker-plugins/experimental/slowconsumerdetection/MANIFEST.MF
@@ -15,6 +15,8 @@ Import-Package: org.osgi.framework,
org.apache.qpid.server.registry,
org.apache.qpid.server.plugins,
org.apache.qpid.server.protocol,
+ org.apache.qpid.server.logging,
+ org.apache.qpid.server.logging.actors,
org.apache.qpid.protocol,
org.apache.qpid.framing,
org.apache.qpid,
diff --git a/java/broker-plugins/experimental/slowconsumerdetection/build.xml b/java/broker-plugins/experimental/slowconsumerdetection/build.xml
index e93b5e89de..aee7162400 100644
--- a/java/broker-plugins/experimental/slowconsumerdetection/build.xml
+++ b/java/broker-plugins/experimental/slowconsumerdetection/build.xml
@@ -29,4 +29,46 @@ nn - or more contributor license agreements. See the NOTICE file
<target name="bundle" depends="bundle-tasks"/>
+
+
+ <target name="precompile" depends="gen_logging"/>
+
+
+ <property name="velocity.properties.dir" value="src/main/java/org/apache/qpid/server/virtualhost/plugin/logging"/>
+
+ <property name="gentools.home" location="${project.root}/../gentools" />
+
+ <property name="generated.package" value="org/apache/qpid/server/virtualhost/plugin/logging" />
+ <property name="generated.dir" location="${module.precompiled}/${generated.package}" />
+ <property name="velocity.compile.dir" value="${build.scratch}/broker/velocity"/>
+ <property name="velocity.timestamp" location="${generated.dir}/velocity.timestamp" />
+
+
+ <target name="check_velocity_deps">
+ <uptodate property="velocity.notRequired" targetfile="${velocity.timestamp}">
+ <srcfiles dir="${velocity.properties.dir}" includes="LogMessages**" />
+ <srcfiles dir="${project.root}/broker/src/velocity/" includes="**/*.java **/*.vm" />
+ </uptodate>
+ </target>
+
+
+
+
+ <target name="gen_logging" depends="check_velocity_deps" unless="velocity.notRequired">
+ <mkdir dir="${generated.dir}"/>
+ <java classname="org.apache.qpid.server.logging.GenerateLogMessages" fork="true" dir="${gentools.home}/src" failonerror="true">
+ <arg line="-j -o ${generated.dir} -t ${project.root}/broker/src/velocity/templates/org/apache/qpid/server/logging/messages -r org.apache.qpid.server.virtualhost.plugin.logging.LogMessages"/>
+ <classpath>
+ <pathelement path="${project.root}/broker-plugins/experimental/slowconsumerdetection/src/main/java"/>
+ <pathelement path="${velocity.compile.dir}" />
+ <fileset dir="${project.root}/lib">
+ <include name="**/*.jar"/>
+ </fileset>
+ <pathelement path="${gentools.home}/lib/velocity-1.4.jar" />
+ </classpath>
+ </java>
+ <touch file="${velocity.timestamp}" />
+ </target>
+
+
</project>
diff --git a/java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/SlowConsumerDetection.java b/java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/SlowConsumerDetection.java
index dac5fa58f8..5aba110462 100644
--- a/java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/SlowConsumerDetection.java
+++ b/java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/SlowConsumerDetection.java
@@ -28,6 +28,7 @@ import org.apache.qpid.server.configuration.plugin.SlowConsumerDetectionQueueCon
import org.apache.qpid.server.configuration.plugins.ConfigurationPlugin;
import org.apache.qpid.server.queue.AMQQueue;
import org.apache.qpid.server.virtualhost.VirtualHost;
+import org.apache.qpid.server.virtualhost.plugin.logging.SlowConsumerDetectionMessages;
import org.apache.qpid.server.virtualhost.plugins.VirtualHostHouseKeepingPlugin;
import org.apache.qpid.server.virtualhost.plugins.VirtualHostPluginFactory;
@@ -73,10 +74,11 @@ class SlowConsumerDetection extends VirtualHostHouseKeepingPlugin
@Override
public void execute()
{
- _logger.info("Starting the SlowConsumersDetection job");
+ SlowConsumerDetectionMessages.SCD_RUNNING();
+
for (AMQQueue q : _virtualhost.getQueueRegistry().getQueues())
{
- _logger.debug("Checking consumer status for queue: " + q.getName());
+ SlowConsumerDetectionMessages.SCD_CHECKING_QUEUE(q.getName());
try
{
SlowConsumerDetectionQueueConfiguration config =
@@ -96,7 +98,8 @@ class SlowConsumerDetection extends VirtualHostHouseKeepingPlugin
// house keeping task from running.
}
}
- _logger.info("SlowConsumersDetection job completed.");
+
+ SlowConsumerDetectionMessages.SCD_COMPLETE();
}
public long getDelay()
@@ -113,7 +116,7 @@ class SlowConsumerDetection extends VirtualHostHouseKeepingPlugin
* Check the depth,messageSize,messageAge,messageCount values for this q
*
* @param q the queue to check
- * @param config
+ * @param config the queue configuration to compare against the queue state
*
* @return true if the queue has reached a threshold.
*/
@@ -127,12 +130,12 @@ class SlowConsumerDetection extends VirtualHostHouseKeepingPlugin
(config.getMessageAge() != 0 && q.getOldestMessageArrivalTime() >= config.getMessageAge()))
{
- if (_logger.isInfoEnabled())
+ if (_logger.isDebugEnabled())
{
- _logger.info("Detected Slow Consumer on Queue(" + q.getName() + ")");
- _logger.info("Queue Count:" + q.getMessageCount() + ":" + config.getMessageCount());
- _logger.info("Queue Depth:" + q.getQueueDepth() + ":" + config.getDepth());
- _logger.info("Queue Arrival:" + q.getOldestMessageArrivalTime() + ":" + config.getMessageAge());
+ _logger.debug("Detected Slow Consumer on Queue(" + q.getName() + ")");
+ _logger.debug("Queue Count:" + q.getMessageCount() + ":" + config.getMessageCount());
+ _logger.debug("Queue Depth:" + q.getQueueDepth() + ":" + config.getDepth());
+ _logger.debug("Queue Arrival:" + q.getOldestMessageArrivalTime() + ":" + config.getMessageAge());
}
return true;
diff --git a/java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/logging/LogMessages.properties b/java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/logging/LogMessages.properties
new file mode 100644
index 0000000000..cdd4461ee7
--- /dev/null
+++ b/java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/logging/LogMessages.properties
@@ -0,0 +1,8 @@
+SCD=SlowConsumerDetection
+SCD_RUNNING = SCD-1001 : Running
+SCD_COMPLETE = SCD-1002 : Complete
+SCD_CHECKING_QUEUE = SCD-1003 : Checking Status of Queue {0}
+
+TDP=TopicDeletePolicy
+TDP_DELETING_QUEUE = TDP-1001 : Deleting Queue
+TDP_DISCONNECTING = TDP-1002 : Disconnecting Session \ No newline at end of file
diff --git a/java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/policies/TopicDeletePolicy.java b/java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/policies/TopicDeletePolicy.java
index e9b2d02f89..3ddccb3497 100644
--- a/java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/policies/TopicDeletePolicy.java
+++ b/java/broker-plugins/experimental/slowconsumerdetection/src/main/java/org/apache/qpid/server/virtualhost/plugin/policies/TopicDeletePolicy.java
@@ -28,9 +28,10 @@ import org.apache.qpid.server.binding.Binding;
import org.apache.qpid.server.configuration.plugin.SlowConsumerDetectionPolicyConfiguration;
import org.apache.qpid.server.configuration.plugins.ConfigurationPlugin;
import org.apache.qpid.server.exchange.TopicExchange;
-import org.apache.qpid.server.plugins.Plugin;
+import org.apache.qpid.server.logging.actors.CurrentActor;
import org.apache.qpid.server.protocol.AMQSessionModel;
import org.apache.qpid.server.queue.AMQQueue;
+import org.apache.qpid.server.virtualhost.plugin.logging.TopicDeletePolicyMessages;
import org.apache.qpid.slowconsumerdetection.policies.SlowConsumerPolicyPlugin;
import org.apache.qpid.slowconsumerdetection.policies.SlowConsumerPolicyPluginFactory;
@@ -88,6 +89,7 @@ public class TopicDeletePolicy implements SlowConsumerPolicyPlugin
try
{
+ CurrentActor.get().message(owner.getLogSubject(),TopicDeletePolicyMessages.TDP_DISCONNECTING());
// Close the consumer . this will cause autoDelete Queues to be purged
owner.getConnectionModel().
closeSession(owner, AMQConstant.RESOURCE_ERROR,
@@ -96,6 +98,7 @@ public class TopicDeletePolicy implements SlowConsumerPolicyPlugin
// Actively delete non autoDelete queues if deletePersistent is set
if (!q.isAutoDelete() && _configuration.deletePersistent())
{
+ CurrentActor.get().message(q.getLogSubject(), TopicDeletePolicyMessages.TDP_DELETING_QUEUE());
q.delete();
}