logger.go 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. package logx
  2. import (
  3. "context"
  4. "time"
  5. )
  6. // A Logger represents a logger.
  7. type Logger interface {
  8. // Error logs a message at error level.
  9. Error(...interface{})
  10. // Errorf logs a message at error level.
  11. Errorf(string, ...interface{})
  12. // Errorv logs a message at error level.
  13. Errorv(interface{})
  14. // Errorw logs a message at error level.
  15. Errorw(string, ...LogField)
  16. // Info logs a message at info level.
  17. Info(...interface{})
  18. // Infof logs a message at info level.
  19. Infof(string, ...interface{})
  20. // Infov logs a message at info level.
  21. Infov(interface{})
  22. // Infow logs a message at info level.
  23. Infow(string, ...LogField)
  24. // Slow logs a message at slow level.
  25. Slow(...interface{})
  26. // Slowf logs a message at slow level.
  27. Slowf(string, ...interface{})
  28. // Slowv logs a message at slow level.
  29. Slowv(interface{})
  30. // Sloww logs a message at slow level.
  31. Sloww(string, ...LogField)
  32. // WithCallerSkip returns a new logger with the given caller skip.
  33. WithCallerSkip(skip int) Logger
  34. // WithContext returns a new logger with the given context.
  35. WithContext(ctx context.Context) Logger
  36. // WithDuration returns a new logger with the given duration.
  37. WithDuration(d time.Duration) Logger
  38. }