Skip to content

Commit 04a97e6

Browse files
committed
enhance log init process
1 parent c8aa470 commit 04a97e6

File tree

50 files changed

+83
-124
lines changed

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

+83
-124
lines changed

cmd/bbr/health.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ import (
2525
healthPb "google.golang.org/grpc/health/grpc_health_v1"
2626
"google.golang.org/grpc/status"
2727

28-
logutil "sigs.k8s.io/gateway-api-inference-extension/pkg/epp/util/logging"
28+
logutil "sigs.k8s.io/gateway-api-inference-extension/internal/telemetry/logging"
2929
)
3030

3131
type healthServer struct {

cmd/bbr/main.go

Lines changed: 4 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,6 @@ import (
2222
"os"
2323

2424
"github.com/go-logr/logr"
25-
uberzap "go.uber.org/zap"
26-
"go.uber.org/zap/zapcore"
2725
"google.golang.org/grpc"
2826
healthPb "google.golang.org/grpc/health/grpc_health_v1"
2927
ctrl "sigs.k8s.io/controller-runtime"
@@ -33,9 +31,9 @@ import (
3331
metricsserver "sigs.k8s.io/controller-runtime/pkg/metrics/server"
3432

3533
"sigs.k8s.io/gateway-api-inference-extension/internal/runnable"
34+
"sigs.k8s.io/gateway-api-inference-extension/internal/telemetry/logging"
3635
"sigs.k8s.io/gateway-api-inference-extension/pkg/bbr/metrics"
3736
runserver "sigs.k8s.io/gateway-api-inference-extension/pkg/bbr/server"
38-
"sigs.k8s.io/gateway-api-inference-extension/pkg/epp/util/logging"
3937
)
4038

4139
var (
@@ -51,7 +49,7 @@ var (
5149
"metrics-port", 9090, "The metrics port")
5250
streaming = flag.Bool(
5351
"streaming", false, "Enables streaming support for Envoy full-duplex streaming mode")
54-
logVerbosity = flag.Int("v", logging.DEFAULT, "number for the log level verbosity")
52+
logVerbosity = flag.String("log-level", logging.DefaultLogLevel, "log level verbosity, support: debug, info, warn, error, dpanic, panic, fatal")
5553

5654
setupLog = ctrl.Log.WithName("setup")
5755
)
@@ -66,7 +64,8 @@ func run() error {
6664
opts := zap.Options{Development: true}
6765
opts.BindFlags(flag.CommandLine)
6866
flag.Parse()
69-
initLogging(&opts)
67+
// --- set up logger
68+
ctrl.SetLogger(logging.InitLogging(*logVerbosity, true))
7069

7170
// Print all flag values
7271
flags := make(map[string]any)
@@ -138,20 +137,3 @@ func registerHealthServer(mgr manager.Manager, logger logr.Logger, port int) err
138137
}
139138
return nil
140139
}
141-
142-
func initLogging(opts *zap.Options) {
143-
useV := true
144-
flag.Visit(func(f *flag.Flag) {
145-
if f.Name == "zap-log-level" {
146-
useV = false
147-
}
148-
})
149-
if useV {
150-
// See https://pkg.go.dev/sigs.k8s.io/controller-runtime/pkg/log/zap#Options.Level
151-
lvl := -1 * (*logVerbosity)
152-
opts.Level = uberzap.NewAtomicLevelAt(zapcore.Level(int8(lvl)))
153-
}
154-
155-
logger := zap.New(zap.UseFlagOptions(opts), zap.RawZapOpts(uberzap.AddCaller()))
156-
ctrl.SetLogger(logger)
157-
}

cmd/epp/runner/health.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@ import (
2727
healthPb "google.golang.org/grpc/health/grpc_health_v1"
2828
"google.golang.org/grpc/status"
2929

30+
logutil "sigs.k8s.io/gateway-api-inference-extension/internal/telemetry/logging"
3031
"sigs.k8s.io/gateway-api-inference-extension/pkg/epp/datastore"
31-
logutil "sigs.k8s.io/gateway-api-inference-extension/pkg/epp/util/logging"
3232
)
3333

3434
type healthServer struct {

config/charts/body-based-routing/templates/bbr.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ spec:
1919
imagePullPolicy: {{ .Values.bbr.image.pullPolicy | default "Always" }}
2020
args:
2121
- "--streaming"
22-
- "--v"
23-
- "3"
22+
- "--log-level"
23+
- "error"
2424
ports:
2525
- containerPort: {{ .Values.bbr.port }}
2626
# health check

config/charts/inferencepool/templates/epp-deployment.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,8 @@ spec:
3131
{{- end }}
3232
- --zap-encoder
3333
- "json"
34+
- "--log-level"
35+
- "error"
3436
- --config-file
3537
- "/config/{{ .Values.inferenceExtension.pluginsConfigFile }}"
3638
{{- range .Values.inferenceExtension.flags }}

pkg/epp/util/logging/logger.go renamed to internal/telemetry/logging/logger.go

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,24 @@ package logging
1818

1919
import (
2020
"context"
21+
"os"
2122

2223
"github.com/go-logr/logr"
2324
uberzap "go.uber.org/zap"
25+
"go.uber.org/zap/zapcore"
2426
"sigs.k8s.io/controller-runtime/pkg/log"
2527
"sigs.k8s.io/controller-runtime/pkg/log/zap"
2628
)
2729

30+
const (
31+
DEFAULT = 2
32+
VERBOSE = 3
33+
DEBUG = 4
34+
TRACE = 5
35+
36+
DefaultLogLevel = "error"
37+
)
38+
2839
// NewTestLogger creates a new Zap logger using the dev mode.
2940
func NewTestLogger() logr.Logger {
3041
return zap.New(zap.UseDevMode(true), zap.RawZapOpts(uberzap.AddCaller()))
@@ -34,3 +45,22 @@ func NewTestLogger() logr.Logger {
3445
func NewTestLoggerIntoContext(ctx context.Context) context.Context {
3546
return log.IntoContext(ctx, zap.New(zap.UseDevMode(true), zap.RawZapOpts(uberzap.AddCaller())))
3647
}
48+
49+
// Fatal calls logger.Error followed by os.Exit(1).
50+
//
51+
// This is a utility function and should not be used in production code!
52+
func Fatal(logger logr.Logger, err error, msg string, keysAndValues ...any) {
53+
logger.Error(err, msg, keysAndValues...)
54+
os.Exit(1)
55+
}
56+
57+
func InitLogging(text string, development bool) logr.Logger {
58+
level, _ := zapcore.ParseLevel(text)
59+
opts := &zap.Options{
60+
Development: development,
61+
Level: uberzap.NewAtomicLevelAt(level),
62+
}
63+
logger := zap.New(zap.UseFlagOptions(opts), zap.RawZapOpts(uberzap.AddCaller()))
64+
65+
return logger
66+
}

pkg/bbr/handlers/request.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,8 @@ import (
2424
eppb "github.com/envoyproxy/go-control-plane/envoy/service/ext_proc/v3"
2525
"sigs.k8s.io/controller-runtime/pkg/log"
2626

27+
logutil "sigs.k8s.io/gateway-api-inference-extension/internal/telemetry/logging"
2728
"sigs.k8s.io/gateway-api-inference-extension/pkg/bbr/metrics"
28-
logutil "sigs.k8s.io/gateway-api-inference-extension/pkg/epp/util/logging"
2929
)
3030

3131
const modelHeader = "X-Gateway-Model-Name"

pkg/bbr/handlers/request_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,8 @@ import (
2929
metricsutils "k8s.io/component-base/metrics/testutil"
3030
crmetrics "sigs.k8s.io/controller-runtime/pkg/metrics"
3131

32+
logutil "sigs.k8s.io/gateway-api-inference-extension/internal/telemetry/logging"
3233
"sigs.k8s.io/gateway-api-inference-extension/pkg/bbr/metrics"
33-
logutil "sigs.k8s.io/gateway-api-inference-extension/pkg/epp/util/logging"
3434
)
3535

3636
func TestHandleRequestBody(t *testing.T) {

pkg/bbr/handlers/server.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ import (
2727
"google.golang.org/grpc/status"
2828
"sigs.k8s.io/controller-runtime/pkg/log"
2929

30-
logutil "sigs.k8s.io/gateway-api-inference-extension/pkg/epp/util/logging"
30+
logutil "sigs.k8s.io/gateway-api-inference-extension/internal/telemetry/logging"
3131
requtil "sigs.k8s.io/gateway-api-inference-extension/pkg/epp/util/request"
3232
)
3333

pkg/bbr/handlers/server_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ import (
2626
"google.golang.org/protobuf/testing/protocmp"
2727
"sigs.k8s.io/controller-runtime/pkg/log"
2828

29-
logutil "sigs.k8s.io/gateway-api-inference-extension/pkg/epp/util/logging"
29+
logutil "sigs.k8s.io/gateway-api-inference-extension/internal/telemetry/logging"
3030
)
3131

3232
func TestProcessRequestBody(t *testing.T) {

0 commit comments

Comments
 (0)