Class LoggingBrokerPlugin

All Implemented Interfaces:
Broker, BrokerPlugin, Region, org.apache.activemq.Service

public class LoggingBrokerPlugin extends BrokerPluginSupport
A simple Broker intercepter which allows you to enable/disable logging.
  • Constructor Details

    • LoggingBrokerPlugin

      public LoggingBrokerPlugin()
  • Method Details

    • afterPropertiesSet

      public void afterPropertiesSet() throws Exception
      Throws:
      Exception
    • 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, org.apache.activemq.command.MessageAck ack) throws Exception
      Description copied from interface: Region
      Used to acknowledge the receipt of a message by a client.
      Specified by:
      acknowledge in interface Region
      Overrides:
      acknowledge in class BrokerFilter
      Parameters:
      consumerExchange - the environment the operation is being executed under.
      Throws:
      Exception - TODO
    • messagePull

      public org.apache.activemq.command.Response messagePull(ConnectionContext context, org.apache.activemq.command.MessagePull pull) throws Exception
      Description copied from interface: Region
      Allows a consumer to pull a message from a queue
      Specified by:
      messagePull in interface Region
      Overrides:
      messagePull in class BrokerFilter
      Throws:
      Exception
    • addConnection

      public void addConnection(ConnectionContext context, org.apache.activemq.command.ConnectionInfo info) throws Exception
      Description copied from interface: Broker
      A client is establishing a connection with the broker.
      Specified by:
      addConnection in interface Broker
      Overrides:
      addConnection in class BrokerFilter
      Throws:
      Exception - TODO
    • addConsumer

      public Subscription addConsumer(ConnectionContext context, org.apache.activemq.command.ConsumerInfo info) throws Exception
      Description copied from interface: Region
      Adds a consumer.
      Specified by:
      addConsumer in interface Region
      Overrides:
      addConsumer in class BrokerFilter
      Parameters:
      context - the environment the operation is being executed under.
      Returns:
      TODO
      Throws:
      Exception - TODO
    • addProducer

      public void addProducer(ConnectionContext context, org.apache.activemq.command.ProducerInfo info) throws Exception
      Description copied from interface: Broker
      Adds a producer.
      Specified by:
      addProducer in interface Broker
      Specified by:
      addProducer in interface Region
      Overrides:
      addProducer in class BrokerFilter
      Parameters:
      context - the environment the operation is being executed under.
      Throws:
      Exception - TODO
    • commitTransaction

      public void commitTransaction(ConnectionContext context, org.apache.activemq.command.TransactionId xid, boolean onePhase) throws Exception
      Description copied from interface: Broker
      Commits a transaction.
      Specified by:
      commitTransaction in interface Broker
      Overrides:
      commitTransaction in class BrokerFilter
      Throws:
      Exception - TODO
    • removeSubscription

      public void removeSubscription(ConnectionContext context, org.apache.activemq.command.RemoveSubscriptionInfo info) throws Exception
      Description copied from interface: Region
      Deletes a durable subscription.
      Specified by:
      removeSubscription in interface Region
      Overrides:
      removeSubscription in class BrokerFilter
      Parameters:
      context - the environment the operation is being executed under.
      info - TODO
      Throws:
      Exception - TODO
    • getPreparedTransactions

      public org.apache.activemq.command.TransactionId[] getPreparedTransactions(ConnectionContext context) throws Exception
      Description copied from interface: Broker
      Gets a list of all the prepared xa transactions.
      Specified by:
      getPreparedTransactions in interface Broker
      Overrides:
      getPreparedTransactions in class BrokerFilter
      Parameters:
      context - transaction ids
      Returns:
      array of TransactionId values
      Throws:
      Exception - TODO
    • prepareTransaction

      public int prepareTransaction(ConnectionContext context, org.apache.activemq.command.TransactionId xid) throws Exception
      Description copied from interface: Broker
      Prepares a transaction. Only valid for xa transactions.
      Specified by:
      prepareTransaction in interface Broker
      Overrides:
      prepareTransaction in class BrokerFilter
      Returns:
      id
      Throws:
      Exception - TODO
    • removeConnection

      public void removeConnection(ConnectionContext context, org.apache.activemq.command.ConnectionInfo info, Throwable error) throws Exception
      Description copied from interface: Broker
      A client is disconnecting from the broker.
      Specified by:
      removeConnection in interface Broker
      Overrides:
      removeConnection in class BrokerFilter
      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, org.apache.activemq.command.ConsumerInfo info) throws Exception
      Description copied from interface: Region
      Removes a consumer.
      Specified by:
      removeConsumer in interface Region
      Overrides:
      removeConsumer in class BrokerFilter
      Parameters:
      context - the environment the operation is being executed under.
      Throws:
      Exception - TODO
    • removeProducer

      public void removeProducer(ConnectionContext context, org.apache.activemq.command.ProducerInfo info) throws Exception
      Description copied from interface: Broker
      Removes a producer.
      Specified by:
      removeProducer in interface Broker
      Specified by:
      removeProducer in interface Region
      Overrides:
      removeProducer in class BrokerFilter
      Parameters:
      context - the environment the operation is being executed under.
      Throws:
      Exception - TODO
    • rollbackTransaction

      public void rollbackTransaction(ConnectionContext context, org.apache.activemq.command.TransactionId xid) throws Exception
      Description copied from interface: Broker
      Rollsback a transaction.
      Specified by:
      rollbackTransaction in interface Broker
      Overrides:
      rollbackTransaction in class BrokerFilter
      Throws:
      Exception - TODO
    • send

      public void send(ProducerBrokerExchange producerExchange, org.apache.activemq.command.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 interface Region
      Overrides:
      send in class BrokerFilter
      Parameters:
      producerExchange - the environment the operation is being executed under.
      Throws:
      Exception - TODO
    • beginTransaction

      public void beginTransaction(ConnectionContext context, org.apache.activemq.command.TransactionId xid) throws Exception
      Description copied from interface: Broker
      Starts a transaction.
      Specified by:
      beginTransaction in interface Broker
      Overrides:
      beginTransaction in class BrokerFilter
      Throws:
      Exception - TODO
    • forgetTransaction

      public void forgetTransaction(ConnectionContext context, org.apache.activemq.command.TransactionId transactionId) throws Exception
      Description copied from interface: Broker
      Forgets a transaction.
      Specified by:
      forgetTransaction in interface Broker
      Overrides:
      forgetTransaction in class BrokerFilter
      Throws:
      Exception
    • getClients

      public Connection[] getClients() throws Exception
      Specified by:
      getClients in interface Broker
      Overrides:
      getClients in class BrokerFilter
      Returns:
      all clients added to the Broker.
      Throws:
      Exception - TODO
    • addDestination

      public Destination addDestination(ConnectionContext context, org.apache.activemq.command.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 interface Region
      Overrides:
      addDestination in class BrokerFilter
      destination - the destination to create.
      Returns:
      TODO
      Throws:
      Exception - TODO
    • removeDestination

      public void removeDestination(ConnectionContext context, org.apache.activemq.command.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 interface Region
      Overrides:
      removeDestination in class BrokerFilter
      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 org.apache.activemq.command.ActiveMQDestination[] getDestinations() throws Exception
      Specified by:
      getDestinations in interface Broker
      Overrides:
      getDestinations in class BrokerFilter
      Returns:
      all destinations added to the Broker.
      Throws:
      Exception - TODO
    • start

      public void start() throws Exception
      Specified by:
      start in interface org.apache.activemq.Service
      Overrides:
      start in class BrokerPluginSupport
      Throws:
      Exception
    • stop

      public void stop() throws Exception
      Specified by:
      stop in interface org.apache.activemq.Service
      Overrides:
      stop in class BrokerPluginSupport
      Throws:
      Exception
    • addSession

      public void addSession(ConnectionContext context, org.apache.activemq.command.SessionInfo info) throws Exception
      Description copied from interface: Broker
      Adds a session.
      Specified by:
      addSession in interface Broker
      Overrides:
      addSession in class BrokerFilter
      Throws:
      Exception - TODO
    • removeSession

      public void removeSession(ConnectionContext context, org.apache.activemq.command.SessionInfo info) throws Exception
      Description copied from interface: Broker
      Removes a session.
      Specified by:
      removeSession in interface Broker
      Overrides:
      removeSession in class BrokerFilter
      Throws:
      Exception - TODO
    • addBroker

      public void addBroker(Connection connection, org.apache.activemq.command.BrokerInfo info)
      Description copied from interface: Broker
      A remote Broker connects
      Specified by:
      addBroker in interface Broker
      Overrides:
      addBroker in class BrokerFilter
    • removeBroker

      public void removeBroker(Connection connection, org.apache.activemq.command.BrokerInfo info)
      Description copied from interface: Broker
      Remove a BrokerInfo
      Specified by:
      removeBroker in interface Broker
      Overrides:
      removeBroker in class BrokerFilter
    • getPeerBrokerInfos

      public org.apache.activemq.command.BrokerInfo[] getPeerBrokerInfos()
      Description copied from interface: Broker
      Get the BrokerInfo's of any connected Brokers
      Specified by:
      getPeerBrokerInfos in interface Broker
      Overrides:
      getPeerBrokerInfos in class BrokerFilter
      Returns:
      array of peer BrokerInfos
    • preProcessDispatch

      public void preProcessDispatch(org.apache.activemq.command.MessageDispatch messageDispatch)
      Description copied from interface: Broker
      Notify the Broker that a dispatch is going to happen
      Specified by:
      preProcessDispatch in interface Broker
      Overrides:
      preProcessDispatch in class BrokerFilter
    • postProcessDispatch

      public void postProcessDispatch(org.apache.activemq.command.MessageDispatch messageDispatch)
      Description copied from interface: Broker
      Notify the Broker that a dispatch has happened
      Specified by:
      postProcessDispatch in interface Broker
      Overrides:
      postProcessDispatch in class BrokerFilter
    • processDispatchNotification

      public void processDispatchNotification(org.apache.activemq.command.MessageDispatchNotification messageDispatchNotification) throws Exception
      Description copied from interface: Region
      Process a notification of a dispatch - used by a Slave Broker
      Specified by:
      processDispatchNotification in interface Region
      Overrides:
      processDispatchNotification in class BrokerFilter
      Throws:
      Exception - TODO
    • getDurableDestinations

      public Set<org.apache.activemq.command.ActiveMQDestination> getDurableDestinations()
      Specified by:
      getDurableDestinations in interface Broker
      Overrides:
      getDurableDestinations in class BrokerFilter
      Returns:
      a Set of all durable destinations
    • addDestinationInfo

      public void addDestinationInfo(ConnectionContext context, org.apache.activemq.command.DestinationInfo info) throws Exception
      Description copied from interface: Broker
      Add and process a DestinationInfo object
      Specified by:
      addDestinationInfo in interface Broker
      Overrides:
      addDestinationInfo in class BrokerFilter
      Throws:
      Exception
    • removeDestinationInfo

      public void removeDestinationInfo(ConnectionContext context, org.apache.activemq.command.DestinationInfo info) throws Exception
      Description copied from interface: Broker
      Remove and process a DestinationInfo object
      Specified by:
      removeDestinationInfo in interface Broker
      Overrides:
      removeDestinationInfo in class BrokerFilter
      Throws:
      Exception
    • messageExpired

      public void messageExpired(ConnectionContext context, org.apache.activemq.broker.region.MessageReference message, Subscription subscription)
      Description copied from interface: Broker
      A Message has Expired
      Specified by:
      messageExpired in interface Broker
      Overrides:
      messageExpired in class BrokerFilter
      subscription - (may be null)
    • sendToDeadLetterQueue

      public boolean sendToDeadLetterQueue(ConnectionContext context, org.apache.activemq.broker.region.MessageReference messageReference, Subscription subscription, Throwable poisonCause)
      Description copied from interface: Broker
      A message needs to go the a DLQ
      Specified by:
      sendToDeadLetterQueue in interface Broker
      Overrides:
      sendToDeadLetterQueue in class BrokerFilter
      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, org.apache.activemq.command.ProducerInfo producerInfo, org.apache.activemq.command.ActiveMQDestination destination)
      Description copied from interface: Broker
      Called to notify a producer is too fast
      Specified by:
      fastProducer in interface Broker
      Overrides:
      fastProducer in class BrokerFilter
    • isFull

      public void isFull(ConnectionContext context, Destination destination, org.apache.activemq.usage.Usage<?> usage)
      Description copied from interface: Broker
      Called when a Usage reaches a limit
      Specified by:
      isFull in interface Broker
      Overrides:
      isFull in class BrokerFilter
    • messageConsumed

      public void messageConsumed(ConnectionContext context, org.apache.activemq.broker.region.MessageReference messageReference)
      Description copied from interface: Broker
      called when message is consumed
      Specified by:
      messageConsumed in interface Broker
      Overrides:
      messageConsumed in class BrokerFilter
    • messageDelivered

      public void messageDelivered(ConnectionContext context, org.apache.activemq.broker.region.MessageReference messageReference)
      Description copied from interface: Broker
      Called when message is delivered to the broker
      Specified by:
      messageDelivered in interface Broker
      Overrides:
      messageDelivered in class BrokerFilter
    • messageDispatched

      public void messageDispatched(ConnectionContext context, Subscription sub, org.apache.activemq.broker.region.MessageReference messageReference)
      Description copied from interface: Broker
      Called when message is dispatched to a consumer
      Specified by:
      messageDispatched in interface Broker
      Overrides:
      messageDispatched in class BrokerFilter
    • messageDiscarded

      public void messageDiscarded(ConnectionContext context, Subscription sub, org.apache.activemq.broker.region.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 interface Broker
      Overrides:
      messageDiscarded in class BrokerFilter
    • 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 interface Broker
      Overrides:
      slowConsumer in class BrokerFilter
    • 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 interface Broker
      Overrides:
      nowMasterBroker in class BrokerFilter
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • setPerDestinationLogger

      public void setPerDestinationLogger(boolean perDestinationLogger)
    • isPerDestinationLogger

      public boolean isPerDestinationLogger()