osbase/logtree.LeveledLogger -> go/logging.Leveled
This factors out the common leveled logger interface out of the logtree.
We want to use the same interface outside of logtree/supervisor usage
within the resolver code, which will be exposed to clients.
Change-Id: I299e76d91e8cefddf8f36f1e58432418c4694df2
Reviewed-on: https://review.monogon.dev/c/monogon/+/3411
Reviewed-by: Tim Windelschmidt <tim@monogon.tech>
Tested-by: Jenkins CI
diff --git a/osbase/logtree/kmsg.go b/osbase/logtree/kmsg.go
index 03bb6ff..11e140a 100644
--- a/osbase/logtree/kmsg.go
+++ b/osbase/logtree/kmsg.go
@@ -14,6 +14,8 @@
"time"
"golang.org/x/sys/unix"
+
+ "source.monogon.dev/go/logging"
)
const (
@@ -29,7 +31,7 @@
// KmsgPipe pipes logs from the kernel kmsg interface at /dev/kmsg into the
// given logger.
-func KmsgPipe(ctx context.Context, lt LeveledLogger) error {
+func KmsgPipe(ctx context.Context, lt logging.Leveled) error {
publisher, ok := lt.(*leveledPublisher)
if !ok {
// Fail fast, as this is a programming error.
@@ -119,18 +121,18 @@
monotonicFromNow := monotonic - monotonicSinceBoot
- var severity Severity
+ var severity logging.Severity
switch loglevel {
case loglevelEmergency, loglevelAlert:
- severity = FATAL
+ severity = logging.FATAL
case loglevelCritical, loglevelError:
- severity = ERROR
+ severity = logging.ERROR
case loglevelWarning:
- severity = WARNING
+ severity = logging.WARNING
case loglevelNotice, loglevelInfo, loglevelDebug:
- severity = INFO
+ severity = logging.INFO
default:
- severity = INFO
+ severity = logging.INFO
}
return &LeveledPayload{