Package org.apache.activemq.broker.util
Class LoggingBrokerPlugin
- java.lang.Object
-
- org.apache.activemq.broker.BrokerFilter
-
- org.apache.activemq.broker.MutableBrokerFilter
-
- org.apache.activemq.broker.BrokerPluginSupport
-
- org.apache.activemq.broker.util.LoggingBrokerPlugin
-
- All Implemented Interfaces:
Broker
,BrokerPlugin
,Region
,Service
public class LoggingBrokerPlugin extends BrokerPluginSupport
A simple Broker intercepter which allows you to enable/disable logging.
-
-
Field Summary
-
Fields inherited from class org.apache.activemq.broker.MutableBrokerFilter
next
-
-
Constructor Summary
Constructors Constructor Description LoggingBrokerPlugin()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
acknowledge(ConsumerBrokerExchange consumerExchange, MessageAck ack)
Used to acknowledge the receipt of a message by a client.void
addBroker(Connection connection, BrokerInfo info)
A remote Broker connectsvoid
addConnection(ConnectionContext context, ConnectionInfo info)
A client is establishing a connection with the broker.Subscription
addConsumer(ConnectionContext context, ConsumerInfo info)
Adds a consumer.Destination
addDestination(ConnectionContext context, ActiveMQDestination destination, boolean create)
Used to create a destination.void
addDestinationInfo(ConnectionContext context, DestinationInfo info)
Add and process a DestinationInfo objectvoid
addProducer(ConnectionContext context, ProducerInfo info)
Adds a producer.void
addSession(ConnectionContext context, SessionInfo info)
Adds a session.void
afterPropertiesSet()
void
beginTransaction(ConnectionContext context, TransactionId xid)
Starts a transaction.void
commitTransaction(ConnectionContext context, TransactionId xid, boolean onePhase)
Commits a transaction.void
fastProducer(ConnectionContext context, ProducerInfo producerInfo, ActiveMQDestination destination)
Called to notify a producer is too fastvoid
forgetTransaction(ConnectionContext context, TransactionId transactionId)
Forgets a transaction.Connection[]
getClients()
ActiveMQDestination[]
getDestinations()
Set<ActiveMQDestination>
getDurableDestinations()
BrokerInfo[]
getPeerBrokerInfos()
Get the BrokerInfo's of any connected BrokersTransactionId[]
getPreparedTransactions(ConnectionContext context)
Gets a list of all the prepared xa transactions.void
isFull(ConnectionContext context, Destination destination, Usage<?> usage)
Called when a Usage reaches a limitboolean
isLogAll()
boolean
isLogConnectionEvents()
boolean
isLogConsumerEvents()
boolean
isLogInternalEvents()
boolean
isLogProducerEvents()
boolean
isLogSessionEvents()
boolean
isLogTransactionEvents()
boolean
isPerDestinationLogger()
void
messageConsumed(ConnectionContext context, MessageReference messageReference)
called when message is consumedvoid
messageDelivered(ConnectionContext context, MessageReference messageReference)
Called when message is delivered to the brokervoid
messageDiscarded(ConnectionContext context, Subscription sub, MessageReference messageReference)
Called when a message is discarded - e.g.void
messageExpired(ConnectionContext context, MessageReference message, Subscription subscription)
A Message has ExpiredResponse
messagePull(ConnectionContext context, MessagePull pull)
Allows a consumer to pull a message from a queuevoid
nowMasterBroker()
called when the broker becomes the master in a master/slave configurationvoid
postProcessDispatch(MessageDispatch messageDispatch)
Notify the Broker that a dispatch has happenedint
prepareTransaction(ConnectionContext context, TransactionId xid)
Prepares a transaction.void
preProcessDispatch(MessageDispatch messageDispatch)
Notify the Broker that a dispatch is going to happenvoid
processDispatchNotification(MessageDispatchNotification messageDispatchNotification)
Process a notification of a dispatch - used by a Slave Brokervoid
removeBroker(Connection connection, BrokerInfo info)
Remove a BrokerInfovoid
removeConnection(ConnectionContext context, ConnectionInfo info, Throwable error)
A client is disconnecting from the broker.void
removeConsumer(ConnectionContext context, ConsumerInfo info)
Removes a consumer.void
removeDestination(ConnectionContext context, ActiveMQDestination destination, long timeout)
Used to destroy a destination.void
removeDestinationInfo(ConnectionContext context, DestinationInfo info)
Remove and process a DestinationInfo objectvoid
removeProducer(ConnectionContext context, ProducerInfo info)
Removes a producer.void
removeSession(ConnectionContext context, SessionInfo info)
Removes a session.void
removeSubscription(ConnectionContext context, RemoveSubscriptionInfo info)
Deletes a durable subscription.void
rollbackTransaction(ConnectionContext context, TransactionId xid)
Rollsback a transaction.void
send(ProducerBrokerExchange producerExchange, Message messageSend)
Send a message to the broker to using the specified destination.boolean
sendToDeadLetterQueue(ConnectionContext context, MessageReference messageReference, Subscription subscription, Throwable poisonCause)
A message needs to go the a DLQvoid
setLogAll(boolean logAll)
Logger all Events that go through the Pluginvoid
setLogConnectionEvents(boolean logConnectionEvents)
Logger Events that are related to connectionsvoid
setLogConsumerEvents(boolean logConsumerEvents)
Logger Events that are related to Consumersvoid
setLogInternalEvents(boolean logInternalEvents)
Logger Events that are normally internal to the brokervoid
setLogProducerEvents(boolean logProducerEvents)
Logger Events that are related to Producersvoid
setLogSessionEvents(boolean logSessionEvents)
Logger Events that are related to sessionsvoid
setLogTransactionEvents(boolean logTransactionEvents)
Logger Events that are related to transaction processingvoid
setPerDestinationLogger(boolean perDestinationLogger)
void
slowConsumer(ConnectionContext context, Destination destination, Subscription subs)
Called when there is a slow consumervoid
start()
void
stop()
String
toString()
-
Methods inherited from class org.apache.activemq.broker.BrokerPluginSupport
installPlugin
-
Methods inherited from class org.apache.activemq.broker.MutableBrokerFilter
getAdaptor, getNext, setNext
-
Methods inherited from class org.apache.activemq.broker.BrokerFilter
brokerServiceStarted, gc, getAdminConnectionContext, getBrokerId, getBrokerName, getBrokerSequenceId, getBrokerService, getDestinationMap, getDestinationMap, getDestinations, getExecutor, getRoot, getScheduler, getTempDataStore, getVmConnectorURI, isExpired, isFaultTolerantConfiguration, isStopped, networkBridgeStarted, networkBridgeStopped, processConsumerControl, reapplyInterceptor, setAdminConnectionContext, virtualDestinationAdded, virtualDestinationRemoved
-
-
-
-
Method Detail
-
isLogAll
public boolean isLogAll()
-
setLogAll
public void setLogAll(boolean logAll)
Logger all Events that go through the Plugin
-
isLogConnectionEvents
public boolean isLogConnectionEvents()
-
setLogConnectionEvents
public void setLogConnectionEvents(boolean logConnectionEvents)
Logger Events that are related to connections
-
isLogSessionEvents
public boolean isLogSessionEvents()
-
setLogSessionEvents
public void setLogSessionEvents(boolean logSessionEvents)
Logger Events that are related to sessions
-
isLogTransactionEvents
public boolean isLogTransactionEvents()
-
setLogTransactionEvents
public void setLogTransactionEvents(boolean logTransactionEvents)
Logger Events that are related to transaction processing
-
isLogConsumerEvents
public boolean isLogConsumerEvents()
-
setLogConsumerEvents
public void setLogConsumerEvents(boolean logConsumerEvents)
Logger Events that are related to Consumers
-
isLogProducerEvents
public boolean isLogProducerEvents()
-
setLogProducerEvents
public void setLogProducerEvents(boolean logProducerEvents)
Logger Events that are related to Producers
-
isLogInternalEvents
public boolean isLogInternalEvents()
-
setLogInternalEvents
public void setLogInternalEvents(boolean logInternalEvents)
Logger Events that are normally internal to the broker
-
acknowledge
public void acknowledge(ConsumerBrokerExchange consumerExchange, MessageAck ack) throws Exception
Description copied from interface:Region
Used to acknowledge the receipt of a message by a client.- Specified by:
acknowledge
in interfaceRegion
- Overrides:
acknowledge
in classBrokerFilter
- Parameters:
consumerExchange
- the environment the operation is being executed under.- Throws:
Exception
- TODO
-
messagePull
public Response messagePull(ConnectionContext context, MessagePull pull) throws Exception
Description copied from interface:Region
Allows a consumer to pull a message from a queue- Specified by:
messagePull
in interfaceRegion
- Overrides:
messagePull
in classBrokerFilter
- Throws:
Exception
-
addConnection
public void addConnection(ConnectionContext context, ConnectionInfo info) throws Exception
Description copied from interface:Broker
A client is establishing a connection with the broker.- Specified by:
addConnection
in interfaceBroker
- Overrides:
addConnection
in classBrokerFilter
- Throws:
Exception
- TODO
-
addConsumer
public Subscription addConsumer(ConnectionContext context, ConsumerInfo info) throws Exception
Description copied from interface:Region
Adds a consumer.- Specified by:
addConsumer
in interfaceRegion
- Overrides:
addConsumer
in classBrokerFilter
- Parameters:
context
- the environment the operation is being executed under.- Returns:
- TODO
- Throws:
Exception
- TODO
-
addProducer
public void addProducer(ConnectionContext context, ProducerInfo info) throws Exception
Description copied from interface:Broker
Adds a producer.- Specified by:
addProducer
in interfaceBroker
- Specified by:
addProducer
in interfaceRegion
- Overrides:
addProducer
in classBrokerFilter
- Parameters:
context
- the environment the operation is being executed under.- Throws:
Exception
- TODO
-
commitTransaction
public void commitTransaction(ConnectionContext context, TransactionId xid, boolean onePhase) throws Exception
Description copied from interface:Broker
Commits a transaction.- Specified by:
commitTransaction
in interfaceBroker
- Overrides:
commitTransaction
in classBrokerFilter
- Throws:
Exception
- TODO
-
removeSubscription
public void removeSubscription(ConnectionContext context, RemoveSubscriptionInfo info) throws Exception
Description copied from interface:Region
Deletes a durable subscription.- Specified by:
removeSubscription
in interfaceRegion
- Overrides:
removeSubscription
in classBrokerFilter
- Parameters:
context
- the environment the operation is being executed under.info
- TODO- Throws:
Exception
- TODO
-
getPreparedTransactions
public TransactionId[] getPreparedTransactions(ConnectionContext context) throws Exception
Description copied from interface:Broker
Gets a list of all the prepared xa transactions.- Specified by:
getPreparedTransactions
in interfaceBroker
- Overrides:
getPreparedTransactions
in classBrokerFilter
- Parameters:
context
- transaction ids- Returns:
- array of TransactionId values
- Throws:
Exception
- TODO
-
prepareTransaction
public int prepareTransaction(ConnectionContext context, TransactionId xid) throws Exception
Description copied from interface:Broker
Prepares a transaction. Only valid for xa transactions.- Specified by:
prepareTransaction
in interfaceBroker
- Overrides:
prepareTransaction
in classBrokerFilter
- Returns:
- id
- Throws:
Exception
- TODO
-
removeConnection
public void removeConnection(ConnectionContext context, ConnectionInfo info, Throwable error) throws Exception
Description copied from interface:Broker
A client is disconnecting from the broker.- Specified by:
removeConnection
in interfaceBroker
- Overrides:
removeConnection
in classBrokerFilter
- Parameters:
context
- the environment the operation is being executed under.error
- null if the client requested the disconnect or the error that caused the client to disconnect.- Throws:
Exception
- TODO
-
removeConsumer
public void removeConsumer(ConnectionContext context, ConsumerInfo info) throws Exception
Description copied from interface:Region
Removes a consumer.- Specified by:
removeConsumer
in interfaceRegion
- Overrides:
removeConsumer
in classBrokerFilter
- Parameters:
context
- the environment the operation is being executed under.- Throws:
Exception
- TODO
-
removeProducer
public void removeProducer(ConnectionContext context, ProducerInfo info) throws Exception
Description copied from interface:Broker
Removes a producer.- Specified by:
removeProducer
in interfaceBroker
- Specified by:
removeProducer
in interfaceRegion
- Overrides:
removeProducer
in classBrokerFilter
- Parameters:
context
- the environment the operation is being executed under.- Throws:
Exception
- TODO
-
rollbackTransaction
public void rollbackTransaction(ConnectionContext context, TransactionId xid) throws Exception
Description copied from interface:Broker
Rollsback a transaction.- Specified by:
rollbackTransaction
in interfaceBroker
- Overrides:
rollbackTransaction
in classBrokerFilter
- Throws:
Exception
- TODO
-
send
public void send(ProducerBrokerExchange producerExchange, Message messageSend) throws Exception
Description copied from interface:Region
Send a message to the broker to using the specified destination. The destination specified in the message does not need to match the destination the message is sent to. This is handy in case the message is being sent to a dead letter destination.- Specified by:
send
in interfaceRegion
- Overrides:
send
in classBrokerFilter
- Parameters:
producerExchange
- the environment the operation is being executed under.- Throws:
Exception
- TODO
-
beginTransaction
public void beginTransaction(ConnectionContext context, TransactionId xid) throws Exception
Description copied from interface:Broker
Starts a transaction.- Specified by:
beginTransaction
in interfaceBroker
- Overrides:
beginTransaction
in classBrokerFilter
- Throws:
Exception
- TODO
-
forgetTransaction
public void forgetTransaction(ConnectionContext context, TransactionId transactionId) throws Exception
Description copied from interface:Broker
Forgets a transaction.- Specified by:
forgetTransaction
in interfaceBroker
- Overrides:
forgetTransaction
in classBrokerFilter
- Throws:
Exception
-
getClients
public Connection[] getClients() throws Exception
- Specified by:
getClients
in interfaceBroker
- Overrides:
getClients
in classBrokerFilter
- Returns:
- all clients added to the Broker.
- Throws:
Exception
- TODO
-
addDestination
public Destination addDestination(ConnectionContext context, ActiveMQDestination destination, boolean create) throws Exception
Description copied from interface:Region
Used to create a destination. Usually, this method is invoked as a side-effect of sending a message to a destination that does not exist yet.- Specified by:
addDestination
in interfaceRegion
- Overrides:
addDestination
in classBrokerFilter
destination
- the destination to create.- Returns:
- TODO
- Throws:
Exception
- TODO
-
removeDestination
public void removeDestination(ConnectionContext context, ActiveMQDestination destination, long timeout) throws Exception
Description copied from interface:Region
Used to destroy a destination. This should try to quiesce use of the destination up to the timeout allotted time before removing the destination. This will remove all persistent messages associated with the destination.- Specified by:
removeDestination
in interfaceRegion
- Overrides:
removeDestination
in classBrokerFilter
- Parameters:
context
- the environment the operation is being executed under.destination
- what is being removed from the broker.timeout
- the max amount of time to wait for the destination to quiesce- Throws:
Exception
- TODO
-
getDestinations
public ActiveMQDestination[] getDestinations() throws Exception
- Specified by:
getDestinations
in interfaceBroker
- Overrides:
getDestinations
in classBrokerFilter
- Returns:
- all destinations added to the Broker.
- Throws:
Exception
- TODO
-
start
public void start() throws Exception
- Specified by:
start
in interfaceService
- Overrides:
start
in classBrokerPluginSupport
- Throws:
Exception
-
stop
public void stop() throws Exception
- Specified by:
stop
in interfaceService
- Overrides:
stop
in classBrokerPluginSupport
- Throws:
Exception
-
addSession
public void addSession(ConnectionContext context, SessionInfo info) throws Exception
Description copied from interface:Broker
Adds a session.- Specified by:
addSession
in interfaceBroker
- Overrides:
addSession
in classBrokerFilter
- Throws:
Exception
- TODO
-
removeSession
public void removeSession(ConnectionContext context, SessionInfo info) throws Exception
Description copied from interface:Broker
Removes a session.- Specified by:
removeSession
in interfaceBroker
- Overrides:
removeSession
in classBrokerFilter
- Throws:
Exception
- TODO
-
addBroker
public void addBroker(Connection connection, BrokerInfo info)
Description copied from interface:Broker
A remote Broker connects- Specified by:
addBroker
in interfaceBroker
- Overrides:
addBroker
in classBrokerFilter
-
removeBroker
public void removeBroker(Connection connection, BrokerInfo info)
Description copied from interface:Broker
Remove a BrokerInfo- Specified by:
removeBroker
in interfaceBroker
- Overrides:
removeBroker
in classBrokerFilter
-
getPeerBrokerInfos
public BrokerInfo[] getPeerBrokerInfos()
Description copied from interface:Broker
Get the BrokerInfo's of any connected Brokers- Specified by:
getPeerBrokerInfos
in interfaceBroker
- Overrides:
getPeerBrokerInfos
in classBrokerFilter
- Returns:
- array of peer BrokerInfos
-
preProcessDispatch
public void preProcessDispatch(MessageDispatch messageDispatch)
Description copied from interface:Broker
Notify the Broker that a dispatch is going to happen- Specified by:
preProcessDispatch
in interfaceBroker
- Overrides:
preProcessDispatch
in classBrokerFilter
-
postProcessDispatch
public void postProcessDispatch(MessageDispatch messageDispatch)
Description copied from interface:Broker
Notify the Broker that a dispatch has happened- Specified by:
postProcessDispatch
in interfaceBroker
- Overrides:
postProcessDispatch
in classBrokerFilter
-
processDispatchNotification
public void processDispatchNotification(MessageDispatchNotification messageDispatchNotification) throws Exception
Description copied from interface:Region
Process a notification of a dispatch - used by a Slave Broker- Specified by:
processDispatchNotification
in interfaceRegion
- Overrides:
processDispatchNotification
in classBrokerFilter
- Throws:
Exception
- TODO
-
getDurableDestinations
public Set<ActiveMQDestination> getDurableDestinations()
- Specified by:
getDurableDestinations
in interfaceBroker
- Overrides:
getDurableDestinations
in classBrokerFilter
- Returns:
- a Set of all durable destinations
-
addDestinationInfo
public void addDestinationInfo(ConnectionContext context, DestinationInfo info) throws Exception
Description copied from interface:Broker
Add and process a DestinationInfo object- Specified by:
addDestinationInfo
in interfaceBroker
- Overrides:
addDestinationInfo
in classBrokerFilter
- Throws:
Exception
-
removeDestinationInfo
public void removeDestinationInfo(ConnectionContext context, DestinationInfo info) throws Exception
Description copied from interface:Broker
Remove and process a DestinationInfo object- Specified by:
removeDestinationInfo
in interfaceBroker
- Overrides:
removeDestinationInfo
in classBrokerFilter
- Throws:
Exception
-
messageExpired
public void messageExpired(ConnectionContext context, MessageReference message, Subscription subscription)
Description copied from interface:Broker
A Message has Expired- Specified by:
messageExpired
in interfaceBroker
- Overrides:
messageExpired
in classBrokerFilter
subscription
- (may be null)
-
sendToDeadLetterQueue
public boolean sendToDeadLetterQueue(ConnectionContext context, MessageReference messageReference, Subscription subscription, Throwable poisonCause)
Description copied from interface:Broker
A message needs to go the a DLQ- Specified by:
sendToDeadLetterQueue
in interfaceBroker
- Overrides:
sendToDeadLetterQueue
in classBrokerFilter
poisonCause
- reason for dlq submission, may be null- Returns:
- true if Message was placed in a DLQ false if discarded.
-
fastProducer
public void fastProducer(ConnectionContext context, ProducerInfo producerInfo, ActiveMQDestination destination)
Description copied from interface:Broker
Called to notify a producer is too fast- Specified by:
fastProducer
in interfaceBroker
- Overrides:
fastProducer
in classBrokerFilter
-
isFull
public void isFull(ConnectionContext context, Destination destination, Usage<?> usage)
Description copied from interface:Broker
Called when a Usage reaches a limit- Specified by:
isFull
in interfaceBroker
- Overrides:
isFull
in classBrokerFilter
-
messageConsumed
public void messageConsumed(ConnectionContext context, MessageReference messageReference)
Description copied from interface:Broker
called when message is consumed- Specified by:
messageConsumed
in interfaceBroker
- Overrides:
messageConsumed
in classBrokerFilter
-
messageDelivered
public void messageDelivered(ConnectionContext context, MessageReference messageReference)
Description copied from interface:Broker
Called when message is delivered to the broker- Specified by:
messageDelivered
in interfaceBroker
- Overrides:
messageDelivered
in classBrokerFilter
-
messageDiscarded
public void messageDiscarded(ConnectionContext context, Subscription sub, MessageReference messageReference)
Description copied from interface:Broker
Called when a message is discarded - e.g. running low on memory This will happen only if the policy is enabled - e.g. non durable topics- Specified by:
messageDiscarded
in interfaceBroker
- Overrides:
messageDiscarded
in classBrokerFilter
-
slowConsumer
public void slowConsumer(ConnectionContext context, Destination destination, Subscription subs)
Description copied from interface:Broker
Called when there is a slow consumer- Specified by:
slowConsumer
in interfaceBroker
- Overrides:
slowConsumer
in classBrokerFilter
-
nowMasterBroker
public void nowMasterBroker()
Description copied from interface:Broker
called when the broker becomes the master in a master/slave configuration- Specified by:
nowMasterBroker
in interfaceBroker
- Overrides:
nowMasterBroker
in classBrokerFilter
-
setPerDestinationLogger
public void setPerDestinationLogger(boolean perDestinationLogger)
-
isPerDestinationLogger
public boolean isPerDestinationLogger()
-
-