15954: Fix up logging prefixes.
authorTom Clegg <tom@tomclegg.ca>
Wed, 19 Feb 2020 15:24:48 +0000 (10:24 -0500)
committerTom Clegg <tom@tomclegg.ca>
Thu, 20 Feb 2020 19:25:03 +0000 (14:25 -0500)
Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom@tomclegg.ca>

lib/boot/log.go

index 062a854a088e8aa021b2da73a1c8db89dfc2e448..eaaca85672d777a7b78a075b0c2485f9211a41c4 100644 (file)
@@ -19,11 +19,13 @@ func (lp *logPrefixer) Write(p []byte) (int, error) {
        if len(p) == 0 {
                return 0, nil
        }
+       var out []byte
        if !lp.did {
-               lp.Writer.Write(lp.Prefix)
-               lp.did = p[len(p)-1] != '\n'
+               out = append(out, lp.Prefix...)
        }
-       out := append(bytes.Replace(p[:len(p)-1], []byte("\n"), append([]byte("\n"), lp.Prefix...), -1), p[len(p)-1])
+       lp.did = p[len(p)-1] != '\n'
+       out = append(out, bytes.Replace(p[:len(p)-1], []byte("\n"), append([]byte("\n"), lp.Prefix...), -1)...)
+       out = append(out, p[len(p)-1])
        _, err := lp.Writer.Write(out)
        if err != nil {
                return 0, err