m/p/logtree: add kmsg pipe
This allows ingesting Linux kernel (kmsg) logs into logtree with
the original metadata (timestamp, severity) preserved.
Change-Id: Ibb6e3a7a0ae4a008b8e9c98beccb3a95c067cb75
Reviewed-on: https://review.monogon.dev/c/monogon/+/2044
Reviewed-by: Leopold Schabel <leo@monogon.tech>
Tested-by: Jenkins CI
diff --git a/metropolis/pkg/logtree/BUILD.bazel b/metropolis/pkg/logtree/BUILD.bazel
index a520e8f..595e8cf 100644
--- a/metropolis/pkg/logtree/BUILD.bazel
+++ b/metropolis/pkg/logtree/BUILD.bazel
@@ -9,6 +9,7 @@
"journal_entry.go",
"journal_subscriber.go",
"klog.go",
+ "kmsg.go",
"leveled.go",
"leveled_payload.go",
"logtree.go",
@@ -29,7 +30,15 @@
"@org_golang_google_protobuf//types/known/timestamppb",
"@org_uber_go_zap//:zap",
"@org_uber_go_zap//zapcore",
- ],
+ ] + select({
+ "@io_bazel_rules_go//go/platform:android": [
+ "@org_golang_x_sys//unix",
+ ],
+ "@io_bazel_rules_go//go/platform:linux": [
+ "@org_golang_x_sys//unix",
+ ],
+ "//conditions:default": [],
+ }),
)
go_test(
@@ -37,6 +46,7 @@
srcs = [
"journal_test.go",
"klog_test.go",
+ "kmsg_test.go",
"logtree_test.go",
"zap_test.go",
],