From 0c275bc2de5ebc6b123f619728a68dbd453dae29 Mon Sep 17 00:00:00 2001 From: Ferdinand Schober Date: Fri, 15 Dec 2023 08:17:49 +0100 Subject: [PATCH] remove duplicate log messages when ignoring events --- src/server.rs | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/server.rs b/src/server.rs index f37630f..8d89b4d 100644 --- a/src/server.rs +++ b/src/server.rs @@ -50,6 +50,7 @@ pub struct Server { socket: UdpSocket, frontend_rx: Receiver, frontend_tx: Sender, + last_ignored: Option, } impl Server { @@ -79,6 +80,7 @@ impl Server { state: State::Receiving, frontend_rx, frontend_tx, + last_ignored: None, }; // add clients from config @@ -286,11 +288,19 @@ impl Server { let handle = match self.client_manager.get_client(addr) { Some(a) => a, None => { - log::warn!("ignoring event from client {addr:?}"); + if self.last_ignored.is_none() + || self.last_ignored.is_some() && self.last_ignored.unwrap() != addr + { + log::warn!("ignoring events from client {addr}"); + self.last_ignored = Some(addr); + } return; } }; + // next event can be logged as ignored again + self.last_ignored = None; + log::trace!("{:20} <-<-<-<------ {addr} ({handle})", event.to_string()); let state = match self.client_manager.get_mut(handle) { Some(s) => s,