This repository has been archived by the owner on Jun 4, 2022. It is now read-only.
/
event.go
62 lines (51 loc) · 1.48 KB
/
event.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
package event
import (
"fmt"
"github.com/MikMuellerDev/smarthome/core/database"
"github.com/sirupsen/logrus"
)
var log *logrus.Logger
func InitLogger(logger *logrus.Logger) {
log = logger
}
// Adds a log event to the database and prints it to the console
// Used by the other functions below
func logEvent(name string, description string, level int) error {
err := database.AddLogEvent(name, description, level)
log.Trace(fmt.Sprintf("[EVENT](%d) %s: %s", level, name, description))
if err != nil {
log.Error("Could not log event: failed to communicate with database", err.Error())
return err
}
return nil
}
func Trace(name string, description string) {
if err := logEvent(name, description, 0); err != nil {
log.Error("Failed to log trace event")
}
}
func Debug(name string, description string) {
if err := logEvent(name, description, 1); err != nil {
log.Error("Failed to log debug event")
}
}
func Info(name string, description string) {
if err := logEvent(name, description, 2); err != nil {
log.Error("Failed to log info event")
}
}
func Warn(name string, description string) {
if err := logEvent(name, description, 3); err != nil {
log.Error("Failed to log warn event")
}
}
func Error(name string, description string) {
if err := logEvent(name, description, 4); err != nil {
log.Error("Failed to log error event")
}
}
func Fatal(name string, description string) {
if err := logEvent(name, description, 5); err != nil {
log.Error("Failed to log fatal event")
}
}