activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Gary Tully <gary.tu...@gmail.com>
Subject Re: How do I configure a automatic expiration for DLQ
Date Fri, 17 Oct 2014 20:25:48 GMT
you really need an enhancement of your own plugin that will implement
sendToDeadLetterQueue b/c the current impl will clear the expiration of the
message, so it is in theory not possible for a message sent to the DLQ, to
expire.

https://github.com/apache/activemq/blob/d54e0d6ab590b6a6148a5e2629c45b95d3f40eb8/activemq-broker/src/main/java/org/apache/activemq/broker/region/RegionBroker.java#L744

A little plugin may be the answer - a variant of the discardingDLQBrokerPlugin
should be easy to hack up, maybe add a configurable expiry to that plugin
and submit a patch.

https://github.com/apache/activemq/blob/d54e0d6ab590b6a6148a5e2629c45b95d3f40eb8/activemq-broker/src/main/java/org/apache/activemq/plugin/DiscardingDLQBrokerPlugin.java


On 17 October 2014 18:17, gchakra <gopal.chakravarthy@fox.com> wrote:

> 1.For the dead letter queue ActiveMQ.DLQ, I would like to configure a
> policy
> whereby messages in DLQ get deleted after they have resided in DLQ for 5
> days.
> I couldnt see how to do it in the documentation.
> My current activemq.xml configuration file is below...how do I modify it
> for
> autoexpiring my DLQ messages after 5 days...
>
>
> <beans xmlns="http://www.springframework.org/schema/beans"
> xmlns:amq="http://activemq.apache.org/schema/core"
> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> xsi:schemaLocation="http://www.springframework.org/schema/beans
> http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
> http://activemq.apache.org/schema/core
> http://activemq.apache.org/schema/core/activemq-core.xsd">
>         <bean
>
> class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
>                 <property name="locations">
>
> <value>file:${activemq.base}/conf/credentials.properties</value>
>                 </property>
>         </bean>
>         <broker xmlns="http://activemq.apache.org/schema/core"
> brokerName="localhost" dataDirectory="${activemq.base}/data"
> destroyApplicationContextOnStop="true">
>                 <destinationPolicy>
>                         <policyMap>
>                                 <policyEntries>
>                                         <policyEntry topic=">"
> producerFlowControl="false" memoryLimit="1mb"
> useCache="false">
>                                                 <pendingSubscriberPolicy>
>                                                         <vmCursor />
>                                                 </pendingSubscriberPolicy>
>                                         </policyEntry>
>                                         <policyEntry queue=">"
> producerFlowControl="false" memoryLimit="1mb"
> useCache="false">
>                                                 <dispatchPolicy>
>
> <roundRobinDispatchPolicy />
>                                                 </dispatchPolicy>
>                                         </policyEntry>
>                                 </policyEntries>
>                         </policyMap>
>                 </destinationPolicy>
>                 <managementContext>
>                         <managementContext createConnector="false"/>
>                 </managementContext>
>                 <persistenceAdapter>
>                         <kahaDB directory="${activemq.base}/data/kahadb"
> ignoreMissingJournalfiles="true" checkForCorruptJournalFiles="true"
> checksumJournalFiles="true" journalMaxFileLength="64mb" />
>                 </persistenceAdapter>
>                 <transportConnectors>
>                         <transportConnector name="openwire" uri="tcp://
> 0.0.0.0:61616"/>
>                 </transportConnectors>
>         </broker>
>         <import resource="jetty.xml"/>
> </beans>
>
>
> 2. What is the impact of adding the following plugin to the broker in
> activemq.xml configuration XML
> <broker xmlns="http://activemq.apache.org/schema/core"
> brokerName="localhost" dataDirectory="$
> {activemq.base}/data" destroyApplicationContextOnStop="true">
> <plugins>
> <discardingDLQBrokerPlugin dropAll="true" dropTemporaryTopics="true"
> dropTemporaryQueues="true" />
> </plugins>
> </broker>
>
>
>
>
>
> --
> View this message in context:
> http://activemq.2283324.n4.nabble.com/How-do-I-configure-a-automatic-expiration-for-DLQ-tp4686510.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message