Skip to content

Commit 780011e

Browse files
authored
Merge pull request #13 from thockin/master
Update glogr to logr 1.0.0-rc1
2 parents 1a5f839 + b85cd1e commit 780011e

File tree

6 files changed

+285
-102
lines changed

6 files changed

+285
-102
lines changed

README.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,3 @@ This package implements the [logr interface](https://github.com/go-logr/logr)
44
in terms of Google's [glog](https://godoc.org/github.com/golang/glog). This
55
provides a relatively minimalist API to logging in Go, backed by a well-proven
66
implementation.
7-
8-
This is a BETA grade implementation.

benchmark/benchmaark_test.go renamed to benchmark/benchmark_test.go

Lines changed: 80 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ import (
2424

2525
"github.com/go-logr/glogr"
2626
"github.com/go-logr/logr"
27-
"github.com/golang/glog"
2827
)
2928

3029
func init() {
@@ -33,99 +32,132 @@ func init() {
3332
os.Stderr, _ = os.Open("/dev/null")
3433
}
3534

36-
func BenchmarkGlogInfoOneArg(b *testing.B) {
35+
//go:noinline
36+
func doInfoOneArg(b *testing.B, log logr.Logger) {
3737
for i := 0; i < b.N; i++ {
38-
glog.Info("this is", "a", "string")
38+
log.Info("this is", "a", "string")
3939
}
4040
}
4141

42-
func BenchmarkInfoOneArg(b *testing.B) {
43-
var log logr.Logger = glogr.New()
44-
42+
//go:noinline
43+
func doInfoSeveralArgs(b *testing.B, log logr.Logger) {
4544
for i := 0; i < b.N; i++ {
46-
log.Info("this is", "a", "string")
45+
log.Info("multi",
46+
"bool", true, "string", "str", "int", 42,
47+
"float", 3.14, "struct", struct{ X, Y int }{93, 76})
4748
}
4849
}
4950

50-
func BenchmarkGlogInfoSeveralArgs(b *testing.B) {
51+
//go:noinline
52+
func doV0Info(b *testing.B, log logr.Logger) {
5153
for i := 0; i < b.N; i++ {
52-
glog.Info("multi",
54+
log.V(0).Info("multi",
5355
"bool", true, "string", "str", "int", 42,
5456
"float", 3.14, "struct", struct{ X, Y int }{93, 76})
5557
}
5658
}
5759

58-
func BenchmarkInfoSeveralArgs(b *testing.B) {
59-
var log logr.Logger = glogr.New()
60-
60+
//go:noinline
61+
func doV9Info(b *testing.B, log logr.Logger) {
6162
for i := 0; i < b.N; i++ {
62-
log.Info("multi",
63+
log.V(9).Info("multi",
6364
"bool", true, "string", "str", "int", 42,
6465
"float", 3.14, "struct", struct{ X, Y int }{93, 76})
6566
}
6667
}
6768

68-
func BenchmarkGlogInfoV0(b *testing.B) {
69+
//go:noinline
70+
func doError(b *testing.B, log logr.Logger) {
71+
err := fmt.Errorf("error message")
6972
for i := 0; i < b.N; i++ {
70-
glog.V(0).Info("multi",
73+
log.Error(err, "multi",
7174
"bool", true, "string", "str", "int", 42,
7275
"float", 3.14, "struct", struct{ X, Y int }{93, 76})
7376
}
7477
}
7578

76-
func BenchmarkV0Info(b *testing.B) {
77-
var log logr.Logger = glogr.New()
78-
79+
//go:noinline
80+
func doWithValues(b *testing.B, log logr.Logger) {
7981
for i := 0; i < b.N; i++ {
80-
log.V(0).Info("multi",
81-
"bool", true, "string", "str", "int", 42,
82-
"float", 3.14, "struct", struct{ X, Y int }{93, 76})
82+
l := log.WithValues("k1", "v1", "k2", "v2")
83+
_ = l
8384
}
8485
}
8586

86-
func BenchmarkGlogV9Info(b *testing.B) {
87+
//go:noinline
88+
func doWithName(b *testing.B, log logr.Logger) {
8789
for i := 0; i < b.N; i++ {
88-
glog.V(9).Info("multi",
89-
"bool", true, "string", "str", "int", 42,
90-
"float", 3.14, "struct", struct{ X, Y int }{93, 76})
90+
l := log.WithName("name")
91+
_ = l
9192
}
9293
}
9394

94-
func BenchmarkV9Info(b *testing.B) {
95+
func BenchmarkDiscardInfoOneArg(b *testing.B) {
9596
var log logr.Logger = glogr.New()
97+
doInfoOneArg(b, log)
98+
}
9699

97-
for i := 0; i < b.N; i++ {
98-
log.V(9).Info("multi",
99-
"bool", true, "string", "str", "int", 42,
100-
"float", 3.14, "struct", struct{ X, Y int }{93, 76})
101-
}
100+
func BenchmarkDiscardInfoSeveralArgs(b *testing.B) {
101+
var log logr.Logger = glogr.New()
102+
doInfoSeveralArgs(b, log)
102103
}
103104

104-
func BenchmarkError(b *testing.B) {
105+
func BenchmarkDiscardV0Info(b *testing.B) {
105106
var log logr.Logger = glogr.New()
107+
doV0Info(b, log)
108+
}
106109

107-
err := fmt.Errorf("error message")
108-
for i := 0; i < b.N; i++ {
109-
log.Error(err, "multi",
110-
"bool", true, "string", "str", "int", 42,
111-
"float", 3.14, "struct", struct{ X, Y int }{93, 76})
112-
}
110+
func BenchmarkDiscardV9Info(b *testing.B) {
111+
var log logr.Logger = glogr.New()
112+
doV9Info(b, log)
113113
}
114114

115-
func BenchmarkWithValues(b *testing.B) {
115+
func BenchmarkDiscardError(b *testing.B) {
116116
var log logr.Logger = glogr.New()
117+
doError(b, log)
118+
}
117119

118-
for i := 0; i < b.N; i++ {
119-
l := log.WithValues("k1", "v1", "k2", "v2")
120-
_ = l
121-
}
120+
func BenchmarkDiscardWithValues(b *testing.B) {
121+
var log logr.Logger = glogr.New()
122+
doWithValues(b, log)
122123
}
123124

124-
func BenchmarkWithName(b *testing.B) {
125+
func BenchmarkDiscardWithName(b *testing.B) {
125126
var log logr.Logger = glogr.New()
127+
doWithName(b, log)
128+
}
126129

127-
for i := 0; i < b.N; i++ {
128-
l := log.WithName("name")
129-
_ = l
130-
}
130+
func BenchmarkFuncrInfoOneArg(b *testing.B) {
131+
var log logr.Logger = glogr.New()
132+
doInfoOneArg(b, log)
133+
}
134+
135+
func BenchmarkFuncrInfoSeveralArgs(b *testing.B) {
136+
var log logr.Logger = glogr.New()
137+
doInfoSeveralArgs(b, log)
138+
}
139+
140+
func BenchmarkFuncrV0Info(b *testing.B) {
141+
var log logr.Logger = glogr.New()
142+
doV0Info(b, log)
143+
}
144+
145+
func BenchmarkFuncrV9Info(b *testing.B) {
146+
var log logr.Logger = glogr.New()
147+
doV9Info(b, log)
148+
}
149+
150+
func BenchmarkFuncrError(b *testing.B) {
151+
var log logr.Logger = glogr.New()
152+
doError(b, log)
153+
}
154+
155+
func BenchmarkFuncrWithValues(b *testing.B) {
156+
var log logr.Logger = glogr.New()
157+
doWithValues(b, log)
158+
}
159+
160+
func BenchmarkFuncrWithName(b *testing.B) {
161+
var log logr.Logger = glogr.New()
162+
doWithName(b, log)
131163
}

example/main.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ func Helper(log logr.Logger, msg string) {
3737
}
3838

3939
func helper2(log logr.Logger, msg string) {
40-
logr.WithCallDepth(log, 2).Info(msg)
40+
log.WithCallDepth(2).Info(msg)
4141
}
4242

4343
func main() {

0 commit comments

Comments
 (0)