mirror of
https://github.com/duanhf2012/origin.git
synced 2026-03-13 11:37:41 +08:00
打印系统websocet连接日志
This commit is contained in:
@@ -70,6 +70,10 @@ type WebsocketServer struct {
|
|||||||
iswss bool
|
iswss bool
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const (
|
||||||
|
MAX_MSG_COUNT = 4096
|
||||||
|
)
|
||||||
|
|
||||||
func (slf *WebsocketServer) Init(port uint16) {
|
func (slf *WebsocketServer) Init(port uint16) {
|
||||||
|
|
||||||
slf.port = port
|
slf.port = port
|
||||||
@@ -80,10 +84,11 @@ func (slf *WebsocketServer) CreateClient(conn *websocket.Conn) *WSClient {
|
|||||||
slf.locker.Lock()
|
slf.locker.Lock()
|
||||||
slf.maxClientid++
|
slf.maxClientid++
|
||||||
clientid := slf.maxClientid
|
clientid := slf.maxClientid
|
||||||
pclient := &WSClient{clientid, conn, make(chan WSMessage, 1024)}
|
pclient := &WSClient{clientid, conn, make(chan WSMessage, MAX_MSG_COUNT)}
|
||||||
slf.mapClient[pclient.clientid] = pclient
|
slf.mapClient[pclient.clientid] = pclient
|
||||||
slf.locker.Unlock()
|
slf.locker.Unlock()
|
||||||
|
|
||||||
|
service.GetLogger().Printf(sysmodule.LEVER_INFO, "Client id %d is connected.", clientid)
|
||||||
return pclient
|
return pclient
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -94,6 +99,7 @@ func (slf *WebsocketServer) ReleaseClient(pclient *WSClient) {
|
|||||||
slf.locker.Unlock()
|
slf.locker.Unlock()
|
||||||
//关闭写管道
|
//关闭写管道
|
||||||
close(pclient.bwritemsg)
|
close(pclient.bwritemsg)
|
||||||
|
service.GetLogger().Printf(sysmodule.LEVER_INFO, "Client id %d is disconnected.", pclient.clientid)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (slf *WebsocketServer) SetupReciver(pattern string, messageReciver IMessageReceiver, bEnableCompression bool) {
|
func (slf *WebsocketServer) SetupReciver(pattern string, messageReciver IMessageReceiver, bEnableCompression bool) {
|
||||||
@@ -157,6 +163,11 @@ func (slf *WebsocketServer) SendMsg(clientid uint64, messageType int, msg []byte
|
|||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if len(value.bwritemsg) >= MAX_MSG_COUNT {
|
||||||
|
service.GetLogger().Printf(sysmodule.LEVER_ERROR, "message chan is full :%d\n", len(value.bwritemsg))
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
|
||||||
value.bwritemsg <- WSMessage{messageType, msg}
|
value.bwritemsg <- WSMessage{messageType, msg}
|
||||||
|
|
||||||
return true
|
return true
|
||||||
|
|||||||
Reference in New Issue
Block a user