Skip to content

Commit 0dd6edb

Browse files
authored
Merge pull request #290 from DirectXMan12/refactor/logging-separation
⚠️ Refactor logging structure, avoid mandatory Zap
2 parents c043856 + 3c5adf4 commit 0dd6edb

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

50 files changed

+525
-284
lines changed

TMP-LOGGING.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,11 +48,11 @@ provides some helpers to make it easy to use
4848
[Zap](https://go.uber.org/zap) as the implementation.
4949

5050
You can configure the logging implementation using
51-
`"sigs.k8s.io/controller-runtime/pkg/runtime/log".SetLogger`. That
51+
`"sigs.k8s.io/controller-runtime/pkg/log".SetLogger`. That
5252
package also contains the convinience functions for setting up Zap.
5353

5454
You can get a handle to the the "root" logger using
55-
`"sigs.k8s.io/controller-runtime/pkg/runtime/log".Log`, and can then call
55+
`"sigs.k8s.io/controller-runtime/pkg/log".Log`, and can then call
5656
`WithName` to create individual named loggers. You can call `WithName`
5757
repeatedly to chain names together:
5858

alias.go

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ import (
2626
"sigs.k8s.io/controller-runtime/pkg/controller/controllerutil"
2727
"sigs.k8s.io/controller-runtime/pkg/manager"
2828
"sigs.k8s.io/controller-runtime/pkg/reconcile"
29-
"sigs.k8s.io/controller-runtime/pkg/runtime/log"
29+
"sigs.k8s.io/controller-runtime/pkg/log"
3030
"sigs.k8s.io/controller-runtime/pkg/runtime/scheme"
3131
"sigs.k8s.io/controller-runtime/pkg/runtime/signals"
3232
)
@@ -126,10 +126,4 @@ var (
126126

127127
// SetLogger sets a concrete logging implementation for all deferred Loggers.
128128
SetLogger = log.SetLogger
129-
130-
// ZapLogger is a Logger implementation.
131-
// If development is true, a Zap development config will be used
132-
// (stacktraces on warnings, no sampling), otherwise a Zap production
133-
// config will be used (stacktraces on errors, sampling).
134-
ZapLogger = log.ZapLogger
135129
)

example/main.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,8 @@ import (
2929
"sigs.k8s.io/controller-runtime/pkg/controller"
3030
"sigs.k8s.io/controller-runtime/pkg/handler"
3131
"sigs.k8s.io/controller-runtime/pkg/manager"
32-
logf "sigs.k8s.io/controller-runtime/pkg/runtime/log"
32+
logf "sigs.k8s.io/controller-runtime/pkg/log"
33+
"sigs.k8s.io/controller-runtime/pkg/log/zap"
3334
"sigs.k8s.io/controller-runtime/pkg/runtime/signals"
3435
"sigs.k8s.io/controller-runtime/pkg/source"
3536
"sigs.k8s.io/controller-runtime/pkg/webhook"
@@ -44,7 +45,7 @@ func main() {
4445
"disable the installer in the webhook server, so it won't install webhook configuration resources during bootstrapping")
4546

4647
flag.Parse()
47-
logf.SetLogger(logf.ZapLogger(false))
48+
logf.SetLogger(zap.Logger(false))
4849
entryLog := log.WithName("entrypoint")
4950

5051
// Setup a Manager

pkg/builder/builder_suite_test.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,8 @@ import (
2424
"k8s.io/client-go/rest"
2525
"sigs.k8s.io/controller-runtime/pkg/envtest"
2626
"sigs.k8s.io/controller-runtime/pkg/metrics"
27-
logf "sigs.k8s.io/controller-runtime/pkg/runtime/log"
27+
logf "sigs.k8s.io/controller-runtime/pkg/log"
28+
"sigs.k8s.io/controller-runtime/pkg/log/zap"
2829
)
2930

3031
func TestSource(t *testing.T) {
@@ -36,7 +37,7 @@ var testenv *envtest.Environment
3637
var cfg *rest.Config
3738

3839
var _ = BeforeSuite(func(done Done) {
39-
logf.SetLogger(logf.ZapLoggerTo(GinkgoWriter, true))
40+
logf.SetLogger(zap.LoggerTo(GinkgoWriter, true))
4041

4142
testenv = &envtest.Environment{}
4243

pkg/builder/example_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ import (
2121
"fmt"
2222
"os"
2323

24-
logf "sigs.k8s.io/controller-runtime/pkg/runtime/log"
24+
logf "sigs.k8s.io/controller-runtime/pkg/log"
2525

2626
appsv1 "k8s.io/api/apps/v1"
2727
corev1 "k8s.io/api/core/v1"

pkg/cache/cache.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,10 +29,10 @@ import (
2929
"sigs.k8s.io/controller-runtime/pkg/cache/internal"
3030
"sigs.k8s.io/controller-runtime/pkg/client"
3131
"sigs.k8s.io/controller-runtime/pkg/client/apiutil"
32-
logf "sigs.k8s.io/controller-runtime/pkg/runtime/log"
32+
logf "sigs.k8s.io/controller-runtime/pkg/internal/log"
3333
)
3434

35-
var log = logf.KBLog.WithName("object-cache")
35+
var log = logf.RuntimeLog.WithName("object-cache")
3636

3737
// Cache implements CacheReader by reading objects from a cache populated by InformersMap
3838
type Cache interface {

pkg/cache/cache_suite_test.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,8 @@ import (
2424
"k8s.io/client-go/kubernetes"
2525
"k8s.io/client-go/rest"
2626
"sigs.k8s.io/controller-runtime/pkg/envtest"
27-
logf "sigs.k8s.io/controller-runtime/pkg/runtime/log"
27+
logf "sigs.k8s.io/controller-runtime/pkg/log"
28+
"sigs.k8s.io/controller-runtime/pkg/log/zap"
2829
)
2930

3031
func TestSource(t *testing.T) {
@@ -37,7 +38,7 @@ var cfg *rest.Config
3738
var clientset *kubernetes.Clientset
3839

3940
var _ = BeforeSuite(func(done Done) {
40-
logf.SetLogger(logf.ZapLoggerTo(GinkgoWriter, true))
41+
logf.SetLogger(zap.LoggerTo(GinkgoWriter, true))
4142

4243
testenv = &envtest.Environment{}
4344

pkg/client/client_suite_test.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,8 @@ import (
2525
"k8s.io/client-go/rest"
2626
"sigs.k8s.io/controller-runtime/pkg/envtest"
2727

28-
logf "sigs.k8s.io/controller-runtime/pkg/runtime/log"
28+
logf "sigs.k8s.io/controller-runtime/pkg/log"
29+
"sigs.k8s.io/controller-runtime/pkg/log/zap"
2930
)
3031

3132
func TestSource(t *testing.T) {
@@ -38,7 +39,7 @@ var cfg *rest.Config
3839
var clientset *kubernetes.Clientset
3940

4041
var _ = BeforeSuite(func(done Done) {
41-
logf.SetLogger(logf.ZapLoggerTo(GinkgoWriter, true))
42+
logf.SetLogger(zap.LoggerTo(GinkgoWriter, true))
4243

4344
testenv = &envtest.Environment{}
4445

pkg/client/config/config.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,12 +25,12 @@ import (
2525

2626
"k8s.io/client-go/rest"
2727
"k8s.io/client-go/tools/clientcmd"
28-
logf "sigs.k8s.io/controller-runtime/pkg/runtime/log"
28+
logf "sigs.k8s.io/controller-runtime/pkg/internal/log"
2929
)
3030

3131
var (
3232
kubeconfig, masterURL string
33-
log = logf.KBLog.WithName("client").WithName("config")
33+
log = logf.RuntimeLog.WithName("client").WithName("config")
3434
)
3535

3636
func init() {

pkg/client/fake/client.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,11 +31,11 @@ import (
3131

3232
"sigs.k8s.io/controller-runtime/pkg/client"
3333
"sigs.k8s.io/controller-runtime/pkg/client/apiutil"
34-
logf "sigs.k8s.io/controller-runtime/pkg/runtime/log"
34+
logf "sigs.k8s.io/controller-runtime/pkg/internal/log"
3535
)
3636

3737
var (
38-
log = logf.KBLog.WithName("fake-client")
38+
log = logf.RuntimeLog.WithName("fake-client")
3939
)
4040

4141
type fakeClient struct {

pkg/client/fake/client_suite_test.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,8 @@ import (
2323
. "github.com/onsi/gomega"
2424
"sigs.k8s.io/controller-runtime/pkg/envtest"
2525

26-
logf "sigs.k8s.io/controller-runtime/pkg/runtime/log"
26+
logf "sigs.k8s.io/controller-runtime/pkg/log"
27+
"sigs.k8s.io/controller-runtime/pkg/log/zap"
2728
)
2829

2930
func TestSource(t *testing.T) {
@@ -32,6 +33,6 @@ func TestSource(t *testing.T) {
3233
}
3334

3435
var _ = BeforeSuite(func(done Done) {
35-
logf.SetLogger(logf.ZapLoggerTo(GinkgoWriter, true))
36+
logf.SetLogger(zap.LoggerTo(GinkgoWriter, true))
3637
close(done)
3738
}, 60)

pkg/controller/controller_suite_test.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,8 @@ import (
2525
"k8s.io/client-go/rest"
2626
"sigs.k8s.io/controller-runtime/pkg/envtest"
2727
"sigs.k8s.io/controller-runtime/pkg/metrics"
28-
logf "sigs.k8s.io/controller-runtime/pkg/runtime/log"
28+
logf "sigs.k8s.io/controller-runtime/pkg/log"
29+
"sigs.k8s.io/controller-runtime/pkg/log/zap"
2930
)
3031

3132
func TestSource(t *testing.T) {
@@ -38,7 +39,7 @@ var cfg *rest.Config
3839
var clientset *kubernetes.Clientset
3940

4041
var _ = BeforeSuite(func(done Done) {
41-
logf.SetLogger(logf.ZapLoggerTo(GinkgoWriter, true))
42+
logf.SetLogger(zap.LoggerTo(GinkgoWriter, true))
4243

4344
testenv = &envtest.Environment{}
4445

pkg/controller/controllerutil/example_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ import (
2525
"k8s.io/apimachinery/pkg/runtime"
2626

2727
"sigs.k8s.io/controller-runtime/pkg/controller/controllerutil"
28-
logf "sigs.k8s.io/controller-runtime/pkg/runtime/log"
28+
logf "sigs.k8s.io/controller-runtime/pkg/log"
2929
)
3030

3131
var (

pkg/controller/example_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ import (
2626
"sigs.k8s.io/controller-runtime/pkg/handler"
2727
"sigs.k8s.io/controller-runtime/pkg/manager"
2828
"sigs.k8s.io/controller-runtime/pkg/reconcile"
29-
logf "sigs.k8s.io/controller-runtime/pkg/runtime/log"
29+
logf "sigs.k8s.io/controller-runtime/pkg/log"
3030
"sigs.k8s.io/controller-runtime/pkg/runtime/signals"
3131
"sigs.k8s.io/controller-runtime/pkg/source"
3232
)

pkg/envtest/envtest_suite_test.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,8 @@ import (
2121

2222
. "github.com/onsi/ginkgo"
2323
. "github.com/onsi/gomega"
24-
logf "sigs.k8s.io/controller-runtime/pkg/runtime/log"
24+
logf "sigs.k8s.io/controller-runtime/pkg/log"
25+
"sigs.k8s.io/controller-runtime/pkg/log/zap"
2526
)
2627

2728
func TestSource(t *testing.T) {
@@ -32,7 +33,7 @@ func TestSource(t *testing.T) {
3233
var env *Environment
3334

3435
var _ = BeforeSuite(func(done Done) {
35-
logf.SetLogger(logf.ZapLoggerTo(GinkgoWriter, true))
36+
logf.SetLogger(zap.LoggerTo(GinkgoWriter, true))
3637
env = &Environment{}
3738
_, err := env.Start()
3839
Expect(err).NotTo(HaveOccurred())

pkg/handler/enqueue.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,10 @@ import (
2121
"k8s.io/client-go/util/workqueue"
2222
"sigs.k8s.io/controller-runtime/pkg/event"
2323
"sigs.k8s.io/controller-runtime/pkg/reconcile"
24-
logf "sigs.k8s.io/controller-runtime/pkg/runtime/log"
24+
logf "sigs.k8s.io/controller-runtime/pkg/internal/log"
2525
)
2626

27-
var enqueueLog = logf.KBLog.WithName("eventhandler").WithName("EnqueueRequestForObject")
27+
var enqueueLog = logf.RuntimeLog.WithName("eventhandler").WithName("EnqueueRequestForObject")
2828

2929
var _ EventHandler = &EnqueueRequestForObject{}
3030

pkg/handler/enqueue_owner.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,12 +27,12 @@ import (
2727
"sigs.k8s.io/controller-runtime/pkg/event"
2828
"sigs.k8s.io/controller-runtime/pkg/reconcile"
2929
"sigs.k8s.io/controller-runtime/pkg/runtime/inject"
30-
logf "sigs.k8s.io/controller-runtime/pkg/runtime/log"
30+
logf "sigs.k8s.io/controller-runtime/pkg/internal/log"
3131
)
3232

3333
var _ EventHandler = &EnqueueRequestForOwner{}
3434

35-
var log = logf.KBLog.WithName("eventhandler").WithName("EnqueueRequestForOwner")
35+
var log = logf.RuntimeLog.WithName("eventhandler").WithName("EnqueueRequestForOwner")
3636

3737
// EnqueueRequestForOwner enqueues Requests for the Owners of an object. E.g. the object that created
3838
// the object that was the source of the Event.

pkg/handler/eventhandler_suite_test.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,8 @@ import (
2222
. "github.com/onsi/ginkgo"
2323
. "github.com/onsi/gomega"
2424
"sigs.k8s.io/controller-runtime/pkg/envtest"
25-
logf "sigs.k8s.io/controller-runtime/pkg/runtime/log"
25+
logf "sigs.k8s.io/controller-runtime/pkg/log"
26+
"sigs.k8s.io/controller-runtime/pkg/log/zap"
2627
)
2728

2829
func TestEventhandler(t *testing.T) {
@@ -31,5 +32,5 @@ func TestEventhandler(t *testing.T) {
3132
}
3233

3334
var _ = BeforeSuite(func() {
34-
logf.SetLogger(logf.ZapLoggerTo(GinkgoWriter, true))
35+
logf.SetLogger(zap.LoggerTo(GinkgoWriter, true))
3536
})

pkg/internal/admission/http.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,12 +23,12 @@ import (
2323

2424
"k8s.io/api/admission/v1beta1"
2525
"k8s.io/apimachinery/pkg/runtime"
26-
logf "sigs.k8s.io/controller-runtime/pkg/runtime/log"
26+
logf "sigs.k8s.io/controller-runtime/pkg/internal/log"
2727
)
2828

2929
var (
3030
// TODO(directxman12): this shouldn't be a global log
31-
log = logf.KBLog.WithName("admission").WithName("http-handler")
31+
log = logf.RuntimeLog.WithName("admission").WithName("http-handler")
3232
)
3333

3434
func (h httpHandler) ServeHTTP(w http.ResponseWriter, r *http.Request) {

pkg/internal/controller/controller.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,11 +34,11 @@ import (
3434
"sigs.k8s.io/controller-runtime/pkg/predicate"
3535
"sigs.k8s.io/controller-runtime/pkg/reconcile"
3636
"sigs.k8s.io/controller-runtime/pkg/runtime/inject"
37-
logf "sigs.k8s.io/controller-runtime/pkg/runtime/log"
37+
logf "sigs.k8s.io/controller-runtime/pkg/internal/log"
3838
"sigs.k8s.io/controller-runtime/pkg/source"
3939
)
4040

41-
var log = logf.KBLog.WithName("controller")
41+
var log = logf.RuntimeLog.WithName("controller")
4242

4343
var _ inject.Injector = &Controller{}
4444

pkg/internal/controller/controller_suite_test.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,8 @@ import (
2424
"k8s.io/client-go/kubernetes"
2525
"k8s.io/client-go/rest"
2626
"sigs.k8s.io/controller-runtime/pkg/envtest"
27-
logf "sigs.k8s.io/controller-runtime/pkg/runtime/log"
27+
logf "sigs.k8s.io/controller-runtime/pkg/log"
28+
"sigs.k8s.io/controller-runtime/pkg/log/zap"
2829
)
2930

3031
func TestSource(t *testing.T) {
@@ -37,7 +38,7 @@ var cfg *rest.Config
3738
var clientset *kubernetes.Clientset
3839

3940
var _ = BeforeSuite(func(done Done) {
40-
logf.SetLogger(logf.ZapLoggerTo(GinkgoWriter, true))
41+
logf.SetLogger(zap.LoggerTo(GinkgoWriter, true))
4142

4243
testenv = &envtest.Environment{}
4344

pkg/internal/log/log.go

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
/*
2+
Copyright 2018 The Kubernetes Authors.
3+
4+
Licensed under the Apache License, Version 2.0 (the "License");
5+
you may not use this file except in compliance with the License.
6+
You may obtain a copy of the License at
7+
8+
http://www.apache.org/licenses/LICENSE-2.0
9+
10+
Unless required by applicable law or agreed to in writing, software
11+
distributed under the License is distributed on an "AS IS" BASIS,
12+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
See the License for the specific language governing permissions and
14+
limitations under the License.
15+
*/
16+
17+
// Package log contains utilities for fetching a new logger
18+
// when one is not already available.
19+
// Deprecated: use pkg/log
20+
package log
21+
22+
import (
23+
"github.com/go-logr/logr"
24+
25+
"sigs.k8s.io/controller-runtime/pkg/log"
26+
)
27+
28+
var (
29+
// RuntimeLog is a base parent logger for use inside controller-runtime.
30+
RuntimeLog logr.Logger
31+
)
32+
33+
func init() {
34+
RuntimeLog = log.Log.WithName("controller-runtime")
35+
}

pkg/internal/recorder/recorder_suite_test.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,8 @@ import (
2424
"k8s.io/client-go/kubernetes"
2525
"k8s.io/client-go/rest"
2626
"sigs.k8s.io/controller-runtime/pkg/envtest"
27-
logf "sigs.k8s.io/controller-runtime/pkg/runtime/log"
27+
logf "sigs.k8s.io/controller-runtime/pkg/log"
28+
"sigs.k8s.io/controller-runtime/pkg/log/zap"
2829
)
2930

3031
func TestRecorder(t *testing.T) {
@@ -37,7 +38,7 @@ var cfg *rest.Config
3738
var clientset *kubernetes.Clientset
3839

3940
var _ = BeforeSuite(func(done Done) {
40-
logf.SetLogger(logf.ZapLoggerTo(GinkgoWriter, true))
41+
logf.SetLogger(zap.LoggerTo(GinkgoWriter, true))
4142

4243
testenv = &envtest.Environment{}
4344

File renamed without changes.

0 commit comments

Comments
 (0)