添加日志
This commit is contained in:
parent
5ada0828ca
commit
205f934aec
|
@ -1,7 +1,6 @@
|
|||
package handler
|
||||
|
||||
import (
|
||||
"mongo.games.com/goserver/core/logger"
|
||||
"mongo.games.com/goserver/core/netlib"
|
||||
"mongo.games.com/goserver/srvlib"
|
||||
)
|
||||
|
@ -30,7 +29,6 @@ func (this *SessionHandlerServiceRegiste) GetInterestOps() uint {
|
|||
func (this *SessionHandlerServiceRegiste) OnSessionOpened(s *netlib.Session) {
|
||||
sc := s.GetSessionConfig()
|
||||
if sc.IsClient {
|
||||
logger.Logger.Trace("SessionHandlerServiceRegiste:OnSessionOpened ReportService->", sc.Name)
|
||||
/*报告自己的监听信息*/
|
||||
srvlib.ServiceMgr.ReportService(s)
|
||||
} else {
|
||||
|
@ -42,7 +40,6 @@ func (this *SessionHandlerServiceRegiste) OnSessionOpened(s *netlib.Session) {
|
|||
func (this *SessionHandlerServiceRegiste) OnSessionClosed(s *netlib.Session) {
|
||||
sc := s.GetSessionConfig()
|
||||
if !sc.IsClient {
|
||||
logger.Logger.Warn("SessionHandlerServiceRegiste:OnSessionClosed ClearServiceBySession")
|
||||
srvlib.ServiceMgr.ClearServiceBySession(s)
|
||||
}
|
||||
}
|
||||
|
|
|
@ -25,19 +25,32 @@ func (sfl *SessionHandlerSrvRegiste) GetInterestOps() uint {
|
|||
}
|
||||
|
||||
func (sfl *SessionHandlerSrvRegiste) OnSessionOpened(s *netlib.Session) {
|
||||
registePacket := &protocol.SSSrvRegiste{
|
||||
registerPacket := &protocol.SSSrvRegiste{
|
||||
Id: int32(netlib.Config.SrvInfo.Id),
|
||||
Type: int32(netlib.Config.SrvInfo.Type),
|
||||
AreaId: int32(netlib.Config.SrvInfo.AreaID),
|
||||
Name: netlib.Config.SrvInfo.Name,
|
||||
Data: netlib.Config.SrvInfo.Data,
|
||||
}
|
||||
s.Send(int(protocol.SrvlibPacketID_PACKET_SS_REGISTE), registePacket)
|
||||
logger.Logger.Tracef("SessionHandlerSrvRegiste.OnSessionOpened, send registe packet to %v", registePacket)
|
||||
s.Send(int(protocol.SrvlibPacketID_PACKET_SS_REGISTE), registerPacket)
|
||||
if s.GetSessionConfig().IsClient {
|
||||
logger.Logger.Infof("目标服务器:%v 发送服务器信息(客户端):%v", s.GetSessionConfig().Name, registerPacket)
|
||||
} else {
|
||||
logger.Logger.Infof("发送服务器信息(服务端):%v", registerPacket)
|
||||
}
|
||||
}
|
||||
|
||||
func (sfl *SessionHandlerSrvRegiste) OnSessionClosed(s *netlib.Session) {
|
||||
logger.Logger.Tracef("SessionHandlerSrvRegiste.OnSessionClosed")
|
||||
if s.GetSessionConfig().IsClient {
|
||||
logger.Logger.Infof("服务器 %v 断开连接", s.GetSessionConfig().Name)
|
||||
} else {
|
||||
d, ok := s.GetAttribute(srvlib.SessionAttributeServerInfo).(*protocol.SSSrvRegiste)
|
||||
if ok {
|
||||
logger.Logger.Infof("服务器断开连接:%v", d.GetName())
|
||||
} else {
|
||||
logger.Logger.Infof("服务器断开连接")
|
||||
}
|
||||
}
|
||||
srvlib.ServerSessionMgrSington.UnregisteSession(s)
|
||||
}
|
||||
|
||||
|
|
|
@ -47,7 +47,7 @@ func (this *serviceMgr) RegisteService(s *netlib.Session, services []*protocol.S
|
|||
}
|
||||
if _, exist := this.servicesPool[srvtype][srvid]; !exist {
|
||||
this.servicesPool[srvtype][srvid] = service
|
||||
logger.Logger.Infof("ServiceMgr RegisteService Name:%v Ip:%v Port:%v", service.GetSrvName(), service.GetIp(), service.GetPort())
|
||||
logger.Logger.Infof("服务注册:%v", service)
|
||||
pack := &protocol.SSServiceInfo{}
|
||||
pack.Service = service
|
||||
sessiontypes := GetCareSessionsByService(service.GetSrvType())
|
||||
|
@ -55,17 +55,19 @@ func (this *serviceMgr) RegisteService(s *netlib.Session, services []*protocol.S
|
|||
for _, v1 := range sessiontypes {
|
||||
// 地区和服务类型
|
||||
ServerSessionMgrSington.Broadcast(int(protocol.SrvlibPacketID_PACKET_SS_SERVICE_INFO), pack, int(areaId), int(v1))
|
||||
logger.Logger.Infof("广播服务信息:%v ==> AreaId:%v ServerType:%v", service.GetSrvName(), areaId, v1)
|
||||
}
|
||||
|
||||
if len(this.listeners) != 0 {
|
||||
for _, l := range this.listeners {
|
||||
l.OnRegiste(services)
|
||||
}
|
||||
}
|
||||
//if len(this.listeners) != 0 {
|
||||
// for _, l := range this.listeners {
|
||||
// l.OnRegiste(services)
|
||||
// }
|
||||
//}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// UnregisteService 广播服务关闭
|
||||
func (this *serviceMgr) UnregisteService(service *protocol.ServiceInfo) {
|
||||
if this == nil || service == nil {
|
||||
return
|
||||
|
@ -76,24 +78,26 @@ func (this *serviceMgr) UnregisteService(service *protocol.ServiceInfo) {
|
|||
if v, has := this.servicesPool[srvtype]; has {
|
||||
if ss, exist := v[srvid]; exist && ss == service {
|
||||
delete(v, srvid)
|
||||
logger.Logger.Infof("ServiceMgr UnregisteService srvType:%v srvId:%v", srvtype, srvid)
|
||||
logger.Logger.Infof("服务关闭:%v", service)
|
||||
pack := &protocol.SSServiceShut{}
|
||||
pack.Service = service
|
||||
sessiontypes := GetCareSessionsByService(service.GetSrvType())
|
||||
areaId := service.GetAreaId()
|
||||
for _, v1 := range sessiontypes {
|
||||
ServerSessionMgrSington.Broadcast(int(protocol.SrvlibPacketID_PACKET_SS_SERVICE_SHUT), pack, int(areaId), int(v1))
|
||||
logger.Logger.Infof("广播服务关闭:%v ==> AreaId:%v ServerType:%v", service.GetSrvName(), areaId, v1)
|
||||
}
|
||||
if len(this.listeners) != 0 {
|
||||
for _, l := range this.listeners {
|
||||
l.OnUnregiste(service)
|
||||
}
|
||||
}
|
||||
//if len(this.listeners) != 0 {
|
||||
// for _, l := range this.listeners {
|
||||
// l.OnUnregiste(service)
|
||||
// }
|
||||
//}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// OnRegiste 服务器注册
|
||||
func (this *serviceMgr) OnRegiste(s *netlib.Session) {
|
||||
if this == nil || s == nil {
|
||||
return
|
||||
|
@ -102,7 +106,7 @@ func (this *serviceMgr) OnRegiste(s *netlib.Session) {
|
|||
if s.GetAttribute(SessionAttributeServiceFlag) == nil {
|
||||
return
|
||||
}
|
||||
// 根据对方的服务信息找需要建立连接的其它服务,然后发送给对方,对方主动和其它服务建立连接
|
||||
// 查看已存在的服务信息列表找当前服务器需要建立连接的服务,然后建立连接
|
||||
attr := s.GetAttribute(SessionAttributeServerInfo)
|
||||
if attr != nil {
|
||||
if srvInfo, ok := attr.(*protocol.SSSrvRegiste); ok && srvInfo != nil {
|
||||
|
@ -113,8 +117,8 @@ func (this *serviceMgr) OnRegiste(s *netlib.Session) {
|
|||
func(si *protocol.ServiceInfo, sInfo *protocol.SSSrvRegiste) {
|
||||
pack := &protocol.SSServiceInfo{}
|
||||
pack.Service = si
|
||||
logger.Logger.Info("serviceMgr.OnRegiste Server Type=", sInfo.GetType(), " Id=", sInfo.GetId(), " Name=", sInfo.GetName(), " careful => Service=", si)
|
||||
s.Send(int(protocol.SrvlibPacketID_PACKET_SS_SERVICE_INFO), pack)
|
||||
logger.Logger.Infof("建立连接: client(%v)==>server(%v)", srvInfo.GetName(), si.GetSrvName())
|
||||
}(v3, srvInfo)
|
||||
}
|
||||
}
|
||||
|
@ -200,6 +204,7 @@ func (this *serviceMgr) ReportService(s *netlib.Session) {
|
|||
pack.Services = append(pack.Services, si)
|
||||
}
|
||||
s.Send(int(protocol.SrvlibPacketID_PACKET_SS_SERVICE_REGISTE), pack)
|
||||
logger.Logger.Infof("目标服务器:%v 发送服务信息:%v", s.GetSessionConfig().Name, pack)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue