mirror of
https://github.com/etcd-io/etcd.git
synced 2024-09-27 06:25:44 +00:00
raftsnap: support structured logger
Signed-off-by: Gyuho Lee <gyuhox@gmail.com>
This commit is contained in:
parent
c68f625353
commit
ce8348e3e0
@ -23,6 +23,8 @@ import (
|
||||
"path/filepath"
|
||||
|
||||
"github.com/coreos/etcd/pkg/fileutil"
|
||||
humanize "github.com/dustin/go-humanize"
|
||||
"go.uber.org/zap"
|
||||
)
|
||||
|
||||
var ErrNoDBSnapshot = errors.New("snap: snapshot file doesn't exist")
|
||||
@ -55,7 +57,15 @@ func (s *Snapshotter) SaveDBFrom(r io.Reader, id uint64) (int64, error) {
|
||||
return n, err
|
||||
}
|
||||
|
||||
plog.Infof("saved database snapshot to disk [total bytes: %d]", n)
|
||||
if s.lg != nil {
|
||||
s.lg.Info(
|
||||
"saved database snapshot to disk",
|
||||
zap.Int64("bytes", n),
|
||||
zap.String("size", humanize.Bytes(uint64(n))),
|
||||
)
|
||||
} else {
|
||||
plog.Infof("saved database snapshot to disk [total bytes: %d]", n)
|
||||
}
|
||||
|
||||
return n, nil
|
||||
}
|
||||
|
@ -32,6 +32,7 @@ import (
|
||||
"github.com/coreos/etcd/raftsnap/snappb"
|
||||
|
||||
"github.com/coreos/pkg/capnslog"
|
||||
"go.uber.org/zap"
|
||||
)
|
||||
|
||||
const (
|
||||
@ -53,11 +54,13 @@ var (
|
||||
)
|
||||
|
||||
type Snapshotter struct {
|
||||
lg *zap.Logger
|
||||
dir string
|
||||
}
|
||||
|
||||
func New(dir string) *Snapshotter {
|
||||
func New(lg *zap.Logger, dir string) *Snapshotter {
|
||||
return &Snapshotter{
|
||||
lg: lg,
|
||||
dir: dir,
|
||||
}
|
||||
}
|
||||
|
@ -24,6 +24,8 @@ import (
|
||||
"testing"
|
||||
|
||||
"github.com/coreos/etcd/raft/raftpb"
|
||||
|
||||
"go.uber.org/zap"
|
||||
)
|
||||
|
||||
var testSnap = &raftpb.Snapshot{
|
||||
@ -44,7 +46,7 @@ func TestSaveAndLoad(t *testing.T) {
|
||||
t.Fatal(err)
|
||||
}
|
||||
defer os.RemoveAll(dir)
|
||||
ss := New(dir)
|
||||
ss := New(zap.NewExample(), dir)
|
||||
err = ss.save(testSnap)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
@ -66,7 +68,7 @@ func TestBadCRC(t *testing.T) {
|
||||
t.Fatal(err)
|
||||
}
|
||||
defer os.RemoveAll(dir)
|
||||
ss := New(dir)
|
||||
ss := New(zap.NewExample(), dir)
|
||||
err = ss.save(testSnap)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
@ -96,7 +98,7 @@ func TestFailback(t *testing.T) {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
ss := New(dir)
|
||||
ss := New(zap.NewExample(), dir)
|
||||
err = ss.save(testSnap)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
@ -131,7 +133,7 @@ func TestSnapNames(t *testing.T) {
|
||||
f.Close()
|
||||
}
|
||||
}
|
||||
ss := New(dir)
|
||||
ss := New(zap.NewExample(), dir)
|
||||
names, err := ss.snapNames()
|
||||
if err != nil {
|
||||
t.Errorf("err = %v, want nil", err)
|
||||
@ -152,7 +154,7 @@ func TestLoadNewestSnap(t *testing.T) {
|
||||
t.Fatal(err)
|
||||
}
|
||||
defer os.RemoveAll(dir)
|
||||
ss := New(dir)
|
||||
ss := New(zap.NewExample(), dir)
|
||||
err = ss.save(testSnap)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
@ -181,7 +183,7 @@ func TestNoSnapshot(t *testing.T) {
|
||||
t.Fatal(err)
|
||||
}
|
||||
defer os.RemoveAll(dir)
|
||||
ss := New(dir)
|
||||
ss := New(zap.NewExample(), dir)
|
||||
_, err = ss.Load()
|
||||
if err != ErrNoSnapshot {
|
||||
t.Errorf("err = %v, want %v", err, ErrNoSnapshot)
|
||||
@ -222,7 +224,7 @@ func TestAllSnapshotBroken(t *testing.T) {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
ss := New(dir)
|
||||
ss := New(zap.NewExample(), dir)
|
||||
_, err = ss.Load()
|
||||
if err != ErrNoSnapshot {
|
||||
t.Errorf("err = %v, want %v", err, ErrNoSnapshot)
|
||||
|
Loading…
x
Reference in New Issue
Block a user