mirror of https://github.com/minio/minio.git
Merge pull request #862 from krishnasrinivas/probe-fix
Fix logrus error message logging
This commit is contained in:
commit
b45c6020e4
15
logger.go
15
logger.go
|
@ -18,6 +18,7 @@ package main
|
|||
|
||||
import (
|
||||
"encoding/json"
|
||||
"reflect"
|
||||
|
||||
"github.com/Sirupsen/logrus"
|
||||
"github.com/minio/minio/pkg/probe"
|
||||
|
@ -48,10 +49,16 @@ func errorIf(err *probe.Error, msg string, fields map[string]interface{}) {
|
|||
if fields == nil {
|
||||
fields = make(map[string]interface{})
|
||||
}
|
||||
|
||||
fields["error"] = err.ToGoError()
|
||||
if jsonErr, e := json.Marshal(err); e == nil {
|
||||
fields["probe"] = string(jsonErr)
|
||||
fields["Error"] = struct {
|
||||
Cause string `json:"cause,omitempty"`
|
||||
Type string `json:"type,omitempty"`
|
||||
CallTrace []probe.TracePoint `json:"trace,omitempty"`
|
||||
SysInfo map[string]string `json:"sysinfo,omitempty"`
|
||||
}{
|
||||
err.Cause.Error(),
|
||||
reflect.TypeOf(err.Cause).String(),
|
||||
err.CallTrace,
|
||||
err.SysInfo,
|
||||
}
|
||||
log.WithFields(fields).Error(msg)
|
||||
}
|
||||
|
|
|
@ -42,10 +42,7 @@ func (s *LoggerSuite) TestLogger(c *C) {
|
|||
c.Assert(err, IsNil)
|
||||
c.Assert(fields["level"], Equals, "error")
|
||||
|
||||
msg, ok := fields["error"]
|
||||
c.Assert(ok, Equals, true)
|
||||
c.Assert(msg, Equals, "Fake error")
|
||||
|
||||
_, ok = fields["probe"]
|
||||
msg, ok := fields["Error"]
|
||||
c.Assert(ok, Equals, true)
|
||||
c.Assert(msg.(map[string]interface{})["cause"], Equals, "Fake error")
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue