fs: expand stats output for json log

vfs-used-is-size
reddi 2020-02-15 22:21:01 +01:00 committed by Nick Craig-Wood
parent 6893ce0bbf
commit 12a208a880
2 changed files with 12 additions and 1 deletions

View File

@ -375,7 +375,13 @@ func (s *StatsInfo) Transferred() []TransferSnapshot {
// Log outputs the StatsInfo to the log
func (s *StatsInfo) Log() {
fs.LogLevelPrintf(fs.Config.StatsLogLevel, nil, "%v\n", s)
if fs.Config.UseJSONLog {
out, _ := s.RemoteStats()
fs.LogLevelPrintf(fs.Config.StatsLogLevel, nil, "%T\n", map[string]interface{}(out))
} else {
fs.LogLevelPrintf(fs.Config.StatsLogLevel, nil, "%v\n", s)
}
}
// Bytes updates the stats for bytes bytes

View File

@ -3,6 +3,7 @@ package fs
import (
"fmt"
"log"
"strings"
"github.com/pkg/errors"
"github.com/sirupsen/logrus"
@ -86,6 +87,10 @@ func LogPrintf(level LogLevel, o interface{}, text string, args ...interface{})
"objectType": fmt.Sprintf("%T", o),
}
}
if strings.HasPrefix(out, "map[") {
fields["json"] = args[0]
out = ""
}
switch level {
case LogLevelDebug:
logrus.WithFields(fields).Debug(out)