Browse Source

添加websocket日志输出

develop
胡超1 2 years ago
parent
commit
7ab893e517
  1. 14
      24Hour/Controllers/Common/WebSocketController.cs

14
24Hour/Controllers/Common/WebSocketController.cs

@ -25,7 +25,7 @@ namespace _24Hour.Controllers.Common
{ {
private readonly SqlSugarClient _db;//数据库 private readonly SqlSugarClient _db;//数据库
App_Sys_UserModel _userdata = new App_Sys_UserModel();//当前用户 App_Sys_UserModel _userdata = new App_Sys_UserModel();//当前用户
private readonly ILogger<LoginController> _logger;//日志 private readonly ILogger<LoginController> logger;//日志
private readonly IConfiguration _configuration; private readonly IConfiguration _configuration;
private static object obj = new object(); private static object obj = new object();
private readonly WechatMessagerClient _wechatMessagerClient; private readonly WechatMessagerClient _wechatMessagerClient;
@ -33,10 +33,13 @@ namespace _24Hour.Controllers.Common
private static Dictionary<string, WebSocket> CONNECT_POOL = new Dictionary<string, WebSocket>();//用户连接池 private static Dictionary<string, WebSocket> CONNECT_POOL = new Dictionary<string, WebSocket>();//用户连接池
private static Dictionary<string, Addressda> meeting_pool = new Dictionary<string, Addressda>();//会议连接池 private static Dictionary<string, Addressda> meeting_pool = new Dictionary<string, Addressda>();//会议连接池
private static Dictionary<string, string> userzx = new Dictionary<string, string>();//检察官在线池 private static Dictionary<string, string> userzx = new Dictionary<string, string>();//检察官在线池
//private static Dictionary<string, List<MessageInfo>> MESSAGE_POOL = new Dictionary<string, List<MessageInfo>>();//离线消息池 //private static Dictionary<string, List<MessageInfo>> MESSAGE_POOL = new Dictionary<string, List<MessageInfo>>();//离线消息池
public WebSocketController(ILogger<LoginController> logger, SqlSugarClient db, User userdata, WechatMessagerClient wechatMessagerClient, IConfiguration configuration) public WebSocketController(ILogger<LoginController> _logger, SqlSugarClient db, User userdata, WechatMessagerClient wechatMessagerClient, IConfiguration configuration)
{ {
_logger = logger; logger = _logger;
_db = db; _db = db;
_userdata = userdata.Userdata(); _userdata = userdata.Userdata();
_configuration = configuration; _configuration = configuration;
@ -71,7 +74,7 @@ namespace _24Hour.Controllers.Common
if (socket != CONNECT_POOL[user])//当前对象不一致,更新 if (socket != CONNECT_POOL[user])//当前对象不一致,更新
CONNECT_POOL[user] = socket; CONNECT_POOL[user] = socket;
#endregion #endregion
logger.LogInformation($"{user} connected");
string descUser = string.Empty;//目的用户 string descUser = string.Empty;//目的用户
while (true) while (true)
{ {
@ -96,10 +99,12 @@ namespace _24Hour.Controllers.Common
{ {
var data = Encoding.UTF8.GetString(buffer); var data = Encoding.UTF8.GetString(buffer);
Console.WriteLine(data); Console.WriteLine(data);
logger.LogInformation($"{user} disconnected");
} }
} }
else else
{ {
logger.LogInformation($"{user} disconnected");
Console.WriteLine("断开连接"); Console.WriteLine("断开连接");
break; break;
} }
@ -123,6 +128,7 @@ namespace _24Hour.Controllers.Common
{ {
try try
{ {
logger.LogInformation($"send data [{Sendingdata.ConvertToJsonStr()}]");
//获取发送人连接 //获取发送人连接
var socket = CONNECT_POOL.Where(q => q.Key == _userdata.Id).Select(q => q.Value).FirstOrDefault(); var socket = CONNECT_POOL.Where(q => q.Key == _userdata.Id).Select(q => q.Value).FirstOrDefault();
if (socket!=null&&socket.State == WebSocketState.Open) if (socket!=null&&socket.State == WebSocketState.Open)

Loading…
Cancel
Save