mirror of
https://github.com/m1k1o/neko.git
synced 2024-07-24 14:40:50 +12:00
receive frontend logs using WS.
This commit is contained in:
@ -41,6 +41,13 @@ func (h *MessageHandlerCtx) Message(session types.Session, data types.WebSocketM
|
||||
|
||||
var err error
|
||||
switch data.Event {
|
||||
// System Events
|
||||
case event.SYSTEM_LOGS:
|
||||
payload := &message.SystemLogs{}
|
||||
err = utils.Unmarshal(payload, data.Payload, func() error {
|
||||
return h.systemLogs(session, payload)
|
||||
})
|
||||
|
||||
// Signal Events
|
||||
case event.SIGNAL_REQUEST:
|
||||
payload := &message.SignalVideo{}
|
||||
|
@ -3,6 +3,8 @@ package handler
|
||||
import (
|
||||
"errors"
|
||||
|
||||
"github.com/rs/zerolog"
|
||||
|
||||
"demodesk/neko/internal/types"
|
||||
"demodesk/neko/internal/types/event"
|
||||
"demodesk/neko/internal/types/message"
|
||||
@ -80,3 +82,17 @@ func (h *MessageHandlerCtx) systemAdmin(session types.Session) error {
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func (h *MessageHandlerCtx) systemLogs(session types.Session, payload *message.SystemLogs) error {
|
||||
for _, log := range *payload {
|
||||
level, _ := zerolog.ParseLevel(log.Level)
|
||||
|
||||
h.logger.WithLevel(level).
|
||||
Fields(log.Fields).
|
||||
Str("session_id", session.ID()).
|
||||
Str("service", "frontend").
|
||||
Msg(log.Message)
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
Reference in New Issue
Block a user