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/node/core/main.go b/metropolis/node/core/main.go
index e675f87..f737bd6 100644
--- a/metropolis/node/core/main.go
+++ b/metropolis/node/core/main.go
@@ -141,9 +141,7 @@
 	ctxS, ctxC := context.WithCancel(context.Background())
 
 	// Make node-wide cluster resolver.
-	res := resolver.New(ctxS, resolver.WithLogger(func(f string, args ...interface{}) {
-		lt.MustLeveledFor("resolver").WithAddedStackDepth(1).Infof(f, args...)
-	}))
+	res := resolver.New(ctxS, resolver.WithLogger(lt.MustLeveledFor("resolver")))
 
 	// Function which performs core, one-way initialization of the node. This means
 	// waiting for the network, starting the cluster manager, and then starting all