diff --git a/src/logging.ml b/src/logging.ml
index 559260dad02f0314e6c04e53dde23a69200712c5..f15df62bc1de0e489d51a0b76536c93762f5895f 100644
--- a/src/logging.ml
+++ b/src/logging.ml
@@ -42,13 +42,14 @@ let reporter =
     in
     msgf @@ fun ?header ?tags:_ fmt ->
     let ppf = if level = Logs.App then Fmt.stdout else Fmt.stderr in
-    let print_src fmt src =
-      if not (Logs.Src.equal Logs.default src)
-      then Fmt.pf fmt "@[{%s}@] " (Logs.Src.name src)
+    let pp_src fmt src =
+      if Logs.Src.equal Logs.default src
+      then (if level <> Logs.App then Fmt.pf fmt " ")
+      else Fmt.pf fmt "@[{%s}@] " (Logs.Src.name src)
     in
     Format.kfprintf k ppf
       ("%a%a@[" ^^ fmt ^^ "@]@.")
-      Logs.pp_header (level, header) print_src src
+      Logs_fmt.pp_header (level, header) pp_src src
   in
   { Logs.report }