in src/flowgger/splitter/line_splitter.rs [10:41]
fn run(
&self,
buf_reader: BufReader<T>,
tx: SyncSender<Vec<u8>>,
decoder: Box<dyn Decoder>,
encoder: Box<dyn Encoder>,
) {
for line in buf_reader.lines() {
let line = match line {
Ok(line) => line,
Err(e) => match e.kind() {
ErrorKind::Interrupted => continue,
ErrorKind::InvalidInput | ErrorKind::InvalidData => {
let _ = writeln!(stderr(), "Invalid UTF-8 input");
continue;
}
ErrorKind::WouldBlock => {
let _ = writeln!(
stderr(),
"Client hasn't sent any data for a while - Closing \
idle connection"
);
return;
}
_ => return,
},
};
if let Err(e) = handle_line(&line, &tx, &decoder, &encoder) {
let _ = writeln!(stderr(), "{}: [{}]", e, line.trim());
}
}
}