log messages are bundled
parent
5a15e7b751
commit
a67353a055
|
@ -191,7 +191,10 @@ function connectWS() {
|
||||||
}
|
}
|
||||||
|
|
||||||
ws.onmessage = (msg) => {
|
ws.onmessage = (msg) => {
|
||||||
let data = JSON.parse(msg.data)
|
let messages = JSON.parse(msg.data)
|
||||||
|
|
||||||
|
for (i in messages) {
|
||||||
|
data = messages[i]
|
||||||
|
|
||||||
messageType = data.MessageType
|
messageType = data.MessageType
|
||||||
serviceName = data.ServiceName
|
serviceName = data.ServiceName
|
||||||
|
@ -222,6 +225,7 @@ function connectWS() {
|
||||||
addMessage(messageType, serviceType, serviceName, data.Msg, timestamp)
|
addMessage(messageType, serviceType, serviceName, data.Msg, timestamp)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
ws.onclose = (e) => {
|
ws.onclose = (e) => {
|
||||||
console.log("closed", e.reason.code)
|
console.log("closed", e.reason.code)
|
||||||
|
|
2
go.mod
2
go.mod
|
@ -3,7 +3,7 @@ module clickandjoin.app/managementsystem
|
||||||
go 1.18
|
go 1.18
|
||||||
|
|
||||||
require (
|
require (
|
||||||
git.clickandjoin.umbach.dev/ClickandJoin/go-cnj-helper v1.0.47
|
git.clickandjoin.umbach.dev/ClickandJoin/go-cnj-helper v1.0.54
|
||||||
github.com/gocql/gocql v0.0.0-20211015133455-b225f9b53fa1
|
github.com/gocql/gocql v0.0.0-20211015133455-b225f9b53fa1
|
||||||
github.com/gofiber/fiber/v2 v2.42.0
|
github.com/gofiber/fiber/v2 v2.42.0
|
||||||
github.com/gofiber/websocket/v2 v2.1.4
|
github.com/gofiber/websocket/v2 v2.1.4
|
||||||
|
|
2
go.sum
2
go.sum
|
@ -1,5 +1,7 @@
|
||||||
git.clickandjoin.umbach.dev/ClickandJoin/go-cnj-helper v1.0.47 h1:vbXCuHSA7IGpZSGyZfzi31MK/rlxBParBMDEZsdBdWk=
|
git.clickandjoin.umbach.dev/ClickandJoin/go-cnj-helper v1.0.47 h1:vbXCuHSA7IGpZSGyZfzi31MK/rlxBParBMDEZsdBdWk=
|
||||||
git.clickandjoin.umbach.dev/ClickandJoin/go-cnj-helper v1.0.47/go.mod h1:Jzc4/4ntrOLMOZYnUjkr1uBCVtRvPbEbQD+8kwBOdf4=
|
git.clickandjoin.umbach.dev/ClickandJoin/go-cnj-helper v1.0.47/go.mod h1:Jzc4/4ntrOLMOZYnUjkr1uBCVtRvPbEbQD+8kwBOdf4=
|
||||||
|
git.clickandjoin.umbach.dev/ClickandJoin/go-cnj-helper v1.0.54 h1:bAB8Z9qJgX/H+PNakoP1PK9Sox+oyy9+L4w7n/6JkBs=
|
||||||
|
git.clickandjoin.umbach.dev/ClickandJoin/go-cnj-helper v1.0.54/go.mod h1:/CvzIeBG4vJK/MgXzwmwCYwodiTGTMOYGDF3ao/fFLM=
|
||||||
github.com/andybalholm/brotli v1.0.4 h1:V7DdXeJtZscaqfNuAdSRuRFzuiKlHSC/Zh3zl9qY3JY=
|
github.com/andybalholm/brotli v1.0.4 h1:V7DdXeJtZscaqfNuAdSRuRFzuiKlHSC/Zh3zl9qY3JY=
|
||||||
github.com/andybalholm/brotli v1.0.4/go.mod h1:fO7iG3H7G2nSZ7m0zPUDn85XEX2GTukHGRSepvi9Eig=
|
github.com/andybalholm/brotli v1.0.4/go.mod h1:fO7iG3H7G2nSZ7m0zPUDn85XEX2GTukHGRSepvi9Eig=
|
||||||
github.com/bitly/go-hostpool v0.0.0-20171023180738-a3a6125de932 h1:mXoPYz/Ul5HYEDvkta6I8/rnYM5gSdSV2tJ6XbZuEtY=
|
github.com/bitly/go-hostpool v0.0.0-20171023180738-a3a6125de932 h1:mXoPYz/Ul5HYEDvkta6I8/rnYM5gSdSV2tJ6XbZuEtY=
|
||||||
|
|
|
@ -42,14 +42,14 @@ func GetSocketClient(clientId string) (socketClient *structs.SocketClient, ok bo
|
||||||
var lastLogMessages []gocnjhelper.RabbitMqLogMessage
|
var lastLogMessages []gocnjhelper.RabbitMqLogMessage
|
||||||
var muL sync.RWMutex
|
var muL sync.RWMutex
|
||||||
|
|
||||||
func AddLastLogMessage(rabbitMqLogMessage gocnjhelper.RabbitMqLogMessage) {
|
func AddLastLogMessages(rabbitMqLogMessage []gocnjhelper.RabbitMqLogMessage) {
|
||||||
muL.Lock()
|
muL.Lock()
|
||||||
|
|
||||||
if len(lastLogMessages) > utils.CachedLastLogMessages {
|
if len(lastLogMessages) > utils.CachedLastLogMessages {
|
||||||
lastLogMessages = lastLogMessages[1:]
|
lastLogMessages = lastLogMessages[1:]
|
||||||
}
|
}
|
||||||
|
|
||||||
lastLogMessages = append(lastLogMessages, rabbitMqLogMessage)
|
lastLogMessages = append(lastLogMessages, rabbitMqLogMessage...)
|
||||||
|
|
||||||
muL.Unlock()
|
muL.Unlock()
|
||||||
}
|
}
|
||||||
|
|
|
@ -41,18 +41,16 @@ func LogsMessagesHandling() {
|
||||||
LogsClient.Channel.NotifyClose(channelClosedChannel)
|
LogsClient.Channel.NotifyClose(channelClosedChannel)
|
||||||
|
|
||||||
case msg := <-msgs:
|
case msg := <-msgs:
|
||||||
gocnjhelper.LogDebugf("RECV msg %s", msg)
|
var logMessages []gocnjhelper.RabbitMqLogMessage
|
||||||
|
|
||||||
logMessage := gocnjhelper.RabbitMqLogMessage{}
|
if err := json.Unmarshal(msg.Body, &logMessages); err != nil {
|
||||||
|
|
||||||
if err := json.Unmarshal(msg.Body, &logMessage); err != nil {
|
|
||||||
gocnjhelper.LogErrorf("Failed to unmarshal json message, err: %s", err)
|
gocnjhelper.LogErrorf("Failed to unmarshal json message, err: %s", err)
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
socketclients.BroadcastLogMessage(logMessage)
|
socketclients.BroadcastLogMessage(logMessages)
|
||||||
|
|
||||||
cache.AddLastLogMessage(logMessage)
|
cache.AddLastLogMessages(logMessages)
|
||||||
|
|
||||||
msg.Ack(false)
|
msg.Ack(false)
|
||||||
}
|
}
|
||||||
|
|
|
@ -20,7 +20,7 @@ type SocketMessage struct {
|
||||||
Msg []byte
|
Msg []byte
|
||||||
}
|
}
|
||||||
|
|
||||||
func (socketClient *SocketClient) SendMessage(message gocnjhelper.RabbitMqLogMessage) error {
|
func (socketClient *SocketClient) SendMessage(message []gocnjhelper.RabbitMqLogMessage) error {
|
||||||
var marshaledMessage []byte
|
var marshaledMessage []byte
|
||||||
var err error
|
var err error
|
||||||
|
|
||||||
|
|
|
@ -8,18 +8,18 @@ import (
|
||||||
gocnjhelper "git.clickandjoin.umbach.dev/ClickandJoin/go-cnj-helper"
|
gocnjhelper "git.clickandjoin.umbach.dev/ClickandJoin/go-cnj-helper"
|
||||||
)
|
)
|
||||||
|
|
||||||
func BroadcastLogMessage(rabbitMqLogMessage gocnjhelper.RabbitMqLogMessage) {
|
func BroadcastLogMessage(rabbitMqLogMessage []gocnjhelper.RabbitMqLogMessage) {
|
||||||
for _, client := range cache.GetSocketClients() {
|
for _, client := range cache.GetSocketClients() {
|
||||||
client.SendMessage(rabbitMqLogMessage)
|
client.SendMessage(rabbitMqLogMessage)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func BroadcastViewersCountMessage(joined int) {
|
func BroadcastViewersCountMessage(joined int) {
|
||||||
BroadcastLogMessage(gocnjhelper.RabbitMqLogMessage{
|
BroadcastLogMessage([]gocnjhelper.RabbitMqLogMessage{{
|
||||||
MessageType: 100,
|
MessageType: 100,
|
||||||
ServiceName: 100,
|
ServiceName: 100,
|
||||||
ServiceType: uint8(joined),
|
ServiceType: uint8(joined),
|
||||||
Msg: strconv.Itoa(len(cache.GetSocketClients())),
|
Msg: strconv.Itoa(len(cache.GetSocketClients())),
|
||||||
Timestamp: time.Now().UnixMilli(),
|
Timestamp: time.Now().UnixMilli(),
|
||||||
})
|
}})
|
||||||
}
|
}
|
||||||
|
|
|
@ -35,13 +35,13 @@ func RunHub() {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
|
|
||||||
socketClient.SendMessage(gocnjhelper.RabbitMqLogMessage{
|
socketClient.SendMessage([]gocnjhelper.RabbitMqLogMessage{{
|
||||||
MessageType: 101,
|
MessageType: 101,
|
||||||
ServiceName: 101,
|
ServiceName: 101,
|
||||||
ServiceType: 101,
|
ServiceType: 101,
|
||||||
Msg: string(lastMessages),
|
Msg: string(lastMessages),
|
||||||
Timestamp: time.Now().Unix(),
|
Timestamp: time.Now().Unix(),
|
||||||
})
|
}})
|
||||||
}
|
}
|
||||||
|
|
||||||
case data := <-broadcast:
|
case data := <-broadcast:
|
||||||
|
|
Loading…
Reference in New Issue