in core/src/layers/logging.rs [1047:1090]
fn poll_read(&mut self, cx: &mut Context<'_>, buf: &mut [u8]) -> Poll<Result<usize>> {
match self.inner.poll_read(cx, buf) {
Poll::Ready(res) => match res {
Ok(n) => {
self.read += n as u64;
trace!(
target: LOGGING_TARGET,
"service={} operation={} path={} read={} -> data read {}B ",
self.scheme,
ReadOperation::Read,
self.path,
self.read,
n
);
Poll::Ready(Ok(n))
}
Err(err) => {
if let Some(lvl) = self.failure_level {
log!(
target: LOGGING_TARGET,
lvl,
"service={} operation={} path={} read={} -> data read failed: {err:?}",
self.scheme,
ReadOperation::Read,
self.path,
self.read,
)
}
Poll::Ready(Err(err))
}
},
Poll::Pending => {
trace!(
target: LOGGING_TARGET,
"service={} operation={} path={} read={} -> data read pending",
self.scheme,
ReadOperation::Read,
self.path,
self.read
);
Poll::Pending
}
}
}