Merge pull request #164 from greut/go-logr-v0.2.0
feat use go-logr v0.2.0
diff --git a/go.mod b/go.mod
index f50b258..e396e31 100644
--- a/go.mod
+++ b/go.mod
@@ -2,4 +2,4 @@
go 1.13
-require github.com/go-logr/logr v0.1.0
+require github.com/go-logr/logr v0.2.0
diff --git a/go.sum b/go.sum
index fb64d27..8dfa785 100644
--- a/go.sum
+++ b/go.sum
@@ -1,2 +1,2 @@
-github.com/go-logr/logr v0.1.0 h1:M1Tv3VzNlEHg6uyACnRdtrploV2P7wZqH8BoQMtz0cg=
-github.com/go-logr/logr v0.1.0/go.mod h1:ixOQHD9gLJUVQQ2ZOR7zLEifBX6tGkNJF4QyIY7sIas=
+github.com/go-logr/logr v0.2.0 h1:QvGt2nLcHH0WK9orKa+ppBPAxREcH364nPUedEpK0TY=
+github.com/go-logr/logr v0.2.0/go.mod h1:z6/tIYblkpsD+a4lm/fGIIU9mZ+XfAiaFtq7xTgseGU=
diff --git a/klog.go b/klog.go
index d339ea8..b0091f4 100644
--- a/klog.go
+++ b/klog.go
@@ -687,7 +687,7 @@
return copy(buf.tmp[i:], buf.tmp[j:])
}
-func (l *loggingT) println(s severity, logr logr.InfoLogger, args ...interface{}) {
+func (l *loggingT) println(s severity, logr logr.Logger, args ...interface{}) {
buf, file, line := l.header(s, 0)
// if logr is set, we clear the generated header as we rely on the backing
// logr implementation to print headers
@@ -699,11 +699,11 @@
l.output(s, logr, buf, file, line, false)
}
-func (l *loggingT) print(s severity, logr logr.InfoLogger, args ...interface{}) {
+func (l *loggingT) print(s severity, logr logr.Logger, args ...interface{}) {
l.printDepth(s, logr, 1, args...)
}
-func (l *loggingT) printDepth(s severity, logr logr.InfoLogger, depth int, args ...interface{}) {
+func (l *loggingT) printDepth(s severity, logr logr.Logger, depth int, args ...interface{}) {
buf, file, line := l.header(s, depth)
// if logr is set, we clear the generated header as we rely on the backing
// logr implementation to print headers
@@ -718,7 +718,7 @@
l.output(s, logr, buf, file, line, false)
}
-func (l *loggingT) printf(s severity, logr logr.InfoLogger, format string, args ...interface{}) {
+func (l *loggingT) printf(s severity, logr logr.Logger, format string, args ...interface{}) {
buf, file, line := l.header(s, 0)
// if logr is set, we clear the generated header as we rely on the backing
// logr implementation to print headers
@@ -736,7 +736,7 @@
// printWithFileLine behaves like print but uses the provided file and line number. If
// alsoLogToStderr is true, the log message always appears on standard error; it
// will also appear in the log file unless --logtostderr is set.
-func (l *loggingT) printWithFileLine(s severity, logr logr.InfoLogger, file string, line int, alsoToStderr bool, args ...interface{}) {
+func (l *loggingT) printWithFileLine(s severity, logr logr.Logger, file string, line int, alsoToStderr bool, args ...interface{}) {
buf := l.formatHeader(s, file, line)
// if logr is set, we clear the generated header as we rely on the backing
// logr implementation to print headers
@@ -761,7 +761,7 @@
}
// if loggr is specified, will call loggr.Info, otherwise output with logging module.
-func (l *loggingT) infoS(loggr logr.InfoLogger, msg string, keysAndValues ...interface{}) {
+func (l *loggingT) infoS(loggr logr.Logger, msg string, keysAndValues ...interface{}) {
if loggr != nil {
loggr.Info(msg, keysAndValues)
return
@@ -878,7 +878,7 @@
}
// output writes the data to the log files and releases the buffer.
-func (l *loggingT) output(s severity, log logr.InfoLogger, buf *buffer, file string, line int, alsoToStderr bool) {
+func (l *loggingT) output(s severity, log logr.Logger, buf *buffer, file string, line int, alsoToStderr bool) {
l.mu.Lock()
if l.traceLocation.isSet() {
if l.traceLocation.match(file, line) {
@@ -1231,7 +1231,7 @@
// See the documentation of V for more information.
type Verbose struct {
enabled bool
- logr logr.InfoLogger
+ logr logr.Logger
}
func newVerbose(level Level, b bool) Verbose {
@@ -1324,6 +1324,14 @@
}
}
+// Error is equivalent to the global Error function, guarded by the value of v.
+// See the documentation of V for usage.
+func (v Verbose) Error(err error, msg string, args ...interface{}) {
+ if v.enabled {
+ logging.errorS(err, v.logr, msg, args...)
+ }
+}
+
// Info logs to the INFO log.
// Arguments are handled in the manner of fmt.Print; a newline is appended if missing.
func Info(args ...interface{}) {
diff --git a/klogr/klogr.go b/klogr/klogr.go
index 9791cd8..227d07b 100644
--- a/klogr/klogr.go
+++ b/klogr/klogr.go
@@ -174,7 +174,7 @@
klog.ErrorDepth(framesToCaller(), l.prefix, " ", msgStr, " ", errStr, " ", fixedStr, " ", userStr)
}
-func (l klogger) V(level int) logr.InfoLogger {
+func (l klogger) V(level int) logr.Logger {
new := l.clone()
new.level = level
return new
@@ -199,4 +199,3 @@
}
var _ logr.Logger = klogger{}
-var _ logr.InfoLogger = klogger{}
diff --git a/klogr/klogr_test.go b/klogr/klogr_test.go
index 712ac9c..38b4410 100644
--- a/klogr/klogr_test.go
+++ b/klogr/klogr_test.go
@@ -22,7 +22,7 @@
flag.Parse()
tests := map[string]struct {
- klogr logr.InfoLogger
+ klogr logr.Logger
text string
keysAndValues []interface{}
expectedOutput string