-
Notifications
You must be signed in to change notification settings - Fork 22
/
Copy pathseverity.go
47 lines (43 loc) · 1.24 KB
/
severity.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
package googlecloud
import (
"github.com/open-telemetry/opentelemetry-log-collection/entry"
sev "google.golang.org/genproto/googleapis/logging/type"
)
var fastSev = map[entry.Severity]sev.LogSeverity{
entry.Fatal2: sev.LogSeverity_EMERGENCY,
entry.Fatal: sev.LogSeverity_EMERGENCY,
entry.Error3: sev.LogSeverity_ALERT,
entry.Error2: sev.LogSeverity_CRITICAL,
entry.Error: sev.LogSeverity_ERROR,
entry.Warn: sev.LogSeverity_WARNING,
entry.Info2: sev.LogSeverity_NOTICE,
entry.Info: sev.LogSeverity_INFO,
entry.Debug: sev.LogSeverity_DEBUG,
entry.Trace: sev.LogSeverity_DEBUG,
entry.Default: sev.LogSeverity_DEFAULT,
}
func convertSeverity(s entry.Severity) sev.LogSeverity {
if logSev, ok := fastSev[s]; ok {
return logSev
}
switch {
case s >= entry.Fatal:
return sev.LogSeverity_EMERGENCY
case s >= entry.Error3:
return sev.LogSeverity_ALERT
case s >= entry.Error2:
return sev.LogSeverity_CRITICAL
case s >= entry.Error:
return sev.LogSeverity_ERROR
case s >= entry.Warn:
return sev.LogSeverity_WARNING
case s >= entry.Info2:
return sev.LogSeverity_NOTICE
case s >= entry.Info:
return sev.LogSeverity_INFO
case s > entry.Default:
return sev.LogSeverity_DEBUG
default:
return sev.LogSeverity_DEFAULT
}
}