/
server_log.go
55 lines (43 loc) · 1.42 KB
/
server_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
50
51
52
53
54
55
package worker
import (
"github.com/pocketbase/pocketbase/core"
"github.com/pocketbase/pocketbase/models"
)
type ServerLog struct {
serverId string
msgType string
message string
payload string
}
func NewServerLog(serverId string, msgType string, message string, payload string) ServerLog {
return ServerLog{
serverId: serverId,
msgType: msgType,
message: message,
payload: payload,
}
}
func SaveServerLog(message ServerLog) error {
serverLogsCollection, _ := app.Dao().FindCollectionByNameOrId("serverLogs")
serverLog := models.NewRecord(serverLogsCollection)
serverLog.Set("serverId", message.serverId)
serverLog.Set("type", message.msgType)
serverLog.Set("message", message.message)
serverLog.Set("payload", message.payload)
return app.Dao().SaveRecord(serverLog)
}
func CreateServerLog(serverRecord *models.Record, msgType string, message string, payload string) error {
serverLogsCollection, _ := app.Dao().FindCollectionByNameOrId("serverLogs")
serverLog := models.NewRecord(serverLogsCollection)
serverLog.Set("serverId", serverRecord.Id)
serverLog.Set("type", msgType)
serverLog.Set("message", message)
serverLog.Set("payload", payload)
if err := app.Dao().SaveRecord(serverLog); err != nil {
return err
}
serverRecord.Set("lastState", msgType)
app.Dao().SaveRecord(serverRecord)
event := &core.RecordCreateEvent{Record: serverLog}
return app.OnRecordAfterCreateRequest().Trigger(event)
}