示例#1
0
        /// <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 { }
        }
示例#2
0
 /// <summary>
 /// 逻辑日志
 /// </summary>
 /// <param name="logicType">项目逻辑枚举类型</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 void LogLogic(LoggerLogicEnum logicType, string loggerCode, string parkingCode, string carNoOrCardNo, string projectInfo, string message, string exception)
 {
     Task.Factory.StartNew(() =>
     {
         LogHelper.SetLoggerInfo(ContextCode, logicType, LevelEnum.Logic, loggerCode, parkingCode, carNoOrCardNo, projectInfo, message, exception);
     });
 }
示例#3
0
        /// <summary>
        /// 调试日志
        /// </summary>
        /// <param name="logicType">项目逻辑枚举类型</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 void LogDebug(LoggerLogicEnum logicType, string loggerCode, string parkingCode, string carNoOrCardNo, string projectInfo, string message, string exception)
        {
            //Console.WriteLine(message);

            Task.Factory.StartNew(() =>
            {
                LogHelper.SetLoggerInfo(ContextCode, logicType, LevelEnum.Debug, loggerCode, parkingCode, carNoOrCardNo, projectInfo, message, exception);
            });
        }
示例#4
0
        /// <summary>
        /// 错误日志
        /// </summary>
        /// <param name="logicType">项目逻辑枚举类型</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 void LogError(LoggerLogicEnum logicType, string loggerCode, string parkingCode, string carNoOrCardNo, string projectInfo, string message, string exception)
        {
            //Console.ForegroundColor = ConsoleColor.Red;
            //Console.WriteLine(message + "\r\n" + exception);
            //Console.ResetColor();

            Task.Factory.StartNew(() =>
            {
                LogHelper.SetLoggerInfo(ContextCode, logicType, LevelEnum.Error, loggerCode, parkingCode, carNoOrCardNo, projectInfo, message, exception);
            });
        }