forked from wailsapp/wails
-
Notifications
You must be signed in to change notification settings - Fork 0
/
log.go
49 lines (44 loc) · 1.04 KB
/
log.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
package dispatcher
import (
"github.com/frankfang/wails/v2/internal/logger"
pkgLogger "github.com/frankfang/wails/v2/pkg/logger"
"github.com/pkg/errors"
)
var logLevelMap = map[byte]logger.LogLevel{
'1': pkgLogger.TRACE,
'2': pkgLogger.DEBUG,
'3': pkgLogger.INFO,
'4': pkgLogger.WARNING,
'5': pkgLogger.ERROR,
}
func (d *Dispatcher) processLogMessage(message string) (string, error) {
if len(message) < 3 {
return "", errors.New("Invalid Log Message: " + message)
}
messageText := message[2:]
switch message[1] {
case 'T':
d.log.Trace(messageText)
case 'P':
d.log.Print(messageText)
case 'D':
d.log.Debug(messageText)
case 'I':
d.log.Info(messageText)
case 'W':
d.log.Warning(messageText)
case 'E':
d.log.Error(messageText)
case 'F':
d.log.Fatal(messageText)
case 'S':
loglevel, exists := logLevelMap[message[2]]
if !exists {
return "", errors.New("Invalid Set Log Level Message: " + message)
}
d.log.SetLogLevel(loglevel)
default:
return "", errors.New("Invalid Log Message: " + message)
}
return "", nil
}