Skip to content

Commit f2dbd4a

Browse files
committed
added: logs
1 parent 18524b0 commit f2dbd4a

File tree

5 files changed

+77
-6
lines changed

5 files changed

+77
-6
lines changed

interop/arch.py

Lines changed: 35 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,18 +15,25 @@
1515
from libp2p.crypto.rsa import (
1616
create_new_key_pair,
1717
)
18+
from libp2p.crypto.x25519 import create_new_key_pair as create_new_x25519_key_pair
1819
from libp2p.custom_types import (
1920
TProtocol,
2021
)
2122
from libp2p.security.insecure.transport import (
2223
PLAINTEXT_PROTOCOL_ID,
2324
InsecureTransport,
2425
)
26+
from libp2p.security.noise.transport import PROTOCOL_ID as NOISE_PROTOCOL_ID
27+
from libp2p.security.noise.transport import Transport as NoiseTransport
2528
import libp2p.security.secio.transport as secio
2629
from libp2p.stream_muxer.mplex.mplex import (
2730
MPLEX_PROTOCOL_ID,
2831
Mplex,
2932
)
33+
from libp2p.stream_muxer.yamux.yamux import (
34+
Yamux,
35+
)
36+
from libp2p.stream_muxer.yamux.yamux import PROTOCOL_ID as YAMUX_PROTOCOL_ID
3037

3138

3239
def generate_new_rsa_identity() -> KeyPair:
@@ -39,14 +46,41 @@ async def build_host(transport: str, ip: str, port: str, sec_protocol: str, muxe
3946
key_pair = create_new_key_pair()
4047
host = new_host(
4148
key_pair,
42-
{MPLEX_PROTOCOL_ID: Mplex},
49+
{TProtocol(MPLEX_PROTOCOL_ID): Mplex},
50+
{
51+
TProtocol(PLAINTEXT_PROTOCOL_ID): InsecureTransport(key_pair),
52+
TProtocol(secio.ID): secio.Transport(key_pair),
53+
},
54+
)
55+
muladdr = multiaddr.Multiaddr(f"/ip4/{ip}/tcp/{port}")
56+
return (host, muladdr)
57+
case ("insecure", "yamux"):
58+
key_pair = create_new_key_pair()
59+
host = new_host(
60+
key_pair,
61+
{TProtocol(YAMUX_PROTOCOL_ID): Yamux},
4362
{
4463
TProtocol(PLAINTEXT_PROTOCOL_ID): InsecureTransport(key_pair),
4564
TProtocol(secio.ID): secio.Transport(key_pair),
4665
},
4766
)
4867
muladdr = multiaddr.Multiaddr(f"/ip4/{ip}/tcp/{port}")
4968
return (host, muladdr)
69+
case ("noise", "yamux"):
70+
key_pair = create_new_key_pair()
71+
noise_key_pair = create_new_x25519_key_pair()
72+
73+
host = new_host(
74+
key_pair,
75+
{TProtocol(YAMUX_PROTOCOL_ID): Yamux},
76+
{
77+
NOISE_PROTOCOL_ID: NoiseTransport(
78+
key_pair, noise_privkey=noise_key_pair.private_key
79+
)
80+
},
81+
)
82+
muladdr = multiaddr.Multiaddr(f"/ip4/{ip}/tcp/{port}")
83+
return (host, muladdr)
5084
case _:
5185
raise ValueError("Protocols not supported")
5286

interop/lib.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,10 +89,18 @@ async def run_test(
8989

9090
handshake_start = time.perf_counter()
9191

92+
logger.info("GETTING READY FOR CONNECTION")
9293
await host.connect(info)
94+
logger.info("HOST CONNECTED")
95+
96+
# TILL HERE EVERYTHING IS FINE
97+
9398
stream = await host.new_stream(info.peer_id, [PING_PROTOCOL_ID])
99+
logger.info("CREATED NEW STREAM")
94100

101+
# DOES NOT MORE FORWARD FROM THIS
95102
logger.info("Remote conection established")
103+
96104
nursery.start_soon(send_ping, stream)
97105

98106
handshake_plus_ping = (time.perf_counter() - handshake_start) * 1000.0

libp2p/host/basic_host.py

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
AbstractAsyncContextManager,
77
asynccontextmanager,
88
)
9-
import logging
109
from typing import (
1110
TYPE_CHECKING,
1211
Optional,
@@ -69,7 +68,10 @@
6968
# telling it to listen on the given listen addresses.
7069

7170

72-
logger = logging.getLogger("libp2p.network.basic_host")
71+
# logger = logging.getLogger("libp2p.network.basic_host")
72+
from loguru import (
73+
logger,
74+
)
7375

7476

7577
class BasicHost(IHost):
@@ -186,12 +188,15 @@ async def new_stream(
186188
:return: stream: new stream created
187189
"""
188190
net_stream = await self._network.new_stream(peer_id)
189-
191+
logger.info("INETSTREAM CHECKING IN")
192+
logger.info(protocol_ids)
190193
# Perform protocol muxing to determine protocol to use
191194
try:
195+
logger.debug("PROTOCOLS TRYING TO GET SENT")
192196
selected_protocol = await self.multiselect_client.select_one_of(
193197
list(protocol_ids), MultiselectCommunicator(net_stream)
194198
)
199+
logger.info("PROTOCOLS GOT SENT")
195200
except MultiselectClientError as error:
196201
logger.debug("fail to open a stream to peer %s, error=%s", peer_id, error)
197202
await net_stream.reset()

libp2p/network/swarm.py

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
import logging
22

3+
# logger = logging.getLogger("libp2p.network.swarm")
4+
from loguru import (
5+
logger,
6+
)
37
from multiaddr import (
48
Multiaddr,
59
)
@@ -52,8 +56,6 @@
5256
SwarmException,
5357
)
5458

55-
logger = logging.getLogger("libp2p.network.swarm")
56-
5759

5860
def create_default_stream_handler(network: INetworkService) -> StreamHandlerFn:
5961
async def stream_handler(stream: INetStream) -> None:
@@ -127,6 +129,7 @@ async def dial_peer(self, peer_id: ID) -> INetConn:
127129
:return: muxed connection
128130
"""
129131
if peer_id in self.connections:
132+
logger.info("WE ARE RETURNING, PEER ALREADAY EXISTS")
130133
# If muxed connection already exists for peer_id,
131134
# set muxed connection equal to existing muxed connection
132135
return self.connections[peer_id]
@@ -147,6 +150,7 @@ async def dial_peer(self, peer_id: ID) -> INetConn:
147150
# Try all known addresses
148151
for multiaddr in addrs:
149152
try:
153+
logger.info("HANDSHAKE GOING TO HAPPEN")
150154
return await self.dial_addr(multiaddr, peer_id)
151155
except SwarmException as e:
152156
exceptions.append(e)
@@ -221,8 +225,11 @@ async def new_stream(self, peer_id: ID) -> INetStream:
221225
logger.debug("attempting to open a stream to peer %s", peer_id)
222226

223227
swarm_conn = await self.dial_peer(peer_id)
228+
logger.info("INETCONN CREATED")
224229

225230
net_stream = await swarm_conn.new_stream()
231+
logger.info("INETSTREAM CREATED")
232+
226233
logger.debug("successfully opened a stream to peer %s", peer_id)
227234
return net_stream
228235

libp2p/protocol_muxer/multiselect_client.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@
22
Sequence,
33
)
44

5+
from loguru import (
6+
logger,
7+
)
8+
59
from libp2p.abc import (
610
IMultiselectClient,
711
IMultiselectCommunicator,
@@ -36,11 +40,15 @@ async def handshake(self, communicator: IMultiselectCommunicator) -> None:
3640
try:
3741
await communicator.write(MULTISELECT_PROTOCOL_ID)
3842
except MultiselectCommunicatorError as error:
43+
logger.error("WROTE FAIL")
3944
raise MultiselectClientError() from error
4045

46+
logger.info(f"WROTE SUC, {MULTISELECT_PROTOCOL_ID}")
4147
try:
4248
handshake_contents = await communicator.read()
49+
logger.info(f"READ SUC, {handshake_contents}")
4350
except MultiselectCommunicatorError as error:
51+
logger.error(f"READ FAIL, {error}")
4452
raise MultiselectClientError() from error
4553

4654
if not is_valid_handshake(handshake_contents):
@@ -59,9 +67,12 @@ async def select_one_of(
5967
:return: selected protocol
6068
:raise MultiselectClientError: raised when protocol negotiation failed
6169
"""
70+
logger.info("TRYING TO GET THE HANDSHAKE HAPPENED")
6271
await self.handshake(communicator)
72+
logger.info("HANDSHAKE HAPPENED")
6373

6474
for protocol in protocols:
75+
logger.info(protocol)
6576
try:
6677
selected_protocol = await self.try_select(communicator, protocol)
6778
return selected_protocol
@@ -113,11 +124,17 @@ async def try_select(
113124
"""
114125
try:
115126
await communicator.write(protocol)
127+
from loguru import (
128+
logger,
129+
)
130+
131+
logger.info(protocol)
116132
except MultiselectCommunicatorError as error:
117133
raise MultiselectClientError() from error
118134

119135
try:
120136
response = await communicator.read()
137+
logger.info("Response: ", response)
121138
except MultiselectCommunicatorError as error:
122139
raise MultiselectClientError() from error
123140

0 commit comments

Comments
 (0)