chiark / gitweb /
cmdlistener: Better debug reporting of executed commands
authorIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 10 Jan 2021 21:23:36 +0000 (21:23 +0000)
committerIan Jackson <ijackson@chiark.greenend.org.uk>
Sun, 10 Jan 2021 23:19:44 +0000 (23:19 +0000)
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
daemon/cmdlistener.rs

index 582f22116b0c2eb84f5deab2d3f5ef331bbc46d9..3c74b3d6ecd0afe366ba62b7cdfc498985d9b909 100644 (file)
@@ -862,17 +862,22 @@ impl CommandStream<'_> {
       use MgmtChannelReadError::*;
       let resp = match self.chan.read::<MgmtCommand>() {
         Ok(cmd) => {
-          let cmd_s = log_enabled!(log::Level::Info)
+          let mut cmd_s = log_enabled!(log::Level::Info)
             .as_some_from(|| format!("{:?}", &cmd))
             .unwrap_or_default();
+          const MAX : usize = 200;
+          if cmd_s.len() > MAX-3 {
+            cmd_s.truncate(MAX-3);
+            cmd_s += "..";
+          }
           match execute(&mut self, cmd) {
             Ok(resp) => {
-              info!("command connection {}: executed {:?}",
+              info!("command connection {}: executed {}",
                     &self.desc, cmd_s);
               resp
             }
             Err(error) => {
-              info!("command connection {}: error {:?} from {:?}",
+              info!("command connection {}: error {:?} from {}",
                     &self.desc, &error, cmd_s);
               MgmtResponse::Error { error }
             }