event: mild improvement to severity
Change-Id: Ic371b54c5a85b04ad543a865a51a8b25cfadeee3
Reviewed-on: https://go-review.googlesource.com/c/exp/+/313429
Trust: Ian Cottrell <iancottrell@google.com>
Run-TryBot: Ian Cottrell <iancottrell@google.com>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Jonathan Amsterdam <jba@google.com>
diff --git a/event/severity/severity.go b/event/severity/severity.go
index 04040eb..06dfc96 100644
--- a/event/severity/severity.go
+++ b/event/severity/severity.go
@@ -6,9 +6,6 @@
import "golang.org/x/exp/event"
-// Key is the type for severity event labels.
-type Key struct{}
-
// Level represents a severity level of an event.
// The basic severity levels are designed to match the levels used in open telemetry.
// Smaller numerical values correspond to less severe events (such as debug events),
@@ -36,32 +33,36 @@
MaxLevel = Level(24)
)
+const Key = "level"
+
var (
// Trace is an event.Label for trace level events.
- Trace = Key{}.Of(TraceLevel)
+ Trace = Of(TraceLevel)
// Debug is an event.Label for debug level events.
- Debug = Key{}.Of(DebugLevel)
+ Debug = Of(DebugLevel)
// Info is an event.Label for info level events.
- Info = Key{}.Of(InfoLevel)
+ Info = Of(InfoLevel)
// Warning is an event.Label for warning level events.
- Warning = Key{}.Of(WarningLevel)
+ Warning = Of(WarningLevel)
// Error is an event.Label for error level events.
- Error = Key{}.Of(ErrorLevel)
+ Error = Of(ErrorLevel)
// Fatal is an event.Label for fatal level events.
- Fatal = Key{}.Of(FatalLevel)
+ Fatal = Of(FatalLevel)
)
-func (k Key) Name() string { return "severity" }
-
func dispatchSeverity(h event.ValueHandler, l event.Label) {
h.String(Level(l.Unpack64()).String())
}
// Of creates a new Label with this key and the supplied value.
-func (k Key) Of(l Level) event.Label { return event.Of64(k.Name(), dispatchSeverity, uint64(l)) }
+func Of(l Level) event.Label {
+ return event.Of64(Key, dispatchSeverity, uint64(l))
+}
// From can be used to get a value from a Label.
-func (k Key) From(t event.Label) Level { return Level(t.Unpack64()) }
+func From(t event.Label) Level {
+ return Level(t.Unpack64())
+}
func (l Level) Class() Level {
switch {
diff --git a/event/severity/severity_test.go b/event/severity/severity_test.go
index e103eb6..e90cac2 100644
--- a/event/severity/severity_test.go
+++ b/event/severity/severity_test.go
@@ -25,13 +25,13 @@
events: func(ctx context.Context) { event.To(ctx).With(severity.Debug).Log("a message") },
expect: `
2020/03/05 14:27:48 [log:1] a message
- severity=debug
+ level=debug
`}, {
name: "info",
events: func(ctx context.Context) { event.To(ctx).With(severity.Info).Log("a message") },
expect: `
2020/03/05 14:27:48 [log:1] a message
- severity=info
+ level=info
`}} {
h := &captureHandler{}
h.printer = event.NewPrinter(&h.buf)