Skip to content

Commit 8bb4a6f

Browse files
committed
ETCM-168: More logging around enrollment.
1 parent 31d7b63 commit 8bb4a6f

File tree

1 file changed

+17
-13
lines changed

1 file changed

+17
-13
lines changed

scalanet/discovery/src/io/iohk/scalanet/discovery/ethereum/v4/DiscoveryService.scala

Lines changed: 17 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -798,7 +798,8 @@ object DiscoveryService {
798798

799799
/** Look up a random node ID to discover new peers. */
800800
protected[v4] def lookupRandom(): Task[Unit] =
801-
lookup(target = sigalg.newKeyPair._1).void
801+
Task(logger.info("Looking up a random target...")) >>
802+
lookup(target = sigalg.newKeyPair._1).void
802803

803804
/** Look up self with the bootstrap nodes. First we have to fetch their ENR
804805
* records to verify they are reachable and so that they can participate
@@ -812,23 +813,26 @@ object DiscoveryService {
812813
if (config.knownPeers.isEmpty)
813814
Task.pure(false)
814815
else {
815-
val tryEnroll = for {
816+
for {
816817
nodeId <- stateRef.get.map(_.node.id)
817818
bootstrapPeers = config.knownPeers.toList.map(toPeer).filterNot(_.id == nodeId)
819+
_ <- Task(logger.info(s"Enrolling with ${bootstrapPeers.size} bootstrap nodes."))
818820
maybeBootstrapEnrs <- Task.parTraverseN(config.kademliaAlpha)(bootstrapPeers)(fetchEnr(_, delay = true))
819-
result <- if (maybeBootstrapEnrs.exists(_.isDefined)) {
820-
lookup(nodeId).as(true)
821+
enrolled = maybeBootstrapEnrs.count(_.isDefined)
822+
succeeded = enrolled > 0
823+
_ <- if (succeeded) {
824+
for {
825+
_ <- Task(
826+
logger.info(s"Successfully enrolled with $enrolled bootstrap nodes. Performing initial lookup...")
827+
)
828+
_ <- lookup(nodeId)
829+
nodeCount <- stateRef.get.map(_.nodeMap.size)
830+
_ <- Task(logger.info(s"Discovered $nodeCount nodes by the end of the lookup."))
831+
} yield ()
821832
} else {
822-
Task.pure(false)
823-
}
824-
} yield result
825-
826-
tryEnroll.flatTap {
827-
case true =>
828-
Task(logger.info("Successfully enrolled with some of the bootstrap nodes."))
829-
case false =>
830833
Task(logger.warn("Failed to enroll with any of the the bootstrap nodes."))
831-
}
834+
}
835+
} yield succeeded
832836
}
833837
}
834838
}

0 commit comments

Comments
 (0)