zap_raft.go 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. package logutil
  2. import (
  3. "github.com/coreos/etcd/raft"
  4. "go.uber.org/zap"
  5. )
  6. // NewRaftLogger converts "*zap.Logger" to "raft.Logger".
  7. func NewRaftLogger(lcfg zap.Config) (raft.Logger, error) {
  8. lg, err := lcfg.Build(zap.AddCallerSkip(1)) // to annotate caller outside of "logutil"
  9. if err != nil {
  10. return nil, err
  11. }
  12. return &zapRaftLogger{lg: lg, sugar: lg.Sugar()}, nil
  13. }
  14. type zapRaftLogger struct {
  15. lg *zap.Logger
  16. sugar *zap.SugaredLogger
  17. }
  18. func (zl *zapRaftLogger) Debug(args ...interface{}) {
  19. zl.sugar.Debug(args...)
  20. }
  21. func (zl *zapRaftLogger) Debugf(format string, args ...interface{}) {
  22. zl.sugar.Debugf(format, args...)
  23. }
  24. func (zl *zapRaftLogger) Error(args ...interface{}) {
  25. zl.sugar.Error(args...)
  26. }
  27. func (zl *zapRaftLogger) Errorf(format string, args ...interface{}) {
  28. zl.sugar.Errorf(format, args...)
  29. }
  30. func (zl *zapRaftLogger) Info(args ...interface{}) {
  31. zl.sugar.Info(args...)
  32. }
  33. func (zl *zapRaftLogger) Infof(format string, args ...interface{}) {
  34. zl.sugar.Infof(format, args...)
  35. }
  36. func (zl *zapRaftLogger) Warning(args ...interface{}) {
  37. zl.sugar.Warn(args...)
  38. }
  39. func (zl *zapRaftLogger) Warningf(format string, args ...interface{}) {
  40. zl.sugar.Warnf(format, args...)
  41. }
  42. func (zl *zapRaftLogger) Fatal(args ...interface{}) {
  43. zl.sugar.Fatal(args...)
  44. }
  45. func (zl *zapRaftLogger) Fatalf(format string, args ...interface{}) {
  46. zl.sugar.Fatalf(format, args...)
  47. }
  48. func (zl *zapRaftLogger) Panic(args ...interface{}) {
  49. zl.sugar.Panic(args...)
  50. }
  51. func (zl *zapRaftLogger) Panicf(format string, args ...interface{}) {
  52. zl.sugar.Panicf(format, args...)
  53. }