github.com/drone/runner-go@v1.12.0/logger/logger.go (about) 1 // Copyright 2019 Drone.IO Inc. All rights reserved. 2 // Use of this source code is governed by the Polyform License 3 // that can be found in the LICENSE file. 4 5 // Package logger defines interfaces that logger drivers 6 // implement to log messages. 7 package logger 8 9 // A Logger represents an active logging object that generates 10 // lines of output to an io.Writer. 11 type Logger interface { 12 Debug(args ...interface{}) 13 Debugf(format string, args ...interface{}) 14 Debugln(args ...interface{}) 15 16 Error(args ...interface{}) 17 Errorf(format string, args ...interface{}) 18 Errorln(args ...interface{}) 19 20 Info(args ...interface{}) 21 Infof(format string, args ...interface{}) 22 Infoln(args ...interface{}) 23 24 Trace(args ...interface{}) 25 Tracef(format string, args ...interface{}) 26 Traceln(args ...interface{}) 27 28 Warn(args ...interface{}) 29 Warnf(format string, args ...interface{}) 30 Warnln(args ...interface{}) 31 32 WithError(error) Logger 33 WithField(string, interface{}) Logger 34 } 35 36 // Default returns the default logger. 37 var Default = Discard() 38 39 // Discard returns a no-op logger 40 func Discard() Logger { 41 return &discard{} 42 } 43 44 type discard struct{} 45 46 func (*discard) Debug(args ...interface{}) {} 47 func (*discard) Debugf(format string, args ...interface{}) {} 48 func (*discard) Debugln(args ...interface{}) {} 49 func (*discard) Error(args ...interface{}) {} 50 func (*discard) Errorf(format string, args ...interface{}) {} 51 func (*discard) Errorln(args ...interface{}) {} 52 func (*discard) Info(args ...interface{}) {} 53 func (*discard) Infof(format string, args ...interface{}) {} 54 func (*discard) Infoln(args ...interface{}) {} 55 func (*discard) Trace(args ...interface{}) {} 56 func (*discard) Tracef(format string, args ...interface{}) {} 57 func (*discard) Traceln(args ...interface{}) {} 58 func (*discard) Warn(args ...interface{}) {} 59 func (*discard) Warnf(format string, args ...interface{}) {} 60 func (*discard) Warnln(args ...interface{}) {} 61 func (d *discard) WithError(error) Logger { return d } 62 func (d *discard) WithField(string, interface{}) Logger { return d }