/// <summary> /// info /// </summary> /// <param name="contextCode">会话标识,线上:一次请求生命周期中的日志编码,一次请求响应使用一个编码</param> /// <param name="logicType">项目逻辑枚举类型</param> /// <param name="level">日志级别</param> /// <param name="loggerCode">日志编码,填写线下记录编码linerecordcode</param> /// <param name="parkingCode">停车场编码</param> /// <param name="carNoOrCardNo">车牌号或卡号</param> /// <param name="projectInfo">项目标识</param> /// <param name="message">请求的参数或者实体json</param> /// <param name="exception"> 错误信息或者异常信息</param> public static void SetLoggerInfo( string contextCode, LoggerLogicEnum logicType, LevelEnum level, string loggerCode, string parkingCode, string carNoOrCardNo, string projectInfo, string message, string exception) { Dictionary <string, object> arguments = new Dictionary <string, object>(); arguments["LogicType"] = logicType.ToString(); arguments["ContextCode"] = contextCode; arguments["LoggerCode"] = loggerCode; arguments["Level"] = level; arguments["ParkingCode"] = parkingCode; arguments["CarNoOrCardNo"] = carNoOrCardNo; arguments["ProjectInfo"] = projectInfo; arguments["Message"] = message; arguments["Exception"] = exception; arguments["CreateTime"] = DateTime.Now.ToString(); arguments["Ip"] = Dns.GetHostAddresses(Dns.GetHostName()).First(p => p.AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork).ToString(); try { IDatabase db = RedisHelper.GetDatabase(9); string key = string.Format("ApiLoggerInfo_{0}", DateTime.Now.Minute); db.ListRightPush(key, jsonserializationer.Serialize(arguments)); db.KeyExpireAsync(key, DateTime.Now.AddMinutes(5)); //5分钟过期 } catch { } finally { } }