diff options
| author | Robert Gemmell <robbie@apache.org> | 2012-06-04 21:40:09 +0000 |
|---|---|---|
| committer | Robert Gemmell <robbie@apache.org> | 2012-06-04 21:40:09 +0000 |
| commit | e62634e101a92eb96e53ae3a8fbabd39a007ab03 (patch) | |
| tree | f2837d9978879e36f0f30b3890c8fde209beb6b1 /qpid/java | |
| parent | 2898a8a557a064a0244eabf6e14fbf2ad08fac88 (diff) | |
| download | qpid-python-e62634e101a92eb96e53ae3a8fbabd39a007ab03.tar.gz | |
QPID-4038: log the Connection number and its local and remote addresses after each [re]connection
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1346169 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java')
4 files changed, 30 insertions, 3 deletions
diff --git a/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnection.java b/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnection.java index d5b4352c02..d80858a7a1 100644 --- a/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnection.java +++ b/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnection.java @@ -69,6 +69,7 @@ import javax.naming.StringRefAddr; import java.io.IOException; import java.lang.reflect.InvocationTargetException; import java.net.ConnectException; +import java.net.SocketAddress; import java.net.UnknownHostException; import java.nio.channels.UnresolvedAddressException; import java.util.ArrayList; @@ -1529,4 +1530,13 @@ public class AMQConnection extends Closeable implements Connection, QueueConnect { return _connectionNumber; } + + protected void logConnected(SocketAddress localAddress, SocketAddress remoteAddress) + { + if(_logger.isInfoEnabled()) + { + _logger.info("Connection " + _connectionNumber + " now connected from " + + localAddress + " to " + remoteAddress); + } + } } diff --git a/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_0_10.java b/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_0_10.java index a1a06c5547..51e7e4153d 100644 --- a/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_0_10.java +++ b/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_0_10.java @@ -222,6 +222,7 @@ public class AMQConnectionDelegate_0_10 implements AMQConnectionDelegate, Connec _conn.setUsername(_qpidConnection.getUserID()); _conn.setMaximumChannelCount(_qpidConnection.getChannelMax()); _conn.getFailoverPolicy().attainedConnection(); + _conn.logConnected(_qpidConnection.getLocalAddress(), _qpidConnection.getRemoteAddress()); } catch (ProtocolVersionException pe) { diff --git a/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_8_0.java b/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_8_0.java index 68ad794f31..e1bf007e83 100644 --- a/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_8_0.java +++ b/qpid/java/client/src/main/java/org/apache/qpid/client/AMQConnectionDelegate_8_0.java @@ -24,13 +24,11 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.apache.qpid.AMQException; -import org.apache.qpid.AMQTimeoutException; import org.apache.qpid.client.failover.FailoverException; import org.apache.qpid.client.failover.FailoverProtectedOperation; import org.apache.qpid.client.failover.FailoverRetrySupport; import org.apache.qpid.client.protocol.AMQProtocolSession; import org.apache.qpid.client.state.AMQState; -import org.apache.qpid.client.state.AMQStateManager; import org.apache.qpid.client.state.StateWaiter; import org.apache.qpid.common.ServerPropertyNames; import org.apache.qpid.framing.BasicQosBody; @@ -68,7 +66,6 @@ public class AMQConnectionDelegate_8_0 implements AMQConnectionDelegate private static final Logger _logger = LoggerFactory.getLogger(AMQConnectionDelegate_8_0.class); private final AMQConnection _conn; - public void closeConnection(long timeout) throws JMSException, AMQException { _conn.getProtocolHandler().closeConnection(timeout); @@ -139,6 +136,7 @@ public class AMQConnectionDelegate_8_0 implements AMQConnectionDelegate { _conn.getFailoverPolicy().attainedConnection(); _conn.setConnected(true); + _conn.logConnected(network.getLocalAddress(), network.getRemoteAddress()); return null; } else diff --git a/qpid/java/common/src/main/java/org/apache/qpid/transport/Connection.java b/qpid/java/common/src/main/java/org/apache/qpid/transport/Connection.java index 2cd6a6e465..388e3442bf 100644 --- a/qpid/java/common/src/main/java/org/apache/qpid/transport/Connection.java +++ b/qpid/java/common/src/main/java/org/apache/qpid/transport/Connection.java @@ -41,6 +41,8 @@ import static org.apache.qpid.transport.Connection.State.OPENING; import javax.security.sasl.SaslClient; import javax.security.sasl.SaslServer; + +import java.net.SocketAddress; import java.nio.ByteBuffer; import java.util.ArrayList; import java.util.Collection; @@ -127,6 +129,9 @@ public class Connection extends ConnectionInvoker private final AtomicBoolean connectionLost = new AtomicBoolean(false); + private SocketAddress _remoteAddress; + private SocketAddress _localAddress; + public Connection() {} public void setConnectionDelegate(ConnectionDelegate delegate) @@ -228,6 +233,9 @@ public class Connection extends ConnectionInvoker } NetworkConnection network = transport.connect(settings, secureReceiver, null); + _remoteAddress = network.getRemoteAddress(); + _localAddress = network.getLocalAddress(); + final Sender<ByteBuffer> secureSender = securityLayer.sender(network.getSender()); if(secureSender instanceof ConnectionListener) { @@ -701,4 +709,14 @@ public class Connection extends ConnectionInvoker ssn.notifyFailoverRequired(); } } + + public SocketAddress getRemoteAddress() + { + return _remoteAddress; + } + + public SocketAddress getLocalAddress() + { + return _localAddress; + } } |
