metropolis/resolver: use logging.Leveled
This moves the resover client library to use logging.Leveled instead of
an ad-hoc logger interface.
By now having multiple level of logs, and by defaulting metroctl to show
errors and warnings, this should fix #302.
Change-Id: I7cae1cf1be377ec824ad46ea1da1b23b46e01903
Reviewed-on: https://review.monogon.dev/c/monogon/+/3432
Reviewed-by: Lorenz Brun <lorenz@monogon.tech>
Tested-by: Jenkins CI
diff --git a/metropolis/test/launch/BUILD.bazel b/metropolis/test/launch/BUILD.bazel
index c217b35..7c6c6d0 100644
--- a/metropolis/test/launch/BUILD.bazel
+++ b/metropolis/test/launch/BUILD.bazel
@@ -39,6 +39,7 @@
"xNodeImagePath": "$(rlocationpath //metropolis/node:image )",
},
deps = [
+ "//go/logging",
"//go/qcow2",
"//metropolis/cli/metroctl/core",
"//metropolis/node",
diff --git a/metropolis/test/launch/cluster.go b/metropolis/test/launch/cluster.go
index e0a0473..8be6736 100644
--- a/metropolis/test/launch/cluster.go
+++ b/metropolis/test/launch/cluster.go
@@ -41,6 +41,7 @@
apb "source.monogon.dev/metropolis/proto/api"
cpb "source.monogon.dev/metropolis/proto/common"
+ "source.monogon.dev/go/logging"
"source.monogon.dev/go/qcow2"
metroctl "source.monogon.dev/metropolis/cli/metroctl/core"
"source.monogon.dev/metropolis/node"
@@ -199,9 +200,9 @@
func (c *Cluster) CuratorClient() (*grpc.ClientConn, error) {
if c.authClient == nil {
authCreds := rpc.NewAuthenticatedCredentials(c.Owner, rpc.WantInsecure())
- r := resolver.New(c.ctxT, resolver.WithLogger(func(f string, args ...interface{}) {
- launch.Log("Cluster: client resolver: %s", fmt.Sprintf(f, args...))
- }))
+ r := resolver.New(c.ctxT, resolver.WithLogger(logging.NewFunctionBackend(func(severity logging.Severity, msg string) {
+ launch.Log("Cluster: client resolver: %s: %s", severity, msg)
+ })))
for _, n := range c.NodeIDs {
ep, err := resolver.NodeWithDefaultPort(n)
if err != nil {