Maintenance: new logging, shorter with less deps

This commit is contained in:
Quentin McGaw
2021-02-25 23:51:29 +00:00
parent 1748a2ae12
commit c54ee71e1d
21 changed files with 60 additions and 105 deletions

View File

@@ -29,16 +29,16 @@ func (l *looper) collectLines(wg *sync.WaitGroup, stdout, stderr <-chan string)
continue // filtered out
}
if errLine {
level = logging.ErrorLevel
level = logging.LevelError
}
switch level {
case logging.DebugLevel:
case logging.LevelDebug:
l.logger.Debug(line)
case logging.InfoLevel:
case logging.LevelInfo:
l.logger.Info(line)
case logging.WarnLevel:
case logging.LevelWarn:
l.logger.Warn(line)
case logging.ErrorLevel:
case logging.LevelError:
l.logger.Error(line)
}
if strings.Contains(line, "Initialization Sequence Completed") {
@@ -53,21 +53,21 @@ func processLogLine(s string) (filtered string, level logging.Level) {
"NOTE: UID/GID downgrade will be delayed because of --client, --pull, or --up-delay",
} {
if s == ignored {
return "", ""
return "", logging.LevelDebug
}
}
switch {
case strings.HasPrefix(s, "NOTE: "):
filtered = strings.TrimPrefix(s, "NOTE: ")
level = logging.InfoLevel
level = logging.LevelInfo
case strings.HasPrefix(s, "WARNING: "):
filtered = strings.TrimPrefix(s, "WARNING: ")
level = logging.WarnLevel
level = logging.LevelWarn
case strings.HasPrefix(s, "Options error: "):
filtered = strings.TrimPrefix(s, "Options error: ")
level = logging.ErrorLevel
level = logging.LevelError
case s == "Initialization Sequence Completed":
return color.HiGreenString(s), logging.InfoLevel
return color.HiGreenString(s), logging.LevelInfo
case s == "AUTH: Received control message: AUTH_FAILED":
filtered = s + `
@@ -76,7 +76,7 @@ Your credentials might be wrong 🤨
💡 If you use Private Internet Access, check https://github.com/qdm12/gluetun/issues/265
`
level = logging.ErrorLevel
level = logging.LevelError
case strings.Contains(s, "TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)"): //nolint:lll
filtered = s + `
🚒🚒🚒🚒🚒🚨🚨🚨🚨🚨🚨🚒🚒🚒🚒🚒
@@ -93,7 +93,7 @@ That error usually happens because either:
`
default:
filtered = s
level = logging.InfoLevel
level = logging.LevelInfo
}
filtered = constants.ColorOpenvpn().Sprintf(filtered)
return filtered, level

View File

@@ -14,36 +14,36 @@ func Test_processLogLine(t *testing.T) {
filtered string
level logging.Level
}{
"empty string": {"", "", logging.InfoLevel},
"random string": {"asdasqdb", "asdasqdb", logging.InfoLevel},
"empty string": {"", "", logging.LevelInfo},
"random string": {"asdasqdb", "asdasqdb", logging.LevelInfo},
"openvpn unknown": {
"message",
"message",
logging.InfoLevel},
logging.LevelInfo},
"openvpn note": {
"NOTE: message",
"message",
logging.InfoLevel},
logging.LevelInfo},
"openvpn warning": {
"WARNING: message",
"message",
logging.WarnLevel},
logging.LevelWarn},
"openvpn options error": {
"Options error: message",
"message",
logging.ErrorLevel},
logging.LevelError},
"openvpn ignored message": {
"NOTE: UID/GID downgrade will be delayed because of --client, --pull, or --up-delay",
"",
""},
logging.LevelDebug},
"openvpn success": {
"Initialization Sequence Completed",
"Initialization Sequence Completed",
logging.InfoLevel},
logging.LevelInfo},
"openvpn auth failed": {
"AUTH: Received control message: AUTH_FAILED",
"AUTH: Received control message: AUTH_FAILED\n\nYour credentials might be wrong 🤨\n\n💡 If you use Private Internet Access, check https://github.com/qdm12/gluetun/issues/265\n\n", //nolint:lll
logging.ErrorLevel},
logging.LevelError},
}
for name, tc := range tests {
tc := tc

View File

@@ -75,8 +75,8 @@ func NewLooper(settings configuration.OpenVPN,
conf: conf,
fw: fw,
routing: routing,
logger: logger.WithPrefix("openvpn: "),
pfLogger: logger.WithPrefix("port forwarding: "),
logger: logger.NewChild(logging.SetPrefix("openvpn: ")),
pfLogger: logger.NewChild(logging.SetPrefix("port forwarding: ")),
client: client,
openFile: openFile,
tunnelReady: tunnelReady,

View File

@@ -29,7 +29,7 @@ type configurator struct {
func NewConfigurator(logger logging.Logger, os os.OS, unix unix.Unix) Configurator {
return &configurator{
logger: logger.WithPrefix("openvpn configurator: "),
logger: logger.NewChild(logging.SetPrefix("openvpn configurator: ")),
commander: command.NewCommander(),
os: os,
unix: unix,