message: Reduce warnings for dropped responders during shutdown
diff: @@ -187,11 +187,18 @@ where
  pub(crate) async fn respond(mut self, data: T) {
  if let Some(sender) = self.sender.take() {
  if let Err(data) = sender.send(data) {
  + if self.is_shutting_down.is_set() {
  + debug!(
  + ?data,
  + "ignored failure to send response to request down oneshot channel"
  + );
  + } else {
  error!(
  ?data,
  "could not send response to request down oneshot channel"
  );
  }
  + }
  } else {
  error!(
  ?data,
  @@ -216,15 +223,21 @@ impl<T> Display for Responder<T> {
  impl<T> Drop for Responder<T> {
  fn drop(&mut self) {
  if self.sender.is_some() {
  + if self.is_shutting_down.is_set() {
  + debug!(
  + responder=?self,
  + "ignored dropping of responder during shutdown"
  + );
  + } else {
  // This is usually a very serious error, as another component will now be stuck.
  error!(
  responder=?self,
  - "dropped without being responded to --- \
  - this is always a bug and will likely cause another component to be stuck!"
  + "dropped without being responded to outside of shutdown"
  );
  }
  }
  }
  +}
  impl<T> Serialize for Responder<T> {
  fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
  