Skip to content

Commit e8367ff

Browse files
committed
add logging
1 parent de22ff3 commit e8367ff

File tree

6 files changed

+27
-3
lines changed

6 files changed

+27
-3
lines changed

src/main/scala/io/iohk/ethereum/blockchain/sync/FastSync.scala

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,14 +65,21 @@ trait FastSync {
6565
tryStartFastSync(newReceived)
6666
} else context become waitingForBlockHeaders(newWaitingFor, newReceived, timeout)
6767

68-
case PeerActor.MessageReceived(BlockHeaders(_)) =>
68+
case PeerActor.MessageReceived(BlockHeaders(blockHeaders)) =>
6969
sender() ! PeerActor.Unsubscribe
70+
log.info("Peer ({}) did not respond with 1 header but with {}, blacklisting for {}",
71+
sender().path.name,
72+
blockHeaders.size,
73+
blacklistDuration)
7074
blacklist(sender(), blacklistDuration)
7175
context become waitingForBlockHeaders(waitingFor - sender(), received, timeout)
7276

7377
case BlockHeadersTimeout =>
7478
waitingFor.foreach { peer =>
7579
peer ! PeerActor.Unsubscribe
80+
log.info("Peer ({}) did not respond within required time with block header, blacklisting for {}",
81+
peer.path.name,
82+
blacklistDuration)
7683
blacklist(peer, blacklistDuration)
7784
}
7885
tryStartFastSync(received)

src/main/scala/io/iohk/ethereum/blockchain/sync/FastSyncNodesRequestHandler.scala

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,12 @@ class FastSyncNodesRequestHandler(
1919
import FastSyncNodesRequestHandler._
2020

2121
override val requestMsg = GetNodeData(requestedHashes.map(_.v))
22-
override val responseMsgCode = NodeData.code
22+
override val responseMsgCode: Int = NodeData.code
2323

2424
override def handleResponseMsg(nodeData: NodeData): Unit = {
2525
if (nodeData.values.isEmpty) {
26+
log.info(s"Blacklisting peer (${peer.path.name}), " +
27+
s"got empty mpt node response for known hashes: ${requestedHashes.map(h => Hex.toHexString(h.v.toArray[Byte]))}")
2628
syncController ! BlacklistSupport.BlacklistPeer(peer)
2729
}
2830

@@ -59,6 +61,8 @@ class FastSyncNodesRequestHandler(
5961
}
6062

6163
override def handleTimeout(): Unit = {
64+
log.info(s"Blacklisting peer (${peer.path.name}), " +
65+
s"time out on mpt node response for known hashes: ${requestedHashes.map(h => Hex.toHexString(h.v.toArray[Byte]))}")
6266
syncController ! BlacklistSupport.BlacklistPeer(peer)
6367
syncController ! FastSync.EnqueueNodes(requestedHashes)
6468
cleanupAndStop()

src/main/scala/io/iohk/ethereum/blockchain/sync/FastSyncReceiptsRequestHandler.scala

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import akka.util.ByteString
55
import io.iohk.ethereum.db.storage.AppStateStorage
66
import io.iohk.ethereum.domain.Blockchain
77
import io.iohk.ethereum.network.p2p.messages.PV63.{GetReceipts, Receipts}
8+
import org.spongycastle.util.encoders.Hex
89

910
class FastSyncReceiptsRequestHandler(
1011
peer: ActorRef,
@@ -14,7 +15,7 @@ class FastSyncReceiptsRequestHandler(
1415
extends SyncRequestHandler[GetReceipts, Receipts](peer) {
1516

1617
override val requestMsg = GetReceipts(requestedHashes)
17-
override val responseMsgCode = Receipts.code
18+
override val responseMsgCode: Int = Receipts.code
1819

1920
override def handleResponseMsg(receipts: Receipts): Unit = {
2021
(requestedHashes zip receipts.receiptsForBlocks).foreach { case (hash, receiptsForBlock) =>
@@ -25,6 +26,8 @@ class FastSyncReceiptsRequestHandler(
2526
updateBestBlockIfNeeded(receivedHashes)
2627

2728
if (receipts.receiptsForBlocks.isEmpty) {
29+
log.info(s"Blacklisting peer (${peer.path.name}), " +
30+
s"got empty receipts for known hashes: ${requestedHashes.map(h => Hex.toHexString(h.toArray[Byte]))}")
2831
syncController ! BlacklistSupport.BlacklistPeer(peer)
2932
}
3033

@@ -54,6 +57,8 @@ class FastSyncReceiptsRequestHandler(
5457
}
5558

5659
override def handleTimeout(): Unit = {
60+
log.info(s"Blacklisting peer (${peer.path.name}), " +
61+
s"time out on receipts response for known hashes: ${requestedHashes.map(h => Hex.toHexString(h.toArray[Byte]))}")
5762
syncController ! BlacklistSupport.BlacklistPeer(peer)
5863
syncController ! FastSync.EnqueueReceipts(requestedHashes)
5964
cleanupAndStop()

src/main/scala/io/iohk/ethereum/blockchain/sync/RegularSync.scala

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -162,6 +162,7 @@ trait RegularSync {
162162
}
163163

164164
private def resumeWithDifferentPeer(currentPeer: ActorRef) = {
165+
log.info(s"Blacklisting peer (${currentPeer.path.name}), because of error in response")
165166
self ! BlacklistPeer(currentPeer)
166167
headersQueue = Seq.empty
167168
context.self ! ResumeRegularSync

src/main/scala/io/iohk/ethereum/blockchain/sync/SyncBlockBodiesRequestHandler.scala

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import akka.util.ByteString
55
import io.iohk.ethereum.blockchain.sync.SyncController.BlockBodiesReceived
66
import io.iohk.ethereum.db.storage.AppStateStorage
77
import io.iohk.ethereum.network.p2p.messages.PV62.{BlockBodies, GetBlockBodies}
8+
import org.spongycastle.util.encoders.Hex
89

910
class SyncBlockBodiesRequestHandler(
1011
peer: ActorRef,
@@ -17,6 +18,8 @@ class SyncBlockBodiesRequestHandler(
1718

1819
override def handleResponseMsg(blockBodies: BlockBodies): Unit = {
1920
if (blockBodies.bodies.isEmpty) {
21+
log.info(s"Blacklisting peer (${peer.path.name}), " +
22+
s"got empty block bodies response for known hashes: ${requestedHashes.map(h => Hex.toHexString(h.toArray[Byte]))}")
2023
syncController ! BlacklistSupport.BlacklistPeer(peer)
2124
} else {
2225
syncController ! BlockBodiesReceived(peer, requestedHashes, blockBodies.bodies)
@@ -27,6 +30,8 @@ class SyncBlockBodiesRequestHandler(
2730
}
2831

2932
override def handleTimeout(): Unit = {
33+
log.info(s"Blacklisting peer (${peer.path.name}), " +
34+
s"time out on block bodies response for known hashes: ${requestedHashes.map(h => Hex.toHexString(h.toArray[Byte]))}")
3035
syncController ! BlacklistSupport.BlacklistPeer(peer)
3136
syncController ! FastSync.EnqueueBlockBodies(requestedHashes)
3237
cleanupAndStop()

src/main/scala/io/iohk/ethereum/blockchain/sync/SyncBlockHeadersRequestHandler.scala

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,13 +32,15 @@ class SyncBlockHeadersRequestHandler(
3232
log.info("Received {} block headers in {} ms", headers.size, timeTakenSoFar())
3333
}
3434
} else {
35+
log.info(s"Blacklisting peer (${peer.path.name}), got error in block headers response for request: $requestMsg")
3536
syncController ! BlacklistSupport.BlacklistPeer(peer)
3637
}
3738

3839
cleanupAndStop()
3940
}
4041

4142
override def handleTimeout(): Unit = {
43+
log.info(s"Blacklisting peer (${peer.path.name}), got time out waiting for block headers response for request: $requestMsg")
4244
syncController ! BlacklistSupport.BlacklistPeer(peer)
4345
cleanupAndStop()
4446
}

0 commit comments

Comments
 (0)