aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Miek Gieben <miek@miek.nl> 2018-11-15 22:18:49 +0000
committerGravatar GitHub <noreply@github.com> 2018-11-15 22:18:49 +0000
commit3f6dfba1f0e9cd6c858f88891550d09904b7814d (patch)
tree04fdb7cf24fef14fcd347ab6a7e13a1144d28774
parent669b99d91c5eaf4c669d03436083c98e3c298367 (diff)
downloadcoredns-3f6dfba1f0e9cd6c858f88891550d09904b7814d.tar.gz
coredns-3f6dfba1f0e9cd6c858f88891550d09904b7814d.tar.zst
coredns-3f6dfba1f0e9cd6c858f88891550d09904b7814d.zip
Redo the plugin log PR (#2315)
* Redo the plugin log PR Remove the code duplication and call of the "official" functions. This is the second(?) time we forgot to update the other half, so remove that problem entirely. Also add a test if the correct (within limits) time in front of the log line. Signed-off-by: Miek Gieben <miek@miek.nl> * Remove pFormat Signed-off-by: Miek Gieben <miek@miek.nl>
-rw-r--r--plugin/pkg/log/plugin.go11
-rw-r--r--plugin/pkg/log/plugin_test.go16
2 files changed, 19 insertions, 8 deletions
diff --git a/plugin/pkg/log/plugin.go b/plugin/pkg/log/plugin.go
index 1df302609..0cc5f881a 100644
--- a/plugin/pkg/log/plugin.go
+++ b/plugin/pkg/log/plugin.go
@@ -2,7 +2,6 @@ package log
import (
"fmt"
- golog "log"
"os"
)
@@ -13,16 +12,14 @@ type P struct {
// NewWithPlugin returns a logger that includes "plugin/name: " in the log message.
// I.e [INFO] plugin/<name>: message.
-func NewWithPlugin(name string) P { return P{name} }
+func NewWithPlugin(name string) P { return P{"plugin/" + name + ": "} }
func (p P) logf(level, format string, v ...interface{}) {
- s := level + pFormat(p.plugin) + fmt.Sprintf(format, v...)
- golog.Print(s)
+ log(level, p.plugin, fmt.Sprintf(format, v...))
}
func (p P) log(level string, v ...interface{}) {
- s := level + pFormat(p.plugin) + fmt.Sprint(v...)
- golog.Print(s)
+ log(level+p.plugin, v...)
}
// Debug logs as log.Debug.
@@ -64,5 +61,3 @@ func (p P) Fatal(v ...interface{}) { p.log(fatal, v...); os.Exit(1) }
// Fatalf logs as log.Fatalf and calls os.Exit(1).
func (p P) Fatalf(format string, v ...interface{}) { p.logf(fatal, format, v...); os.Exit(1) }
-
-func pFormat(s string) string { return "plugin/" + s + ": " }
diff --git a/plugin/pkg/log/plugin_test.go b/plugin/pkg/log/plugin_test.go
index b24caa48b..c02338608 100644
--- a/plugin/pkg/log/plugin_test.go
+++ b/plugin/pkg/log/plugin_test.go
@@ -19,3 +19,19 @@ func TestPlugins(t *testing.T) {
t.Errorf("Expected log to be %s, got %s", info+ts, x)
}
}
+
+func TestPluginsDateTime(t *testing.T) {
+ var f bytes.Buffer
+ const ts = "test"
+ golog.SetFlags(0) // Set to 0 because we're doing our own time, with timezone
+ golog.SetOutput(&f)
+
+ lg := NewWithPlugin("testplugin")
+
+ lg.Info(ts)
+ // rude check if the date/time is there
+ str := f.String()
+ if str[4] != '-' || str[7] != '-' || str[10] != 'T' {
+ t.Errorf("Expected date got %s...", str[:15])
+ }
+}