diff --git a/pkg/logutil/zap_raft.go b/pkg/logutil/zap_raft.go index 5fb11c8c4..5ee703dd2 100644 --- a/pkg/logutil/zap_raft.go +++ b/pkg/logutil/zap_raft.go @@ -15,6 +15,8 @@ package logutil import ( + "errors" + "github.com/coreos/etcd/raft" "go.uber.org/zap" @@ -22,7 +24,10 @@ import ( ) // NewRaftLogger converts "*zap.Logger" to "raft.Logger". -func NewRaftLogger(lcfg zap.Config) (raft.Logger, error) { +func NewRaftLogger(lcfg *zap.Config) (raft.Logger, error) { + if lcfg == nil { + return nil, errors.New("nil zap.Config") + } lg, err := lcfg.Build(zap.AddCallerSkip(1)) // to annotate caller outside of "logutil" if err != nil { return nil, err diff --git a/pkg/logutil/zap_raft_test.go b/pkg/logutil/zap_raft_test.go index 7885af389..c2992ed3e 100644 --- a/pkg/logutil/zap_raft_test.go +++ b/pkg/logutil/zap_raft_test.go @@ -32,7 +32,7 @@ func TestNewRaftLogger(t *testing.T) { logPath := filepath.Join(os.TempDir(), fmt.Sprintf("test-log-%d", time.Now().UnixNano())) defer os.RemoveAll(logPath) - lcfg := zap.Config{ + lcfg := &zap.Config{ Level: zap.NewAtomicLevelAt(zap.DebugLevel), Development: false, Sampling: &zap.SamplingConfig{