Max level shown:
12025-12-30T04:27:34.770ZINFOslog-rs (bgp): spawning session for r2 module = router unit = session_runner
22025-12-30T04:27:34.774ZINFOslog-rs (bgp): dispatcher started listen_address = 127.0.0.3:10179 module = neighbor unit = dispatcher
32025-12-30T04:27:34.775ZDEBGslog-rs (bgp): listener bind: 127.0.0.3:10179 listen_address = 127.0.0.3:10179 module = neighbor unit = dispatcher
42025-12-30T04:27:34.776ZINFOslog-rs (bgp): starting peer state machine fsm_state = idle module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 params = SessionInfo { passive_tcp_establishment: false, remote_asn: None, remote_id: None, bind_addr: Some(127.0.0.3:10179), min_ttl: None, md5_auth_key: None, multi_exit_discriminator: None, communities: {}, local_pref: None, enforce_first_as: false, allow_import: NoFiltering, allow_export: NoFiltering, vlan_id: None, connect_retry_time: 1s, keepalive_time: 3s, hold_time: 6s, idle_hold_time: 0ns, delay_open_time: 0ns, resolution: 100ms, connect_retry_jitter: None, idle_hold_jitter: Some((0.75, 1.0)), deterministic_collision_resolution: false } session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
52025-12-30T04:27:34.777ZDEBGslog-rs (bgp): starting connect attempt fsm_state = idle module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: true, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
62025-12-30T04:27:34.777ZDEBGslog-rs (bgp): spawned new connector thread fsm_state = idle module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: true, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
72025-12-30T04:27:34.778ZDEBGslog-rs (bgp): starting connection attempt to 127.0.0.4:10179 direction = outbound module = neighbor peer = 127.0.0.4:10179 timeout = 333 unit = connection_tcp
82025-12-30T04:27:34.778ZINFOslog-rs (bgp): fsm transition idle -> connect fsm_state = idle module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: true, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
92025-12-30T04:27:34.780ZWARNslog-rs (bgp): connection attempt to 127.0.0.4:10179 failed: Connection refused (os error 146) direction = outbound error = Connection refused (os error 146) module = neighbor peer = 127.0.0.4:10179 unit = connection_tcp
102025-12-30T04:27:34.787ZDEBGslog-rs (bgp): received fsm event manual start event = manual start fsm_state = connect module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: true, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
112025-12-30T04:27:34.788ZWARNslog-rs (bgp): unexpected admin fsm event manual start, ignoring event = manual start fsm_state = connect module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: true, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
122025-12-30T04:27:34.792ZDEBGslog-rs (bgp): accepted inbound connection from: 127.0.0.4:56749 listen_address = 127.0.0.3:10179 module = neighbor peer = 127.0.0.4:56749 unit = dispatcher
132025-12-30T04:27:34.793ZDEBGslog-rs (bgp): received fsm event tcp connection acked event = tcp connection acked fsm_state = connect module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: true, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
142025-12-30T04:27:34.794ZINFOslog-rs (bgp): accepted inbound connection from 127.0.0.4:56749 connection = (127.0.0.3:10179, 127.0.0.4:56749) connection_clock = ConnectionClock { conn_id: 4350f0b9, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: false, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: false, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 4350f0b9 direction = inbound fsm_state = connect module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: true, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
152025-12-30T04:27:34.794ZTRACslog-rs (bgp): sending open msg connection = TcpStream { addr: 127.0.0.3:10179, peer: 127.0.0.4:56749, fd: 14 } direction = inbound message = open message_contents = Open [ version: 4, asn: 23456, hold_time: 6, id: 1, parameters: [ Capabilities [ MP-Extensions 1/1, Route Refresh, Four Octet ASN 4200000001, AddPath [ AddPathElement { afi: 1, safi: 1, send_receive: 1 }, ], ]] ] module = neighbor unit = connection_tcp
162025-12-30T04:27:34.795ZTRACslog-rs (bgp): sending open msg with header connection = TcpStream { addr: 127.0.0.3:10179, peer: 127.0.0.4:56749, fd: 14 } message = open message_contents = [ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, 0, 33, 1, 4, 5b, a0, 0, 6, 0, 0, 0, 1, 16, 2, 14, 1, 4, 0, 1, 0, 1, 2, 0, 41, 4, fa, 56, ea, 1, 45, 4, 0, 1, 1, 1] module = neighbor unit = connection_tcp
172025-12-30T04:27:34.795ZINFOslog-rs (bgp): spawning recv loop for 127.0.0.4:56749 connection_id = 4350f0b9 connection_local = 127.0.0.3:10179 connection_peer = 127.0.0.4:56749 direction = inbound module = neighbor unit = connection_tcp
182025-12-30T04:27:34.796ZINFOslog-rs (bgp): fsm transition connect -> open sent fsm_state = connect module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
192025-12-30T04:27:34.796ZTRACslog-rs (bgp): recv open msg from 127.0.0.4:56749 (conn_id: 4350f0b9) connection = TcpStream { addr: 127.0.0.3:10179, peer: 127.0.0.4:56749, fd: 15 } connection_id = 4350f0b9 connection_peer = 127.0.0.4:56749 direction = inbound message = open message_contents = Open [ version: 4, asn: 23456, hold_time: 6, id: 2, parameters: [ Capabilities [ MP-Extensions 1/1, Route Refresh, Four Octet ASN 4200000002, AddPath [ AddPathElement { afi: 1, safi: 1, send_receive: 1 }, ], ]] ] module = neighbor unit = connection_tcp
202025-12-30T04:27:34.797ZTRACslog-rs (bgp): recv keepalive msg from 127.0.0.4:56749 (conn_id: 4350f0b9) connection = TcpStream { addr: 127.0.0.3:10179, peer: 127.0.0.4:56749, fd: 15 } connection_id = 4350f0b9 connection_peer = 127.0.0.4:56749 direction = inbound message = keepalive message_contents = Keepalive module = neighbor unit = connection_tcp
212025-12-30T04:27:34.797ZDEBGslog-rs (bgp): received fsm event connection = (127.0.0.3:10179, 127.0.0.4:56749) connection_clock = ConnectionClock { conn_id: 4350f0b9, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: false, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 4350f0b9 direction = inbound event = message fsm_state = open sent module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
222025-12-30T04:27:34.798ZTRACslog-rs (bgp): sending keepalive connection = (127.0.0.3:10179, 127.0.0.4:56749) connection_clock = ConnectionClock { conn_id: 4350f0b9, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 4350f0b9 direction = inbound fsm_state = open sent message = keepalive module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
232025-12-30T04:27:34.799ZTRACslog-rs (bgp): sending keepalive msg connection = TcpStream { addr: 127.0.0.3:10179, peer: 127.0.0.4:56749, fd: 14 } direction = inbound message = keepalive message_contents = Keepalive module = neighbor unit = connection_tcp
242025-12-30T04:27:34.799ZTRACslog-rs (bgp): sending keepalive msg with header connection = TcpStream { addr: 127.0.0.3:10179, peer: 127.0.0.4:56749, fd: 14 } message = keepalive message_contents = [ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, 0, 13, 4] module = neighbor unit = connection_tcp
252025-12-30T04:27:34.800ZINFOslog-rs (bgp): fsm transition open sent -> open confirm fsm_state = open sent module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
262025-12-30T04:27:34.800ZDEBGslog-rs (bgp): received fsm event connection = (127.0.0.3:10179, 127.0.0.4:56749) connection_clock = ConnectionClock { conn_id: 4350f0b9, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 4350f0b9 direction = inbound event = message fsm_state = open confirm module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
272025-12-30T04:27:34.801ZINFOslog-rs (bgp): fsm transition open confirm -> session setup fsm_state = open confirm module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
282025-12-30T04:27:34.801ZTRACslog-rs (bgp): sending keepalive connection = (127.0.0.3:10179, 127.0.0.4:56749) connection_clock = ConnectionClock { conn_id: 4350f0b9, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 4350f0b9 direction = inbound fsm_state = session setup message = keepalive module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
292025-12-30T04:27:34.802ZTRACslog-rs (bgp): sending keepalive msg connection = TcpStream { addr: 127.0.0.3:10179, peer: 127.0.0.4:56749, fd: 14 } direction = inbound message = keepalive message_contents = Keepalive module = neighbor unit = connection_tcp
302025-12-30T04:27:34.802ZTRACslog-rs (bgp): sending keepalive msg with header connection = TcpStream { addr: 127.0.0.3:10179, peer: 127.0.0.4:56749, fd: 14 } message = keepalive message_contents = [ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, 0, 13, 4] module = neighbor unit = connection_tcp
312025-12-30T04:27:34.803ZINFOslog-rs (bgp): fsm transition session setup -> established fsm_state = session setup module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
322025-12-30T04:27:34.803ZTRACslog-rs (bgp): recv keepalive msg from 127.0.0.4:56749 (conn_id: 4350f0b9) connection = TcpStream { addr: 127.0.0.3:10179, peer: 127.0.0.4:56749, fd: 15 } connection_id = 4350f0b9 connection_peer = 127.0.0.4:56749 direction = inbound message = keepalive message_contents = Keepalive module = neighbor unit = connection_tcp
332025-12-30T04:27:34.804ZDEBGslog-rs (bgp): received fsm event connection = (127.0.0.3:10179, 127.0.0.4:56749) connection_clock = ConnectionClock { conn_id: 4350f0b9, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 4350f0b9 direction = inbound event = message fsm_state = established module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
342025-12-30T04:27:34.805ZTRACslog-rs (bgp): keepalive received (conn_id: 4350f0b9) connection = (127.0.0.3:10179, 127.0.0.4:56749) connection_clock = ConnectionClock { conn_id: 4350f0b9, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 4350f0b9 direction = inbound fsm_state = established message = keepalive module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
352025-12-30T04:27:35.899ZINFOslog-rs (bgp): recv_msg error (peer: 127.0.0.4:56749, conn_id: 4350f0b9): peer closed connection connection = TcpStream { addr: 127.0.0.3:10179, peer: 127.0.0.4:56749, fd: 15 } connection_id = 4350f0b9 connection_peer = 127.0.0.4:56749 direction = inbound error = peer closed connection module = neighbor unit = connection_tcp
362025-12-30T04:27:35.899ZINFOslog-rs (bgp): recv loop closed (peer: 127.0.0.4:56749, conn_id: 4350f0b9) connection = TcpStream { addr: 127.0.0.3:10179, peer: 127.0.0.4:56749, fd: 15 } connection_id = 4350f0b9 connection_peer = 127.0.0.4:56749 direction = inbound module = neighbor unit = connection_tcp
372025-12-30T04:27:37.794ZDEBGslog-rs (bgp): received fsm event connection = (127.0.0.3:10179, 127.0.0.4:56749) connection_clock = ConnectionClock { conn_id: 4350f0b9, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 3.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 4350f0b9 direction = inbound event = keepalive timer expires fsm_state = established module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
382025-12-30T04:27:37.794ZTRACslog-rs (bgp): sending keepalive connection = (127.0.0.3:10179, 127.0.0.4:56749) connection_clock = ConnectionClock { conn_id: 4350f0b9, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 3.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 4350f0b9 direction = inbound fsm_state = established message = keepalive module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
392025-12-30T04:27:37.794ZTRACslog-rs (bgp): sending keepalive msg connection = TcpStream { addr: 127.0.0.3:10179, peer: 127.0.0.4:56749, fd: 14 } direction = inbound message = keepalive message_contents = Keepalive module = neighbor unit = connection_tcp
402025-12-30T04:27:37.795ZTRACslog-rs (bgp): sending keepalive msg with header connection = TcpStream { addr: 127.0.0.3:10179, peer: 127.0.0.4:56749, fd: 14 } message = keepalive message_contents = [ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, 0, 13, 4] module = neighbor unit = connection_tcp
412025-12-30T04:27:40.794ZDEBGslog-rs (bgp): received fsm event connection = (127.0.0.3:10179, 127.0.0.4:56749) connection_clock = ConnectionClock { conn_id: 4350f0b9, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 4350f0b9 direction = inbound event = keepalive timer expires fsm_state = established module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
422025-12-30T04:27:40.795ZTRACslog-rs (bgp): sending keepalive connection = (127.0.0.3:10179, 127.0.0.4:56749) connection_clock = ConnectionClock { conn_id: 4350f0b9, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 4350f0b9 direction = inbound fsm_state = established message = keepalive module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
432025-12-30T04:27:40.795ZTRACslog-rs (bgp): sending keepalive msg connection = TcpStream { addr: 0.0.0.0:0, fd: 14 } direction = inbound message = keepalive message_contents = Keepalive module = neighbor unit = connection_tcp
442025-12-30T04:27:40.796ZTRACslog-rs (bgp): sending keepalive msg with header connection = TcpStream { addr: 0.0.0.0:0, fd: 14 } message = keepalive message_contents = [ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, 0, 13, 4] module = neighbor unit = connection_tcp
452025-12-30T04:27:40.796ZERROslog-rs (bgp): failed to send keepalive: io: Broken pipe (os error 32) connection = (127.0.0.3:10179, 127.0.0.4:56749) connection_clock = ConnectionClock { conn_id: 4350f0b9, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 4350f0b9 direction = inbound error = io: Broken pipe (os error 32) fsm_state = established module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
462025-12-30T04:27:40.796ZDEBGslog-rs (bgp): received fsm event connection = (127.0.0.3:10179, 127.0.0.4:56749) connection_clock = ConnectionClock { conn_id: 4350f0b9, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 4350f0b9 direction = inbound event = hold timer expires fsm_state = established module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
472025-12-30T04:27:40.797ZWARNslog-rs (bgp): hold timer expired, fsm transition to idle connection = (127.0.0.3:10179, 127.0.0.4:56749) connection_clock = ConnectionClock { conn_id: 4350f0b9, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 4350f0b9 direction = inbound fsm_state = established module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
482025-12-30T04:27:40.797ZINFOslog-rs (bgp): sending notification: 4 (HoldTimerExpired) / 0 connection = (127.0.0.3:10179, 127.0.0.4:56749) connection_clock = ConnectionClock { conn_id: 4350f0b9, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 4350f0b9 direction = inbound fsm_state = established message = notification message_contents = Notification [ error_code: 4 (HoldTimerExpired), error_subcode: 0, data: [] ] module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
492025-12-30T04:27:40.797ZTRACslog-rs (bgp): sending notification msg connection = TcpStream { addr: 0.0.0.0:0, fd: 14 } direction = inbound message = notification message_contents = Notification [ error_code: 4 (HoldTimerExpired), error_subcode: 0, data: [] ] module = neighbor unit = connection_tcp
502025-12-30T04:27:40.797ZTRACslog-rs (bgp): sending notification msg with header connection = TcpStream { addr: 0.0.0.0:0, fd: 14 } message = notification message_contents = [ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, 0, 15, 3, 4, 0] module = neighbor unit = connection_tcp
512025-12-30T04:27:40.798ZERROslog-rs (bgp): failed to send notification: io: Broken pipe (os error 32) connection = (127.0.0.3:10179, 127.0.0.4:56749) connection_clock = ConnectionClock { conn_id: 4350f0b9, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 4350f0b9 direction = inbound error = io: Broken pipe (os error 32) fsm_state = established module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
522025-12-30T04:27:40.798ZTRACslog-rs (bgp): dropping connection (127.0.0.3:10179, 127.0.0.4:56749) (conn_id 4350f0b9) connection = (127.0.0.3:10179, 127.0.0.4:56749) connection_id = 4350f0b9 connection_local = 127.0.0.3:10179 connection_peer = 127.0.0.4:56749 direction = inbound dropped = false module = neighbor unit = connection_tcp
532025-12-30T04:27:40.895ZINFOslog-rs (bgp): fsm transition established -> idle fsm_state = established module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
542025-12-30T04:27:40.895ZDEBGslog-rs (bgp): starting connect attempt fsm_state = idle module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: true, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
552025-12-30T04:27:40.895ZDEBGslog-rs (bgp): connector thread completed successfully context = checking previous fsm_state = idle module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: true, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
562025-12-30T04:27:40.895ZDEBGslog-rs (bgp): spawned new connector thread fsm_state = idle module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: true, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
572025-12-30T04:27:40.896ZINFOslog-rs (bgp): fsm transition idle -> connect fsm_state = idle module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: true, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
582025-12-30T04:27:40.896ZDEBGslog-rs (bgp): starting connection attempt to 127.0.0.4:10179 direction = outbound module = neighbor peer = 127.0.0.4:10179 timeout = 333 unit = connection_tcp
592025-12-30T04:27:40.896ZWARNslog-rs (bgp): connection attempt to 127.0.0.4:10179 failed: Connection refused (os error 146) direction = outbound error = Connection refused (os error 146) module = neighbor peer = 127.0.0.4:10179 unit = connection_tcp
602025-12-30T04:27:41.787ZDEBGslog-rs (bgp): accepted inbound connection from: 127.0.0.4:62330 listen_address = 127.0.0.3:10179 module = neighbor peer = 127.0.0.4:62330 unit = dispatcher
612025-12-30T04:27:41.787ZDEBGslog-rs (bgp): received fsm event tcp connection acked event = tcp connection acked fsm_state = connect module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: true, remaining: 0.100s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
622025-12-30T04:27:41.788ZINFOslog-rs (bgp): accepted inbound connection from 127.0.0.4:62330 connection = (127.0.0.3:10179, 127.0.0.4:62330) connection_clock = ConnectionClock { conn_id: 8041a8e6, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: false, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: false, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 8041a8e6 direction = inbound fsm_state = connect module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: true, remaining: 0.100s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
632025-12-30T04:27:41.789ZTRACslog-rs (bgp): sending open msg connection = TcpStream { addr: 127.0.0.3:10179, peer: 127.0.0.4:62330, fd: 13 } direction = inbound message = open message_contents = Open [ version: 4, asn: 23456, hold_time: 6, id: 1, parameters: [ Capabilities [ MP-Extensions 1/1, Route Refresh, Four Octet ASN 4200000001, AddPath [ AddPathElement { afi: 1, safi: 1, send_receive: 1 }, ], ]] ] module = neighbor unit = connection_tcp
642025-12-30T04:27:41.789ZTRACslog-rs (bgp): sending open msg with header connection = TcpStream { addr: 127.0.0.3:10179, peer: 127.0.0.4:62330, fd: 13 } message = open message_contents = [ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, 0, 33, 1, 4, 5b, a0, 0, 6, 0, 0, 0, 1, 16, 2, 14, 1, 4, 0, 1, 0, 1, 2, 0, 41, 4, fa, 56, ea, 1, 45, 4, 0, 1, 1, 1] module = neighbor unit = connection_tcp
652025-12-30T04:27:41.790ZINFOslog-rs (bgp): spawning recv loop for 127.0.0.4:62330 connection_id = 8041a8e6 connection_local = 127.0.0.3:10179 connection_peer = 127.0.0.4:62330 direction = inbound module = neighbor unit = connection_tcp
662025-12-30T04:27:41.791ZINFOslog-rs (bgp): fsm transition connect -> open sent fsm_state = connect module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
672025-12-30T04:27:41.791ZTRACslog-rs (bgp): recv open msg from 127.0.0.4:62330 (conn_id: 8041a8e6) connection = TcpStream { addr: 127.0.0.3:10179, peer: 127.0.0.4:62330, fd: 15 } connection_id = 8041a8e6 connection_peer = 127.0.0.4:62330 direction = inbound message = open message_contents = Open [ version: 4, asn: 23456, hold_time: 6, id: 2, parameters: [ Capabilities [ MP-Extensions 1/1, Route Refresh, Four Octet ASN 4200000002, AddPath [ AddPathElement { afi: 1, safi: 1, send_receive: 1 }, ], ]] ] module = neighbor unit = connection_tcp
682025-12-30T04:27:41.792ZTRACslog-rs (bgp): recv keepalive msg from 127.0.0.4:62330 (conn_id: 8041a8e6) connection = TcpStream { addr: 127.0.0.3:10179, peer: 127.0.0.4:62330, fd: 15 } connection_id = 8041a8e6 connection_peer = 127.0.0.4:62330 direction = inbound message = keepalive message_contents = Keepalive module = neighbor unit = connection_tcp
692025-12-30T04:27:41.793ZDEBGslog-rs (bgp): received fsm event connection = (127.0.0.3:10179, 127.0.0.4:62330) connection_clock = ConnectionClock { conn_id: 8041a8e6, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: false, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 8041a8e6 direction = inbound event = message fsm_state = open sent module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
702025-12-30T04:27:41.794ZTRACslog-rs (bgp): sending keepalive connection = (127.0.0.3:10179, 127.0.0.4:62330) connection_clock = ConnectionClock { conn_id: 8041a8e6, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 8041a8e6 direction = inbound fsm_state = open sent message = keepalive module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
712025-12-30T04:27:41.795ZTRACslog-rs (bgp): sending keepalive msg connection = TcpStream { addr: 127.0.0.3:10179, peer: 127.0.0.4:62330, fd: 13 } direction = inbound message = keepalive message_contents = Keepalive module = neighbor unit = connection_tcp
722025-12-30T04:27:41.796ZTRACslog-rs (bgp): sending keepalive msg with header connection = TcpStream { addr: 127.0.0.3:10179, peer: 127.0.0.4:62330, fd: 13 } message = keepalive message_contents = [ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, 0, 13, 4] module = neighbor unit = connection_tcp
732025-12-30T04:27:41.796ZINFOslog-rs (bgp): fsm transition open sent -> open confirm fsm_state = open sent module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
742025-12-30T04:27:41.797ZDEBGslog-rs (bgp): received fsm event connection = (127.0.0.3:10179, 127.0.0.4:62330) connection_clock = ConnectionClock { conn_id: 8041a8e6, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 8041a8e6 direction = inbound event = message fsm_state = open confirm module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
752025-12-30T04:27:41.798ZINFOslog-rs (bgp): fsm transition open confirm -> session setup fsm_state = open confirm module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
762025-12-30T04:27:41.798ZTRACslog-rs (bgp): sending keepalive connection = (127.0.0.3:10179, 127.0.0.4:62330) connection_clock = ConnectionClock { conn_id: 8041a8e6, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 8041a8e6 direction = inbound fsm_state = session setup message = keepalive module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
772025-12-30T04:27:41.799ZTRACslog-rs (bgp): sending keepalive msg connection = TcpStream { addr: 127.0.0.3:10179, peer: 127.0.0.4:62330, fd: 13 } direction = inbound message = keepalive message_contents = Keepalive module = neighbor unit = connection_tcp
782025-12-30T04:27:41.800ZTRACslog-rs (bgp): sending keepalive msg with header connection = TcpStream { addr: 127.0.0.3:10179, peer: 127.0.0.4:62330, fd: 13 } message = keepalive message_contents = [ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, ff, 0, 13, 4] module = neighbor unit = connection_tcp
792025-12-30T04:27:41.800ZINFOslog-rs (bgp): fsm transition session setup -> established fsm_state = session setup module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
802025-12-30T04:27:41.801ZTRACslog-rs (bgp): recv keepalive msg from 127.0.0.4:62330 (conn_id: 8041a8e6) connection = TcpStream { addr: 127.0.0.3:10179, peer: 127.0.0.4:62330, fd: 15 } connection_id = 8041a8e6 connection_peer = 127.0.0.4:62330 direction = inbound message = keepalive message_contents = Keepalive module = neighbor unit = connection_tcp
812025-12-30T04:27:41.802ZDEBGslog-rs (bgp): received fsm event connection = (127.0.0.3:10179, 127.0.0.4:62330) connection_clock = ConnectionClock { conn_id: 8041a8e6, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 8041a8e6 direction = inbound event = message fsm_state = established module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
822025-12-30T04:27:41.802ZTRACslog-rs (bgp): keepalive received (conn_id: 8041a8e6) connection = (127.0.0.3:10179, 127.0.0.4:62330) connection_clock = ConnectionClock { conn_id: 8041a8e6, resolution: 0.100s, keepalive: Timer { interval: 3.000s, enabled: true, remaining: 3.000s }, hold: Timer { interval: 6.000s, enabled: true, remaining: 6.000s }, delay_open: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } connection_id = 8041a8e6 direction = inbound fsm_state = established message = keepalive module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
832025-12-30T04:27:42.786ZINFOslog-rs (bgp): router (asn: 4200000001, id: 1) received shutdown request, stopping sessions module = router unit = session_runner
842025-12-30T04:27:42.787ZINFOslog-rs (bgp): session runner (peer 127.0.0.4) received shutdown request, setting shutdown flag fsm_state = established module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
852025-12-30T04:27:42.787ZINFOslog-rs (bgp): dispatcher received shutdown request, setting shutdown flag listen_address = 127.0.0.3:10179 module = neighbor unit = dispatcher
862025-12-30T04:27:42.789ZINFOslog-rs (bgp): session runner (peer: 127.0.0.4) caught shutdown flag fsm_state = established module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
872025-12-30T04:27:42.790ZINFOslog-rs (bgp): session runner (peer 127.0.0.4): shutdown start fsm_state = established module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
882025-12-30T04:27:42.790ZDEBGslog-rs (bgp): joining connector thread during shutdown fsm_state = established module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
892025-12-30T04:27:42.791ZDEBGslog-rs (bgp): connector thread completed successfully context = shutdown fsm_state = established module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
902025-12-30T04:27:42.792ZINFOslog-rs (bgp): fsm transition established -> idle fsm_state = established module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
912025-12-30T04:27:42.792ZINFOslog-rs (bgp): session runner (peer 127.0.0.4): shutdown complete fsm_state = idle module = neighbor neighbor = 127.0.0.4 neighbor_name = r2 session_clock = SessionClock { resolution: 0.100s, connect_retry: Timer { interval: 1.000s, enabled: false, remaining: 1.000s }, idle_hold: Timer { interval: 0.000s, enabled: false, remaining: 0.000s } } unit = session_runner
922025-12-30T04:27:42.793ZTRACslog-rs (bgp): dropping connection (127.0.0.3:10179, 127.0.0.4:62330) (conn_id 8041a8e6) connection = (127.0.0.3:10179, 127.0.0.4:62330) connection_id = 8041a8e6 connection_local = 127.0.0.3:10179 connection_peer = 127.0.0.4:62330 direction = inbound dropped = false module = neighbor unit = connection_tcp
932025-12-30T04:27:42.794ZINFOslog-rs (bgp): recv_msg error (peer: 127.0.0.4:62330, conn_id: 8041a8e6): shutting down connection = TcpStream { addr: 127.0.0.3:10179, peer: 127.0.0.4:62330, fd: 15 } connection_id = 8041a8e6 connection_peer = 127.0.0.4:62330 direction = inbound error = shutting down module = neighbor unit = connection_tcp
942025-12-30T04:27:42.794ZINFOslog-rs (bgp): recv loop closed (peer: 127.0.0.4:62330, conn_id: 8041a8e6) connection = TcpStream { addr: 127.0.0.3:10179, peer: 127.0.0.4:62330, fd: 15 } connection_id = 8041a8e6 connection_peer = 127.0.0.4:62330 direction = inbound module = neighbor unit = connection_tcp
952025-12-30T04:27:42.795ZINFOslog-rs (bgp): dispatcher caught shutdown flag from accept loop listen_address = 127.0.0.3:10179 module = neighbor unit = dispatcher
96 {"msg":"dispatcher shutdown complete","v":0,"name":"slog-rs","level":30,"time":"2025-12-30T04:27:42.795642022Z","hostname":"w-01KDPQHYE0RWPHDBSE27VXY7ZJ","pid":6153,"listen_address":"127.0.0.3:10179","unit":