logger.go 997 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. // Package log provides a log interface
  2. package logger
  3. var (
  4. // Default logger
  5. DefaultLogger Logger = NewHelper(NewLogger())
  6. )
  7. // Logger is a generic logging interface
  8. type Logger interface {
  9. // Init initialises options
  10. Init(options ...Option) error
  11. // The Logger options
  12. Options() Options
  13. // Fields set fields to always be logged
  14. Fields(fields map[string]interface{}) Logger
  15. // Log writes a log entry
  16. Log(level Level, v ...interface{})
  17. // Logf writes a formatted log entry
  18. Logf(level Level, format string, v ...interface{})
  19. // String returns the name of logger
  20. String() string
  21. }
  22. func Init(opts ...Option) error {
  23. return DefaultLogger.Init(opts...)
  24. }
  25. func Fields(fields map[string]interface{}) Logger {
  26. return DefaultLogger.Fields(fields)
  27. }
  28. func Log(level Level, v ...interface{}) {
  29. DefaultLogger.Log(level, v...)
  30. }
  31. func Logf(level Level, format string, v ...interface{}) {
  32. DefaultLogger.Logf(level, format, v...)
  33. }
  34. func String() string {
  35. return DefaultLogger.String()
  36. }