Refactor logging and remove initial forced ping

This commit is contained in:
nicksavers 2014-09-29 16:06:01 +02:00
parent 8cb7f3e594
commit 7327224939
7 changed files with 16 additions and 24 deletions

View File

@ -52,7 +52,6 @@ public class WorldManager {
// Initialize PeerData
Set<Peer> peerDataList = parsePeerDiscoveryIpList(CONFIG.peerDiscoveryIPList());
// peers.addAll(peerDataList);
peerDiscovery = new PeerDiscovery(peerDataList);
}

View File

@ -32,7 +32,7 @@ public class MessageQueue {
private Queue<MessageRoundtrip> messageQueue = new ConcurrentLinkedQueue<>();
private ChannelHandlerContext ctx = null;
private Timer timer = new Timer();
private final Timer timer = new Timer();
public MessageQueue(ChannelHandlerContext ctx) {
this.ctx = ctx;
@ -54,13 +54,11 @@ public class MessageQueue {
public void receivedMessage(Message msg) {
if (logger.isDebugEnabled())
logger.debug("Recv: [{}] - [{}]",
msg.getCommand().name(),
Hex.toHexString(msg.getEncoded()));
if (logger.isInfoEnabled())
logger.info("Recv: {}", msg.toString());
logger.info("From: \t{} \tRecv: \t{}", ctx.channel()
.remoteAddress().toString(), msg.toString());
if (logger.isDebugEnabled())
logger.debug("Encoded: [{}]", Hex.toHexString(msg.getEncoded()));
if (null != messageQueue.peek()) {
@ -110,14 +108,12 @@ public class MessageQueue {
private void sendToWire(Message msg) {
if (logger.isDebugEnabled())
logger.debug("Send: [{}] - [{}]",
msg.getCommand().name(),
Hex.toHexString(msg.getEncoded()));
if (logger.isInfoEnabled())
logger.info("Send: {}", msg.toString());
logger.info("To: \t{} \tSend: \t{}", ctx.channel()
.remoteAddress().toString(), msg.toString());
if (logger.isDebugEnabled())
logger.debug("Encdoded: [{}]", Hex.toHexString(msg.getEncoded()));
int packetLength = StaticMessages.SYNC_TOKEN.length + msg.getEncoded().length;
ByteBuf buffer = ctx.alloc().buffer(packetLength);
buffer.writeBytes(StaticMessages.SYNC_TOKEN);

View File

@ -103,8 +103,8 @@ public class Peer {
@Override
public String toString() {
return "[ip=" + getInetAddress().getHostAddress() +
", port=" + getPort() +
", peerId=" + (getPeerId() == null ? "" : Hex.toHexString(getPeerId()))
" port=" + getPort() +
" peerId=" + (getPeerId() == null ? "" : Hex.toHexString(getPeerId()))
+ "]";
}

View File

@ -42,6 +42,6 @@ public class BlockHashesMessage extends Message {
@Override
public String toString() {
if (!parsed) parse();
return "[command=" + this.getCommand().name() + " hashes=" + Joiner.on("\n").join(hashes) + " ]";
return "[command=" + this.getCommand().name() + " hashes=" + Joiner.on("\n").join(hashes) + "]";
}
}

View File

@ -50,7 +50,7 @@ public class PeerDiscovery {
monitorThread.start();
for (Peer peerData : this.peers) {
executorPool.execute(new WorkerThread(peerData, executorPool));
this.addNewPeerData(peerData);
}
started.set(true);
@ -70,6 +70,5 @@ public class PeerDiscovery {
public boolean isStarted() {
return started.get();
}
}

View File

@ -71,7 +71,6 @@ public class PeerProtocolHandler extends ChannelInboundHandlerAdapter {
msgQueue = new MessageQueue(ctx);
msgQueue.sendMessage(StaticMessages.HELLO_MESSAGE);
sendPing();
// sample for pinging in background
timer.scheduleAtFixedRate(new TimerTask() {
@ -101,7 +100,7 @@ public class PeerProtocolHandler extends ChannelInboundHandlerAdapter {
HelloMessage helloMessage = new HelloMessage(payload);
if (peerListener != null) peerListener.console(helloMessage.toString());
msgQueue.receivedMessage(helloMessage);
handshake = helloMessage;
handshake = helloMessage;
if (listener != null)
listener.onRecvMessage(helloMessage);
break;

View File

@ -41,15 +41,14 @@ public class WorkerThread implements Runnable {
peerData.setOnline(true);
peerData.setHandshake(peerTaster.getHandshake());
logger.info("Peer: " + peerData.toString() + " isOnline: true");
}
catch (Throwable e) {
if (peerData.isOnline() == true)
logger.info("Peer: [{}] went offline, due to: [{}]",
peerData.getInetAddress().getHostAddress(), e);
logger.info("Peer: " + peerData.toString() + " isOnline: false");
peerData.setOnline(false);
} finally {
logger.info("Peer: " + peerData.toString() + " isOnline: " + peerData.isOnline());
peerData.setLastCheckTime(System.currentTimeMillis());
}
}