This repository has been archived by the owner on Aug 26, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathchecker.go
61 lines (55 loc) · 1.47 KB
/
checker.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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
package logrlint
import "sort"
var (
defaultEnabledCheckers = []string{"logr", "klog", "zap"}
loggerCheckersByName = loggerCheckerMap{
"logr": {
packageImport: "github.com/go-logr/logr",
funcs: newStringSet(
"(github.com/go-logr/logr.Logger).Error",
"(github.com/go-logr/logr.Logger).Info",
"(github.com/go-logr/logr.Logger).WithValues"),
},
"klog": {
packageImport: "k8s.io/klog/v2",
funcs: newStringSet(
"k8s.io/klog/v2.InfoS",
"k8s.io/klog/v2.InfoSDepth",
"k8s.io/klog/v2.ErrorS",
"(k8s.io/klog/v2.Verbose).InfoS",
"(k8s.io/klog/v2.Verbose).InfoSDepth",
"(k8s.io/klog/v2.Verbose).ErrorS",
),
},
"zap": {
packageImport: "go.uber.org/zap",
funcs: newStringSet(
"(*go.uber.org/zap.SugaredLogger).With",
"(*go.uber.org/zap.SugaredLogger).Debugw",
"(*go.uber.org/zap.SugaredLogger).Infow",
"(*go.uber.org/zap.SugaredLogger).Warnw",
"(*go.uber.org/zap.SugaredLogger).Errorw",
"(*go.uber.org/zap.SugaredLogger).DPanicw",
"(*go.uber.org/zap.SugaredLogger).Panicw",
"(*go.uber.org/zap.SugaredLogger).Fatalw",
),
},
}
)
type loggerChecker struct {
packageImport string
funcs stringSet
}
type loggerCheckerMap map[string]loggerChecker
func (m loggerCheckerMap) HasKey(key string) bool {
_, ok := m[key]
return ok
}
func (m loggerCheckerMap) Keys() []string {
names := make([]string, 0, len(m))
for name := range m {
names = append(names, name)
}
sort.Strings(names)
return names
}