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 Mon, 20 Oct 2014 10:41:29 GMT
yes. periodic expiry processing. controlled by destination
policy expireMessagesPeriod > 0

On 17 October 2014 22:12, Tim Bain <tbain@alumni.duke.edu> wrote:

> Those plugin modifications will get the message into the DLQ with an
> expiration date, but is there anything that will cause messages in the DLQ
> to be deleted when they expire?  Or will Gopal also need to implement
> something to do that?
>
> On Fri, Oct 17, 2014 at 2:28 PM, Gary Tully <gary.tully@gmail.com> wrote:
>
> > the main meat is in:
> >
> >
> https://github.com/apache/activemq/blob/d54e0d6ab590b6a6148a5e2629c45b95d3f40eb8/activemq-broker/src/main/java/org/apache/activemq/plugin/DiscardingDLQBroker.java#L47
> >
> > maybe an option in there will give you a quick win, do what regionBroker
> > does but set an expiration.
> >
> > On 17 October 2014 21:25, Gary Tully <gary.tully@gmail.com> wrote:
> >
> > > 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