-
Notifications
You must be signed in to change notification settings - Fork 0
/
hwlog_adaptor.go
146 lines (132 loc) · 3.59 KB
/
hwlog_adaptor.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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
/* Copyright(C) 2023. Huawei Technologies Co.,Ltd. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
// Package hwlog provides the capability of processing Huawei log rules.
package hwlog
import (
"context"
"errors"
)
// RunLog run logger
var RunLog *logger
// OpLog operate logger
var OpLog *logger
// SecLog security logger
var SecLog *logger
// UserLog user logger
var UserLog *logger
// DebugLog debug logger
var DebugLog *logger
// InitRunLogger initialize run logger
func InitRunLogger(config *LogConfig, ctx context.Context) error {
if config == nil {
return errors.New("run logger config is nil")
}
if RunLog != nil && RunLog.isInit() {
RunLog.Warn("run logger is been initialized.")
return nil
}
RunLog = new(logger)
if RunLog == nil {
return errors.New("malloc new logger flied")
}
if err := RunLog.setLogger(config); err != nil {
return err
}
if !RunLog.isInit() {
return errors.New("run logger init failed")
}
return nil
}
// InitOperateLogger initialize operate logger
func InitOperateLogger(config *LogConfig, ctx context.Context) error {
if config == nil {
return errors.New("operate logger config is nil")
}
if OpLog != nil && OpLog.isInit() {
OpLog.Warn("operate logger is been initialized.")
return nil
}
OpLog = new(logger)
if OpLog == nil {
return errors.New("malloc new logger flied")
}
if err := OpLog.setLogger(config); err != nil {
return err
}
if !OpLog.isInit() {
return errors.New("operate logger init failed")
}
return nil
}
// InitSecurityLogger initialize security logger
func InitSecurityLogger(config *LogConfig, ctx context.Context) error {
if config == nil {
return errors.New("security logger config is nil")
}
if SecLog != nil && SecLog.isInit() {
SecLog.Warn("security logger is been initialized.")
return nil
}
SecLog = new(logger)
if SecLog == nil {
return errors.New("malloc new logger flied")
}
if err := SecLog.setLogger(config); err != nil {
return err
}
if !SecLog.isInit() {
return errors.New("security logger init failed")
}
return nil
}
// InitUserLogger initialize user logger
func InitUserLogger(config *LogConfig, ctx context.Context) error {
if config == nil {
return errors.New("user logger config is nil")
}
if UserLog != nil && UserLog.isInit() {
UserLog.Warn("user logger is been initialized.")
return nil
}
UserLog = new(logger)
if UserLog == nil {
return errors.New("malloc new logger flied")
}
if err := UserLog.setLogger(config); err != nil {
return err
}
if !UserLog.isInit() {
return errors.New("user logger init failed")
}
return nil
}
// InitDebugLogger initialize debug logger
func InitDebugLogger(config *LogConfig, ctx context.Context) error {
if config == nil {
return errors.New("debug logger config is nil")
}
if DebugLog != nil && DebugLog.isInit() {
DebugLog.Warn("debug logger is been initialized.")
return nil
}
DebugLog = new(logger)
if DebugLog == nil {
return errors.New("malloc new logger flied")
}
if err := DebugLog.setLogger(config); err != nil {
return err
}
if !DebugLog.isInit() {
return errors.New("debug logger init failed")
}
return nil
}