示例#1
0
    private static void Log(LogGrade logGrade, string source, params string[] message)
    {
        int length = message.Length;

        if (length <= 0)
        {
            return;
        }

        m_LogStringBuilder.Length = 0;

        m_LogStringBuilder.AppendFormat("¡¾{0}¡¿", message[0]);
        for (int index = 1; index < length; index++)
        {
            m_LogStringBuilder.Append(message[index]);
            if (index != length - 1)
            {
                m_LogStringBuilder.Append(" ");
            }
        }

        if (logGrade == LogGrade.Error)
        {
            UnityEngine.Debug.LogError(m_LogStringBuilder.ToString());
        }
        else if (logGrade == LogGrade.Warnning)
        {
            UnityEngine.Debug.LogWarning(m_LogStringBuilder.ToString());
        }
        else
        {
            UnityEngine.Debug.Log(m_LogStringBuilder.ToString());
        }
    }
示例#2
0
        /// <summary>
        /// 写日志
        /// </summary>
        /// <param name="strSubSys">子系统,默认为Sys</param>
        /// <param name="logType">日志类型</param>
        /// <param name="logGrade">警告级别</param>
        /// <param name="errorMessage">日志内容</param>
        public static void WriteLog(string strSubSys,
                                    LogType logType,
                                    LogGrade logGrade,
                                    string errorMessage,
                                    string ext1 = "",
                                    string ext2 = "")
        {
            if (IsInit)
            {
                InitFileTraceLog();
            }

            InsertLogToMem(new LogInfo()
            {
                LogDt     = DateTime.Now,
                LogGrade  = logGrade,
                LogType   = logType,
                LogMsg    = errorMessage,
                LogSubSys = strSubSys,
                LogExt1   = ext1,
                LogExt2   = ext2
            });

            foreach (ILog logHandler in lstLogHandler)
            {
                logHandler.WriteLog(strSubSys, logType, logGrade, errorMessage, ext1, ext2);
            }
        }
示例#3
0
        /// <summary>
        /// 写日志
        /// </summary>
        /// <param name="strSubSys">子系统,默认为Sys</param>
        /// <param name="logType">日志类型</param>
        /// <param name="logGrade">警告级别</param>
        /// <param name="errorMessage">日志内容</param>
        public void WriteLog(string strSubSys, LogType logType, LogGrade logGrade, string errorMessage,
                             string ext1, string ext2)
        {
            try
            {
                LogInfo log = new LogInfo()
                {
                    LogDt     = DateTime.Now,
                    LogGrade  = logGrade,
                    LogType   = logType,
                    LogMsg    = errorMessage,
                    LogSubSys = strSubSys,
                    LogExt1   = ext1,
                    LogExt2   = ext2
                };
                string strLog = JsonStrObjConver.Obj2JsonStr(log, typeof(LogInfo));

                byte[] bufLog = System.Text.Encoding.UTF8.GetBytes(strLog);
                foreach (SocketServerInfo aServer in lstServerInfo)
                {
                    udp.Send(bufLog, bufLog.Count(), aServer.Ip, aServer.Port);
                }
            }
            catch (Exception ex)
            {
                System.Diagnostics.Trace.WriteLine(ex.Message);
                return;
            }
        }
示例#4
0
        /// <summary>
        /// 写日志
        /// </summary>
        /// <param name="strSubSys">子系统,默认为Sys</param>
        /// <param name="logType">日志类型</param>
        /// <param name="logGrade">警告级别</param>
        /// <param name="errorMessage">日志内容</param>
        public void WriteLog(string strSubSys, LogType logType, LogGrade logGrade,
                             string errorMessage, string strExt1, string strExt2)
        {
            string strLog = string.Format("{0,-20};{1,-10};{2,-10};{3,-10};ex{4:-10};ex{5:-10};{6,-10}",
                                          DateTime.Now,
                                          strSubSys,
                                          EnumTextByDescription.GetEnumDesc(logType),
                                          EnumTextByDescription.GetEnumDesc(logGrade),
                                          errorMessage,
                                          strExt1, strExt2);

            System.Diagnostics.Trace.WriteLine(strLog);
        }
示例#5
0
        /// <summary>
        /// 添加警告类型的日志,子系统默认为“sys”
        /// 由于警告的级别需要自定义,因此没有写默认参数需要指定
        /// </summary>
        /// <param name="logWarringGrade">警告级别</param>
        /// <param name="errorText">日志内容</param>
        public static void WriteWarringDefSys(LogGrade logWarringGrade, string errorText, string ext1 = "", string ext2 = "")
        {
            InsertLogToMem(new LogInfo()
            {
                LogDt     = DateTime.Now,
                LogGrade  = LogGrade.Low,
                LogType   = LogType.LogTypeInfo,
                LogMsg    = errorText,
                LogSubSys = LogInfo.DEFAULT_SYS,
                LogExt1   = ext1,
                LogExt2   = ext2
            });

            foreach (ILog logHandler in lstLogHandler)
            {
                logHandler.WriteLog("SYS", LogType.LogTypeWarring, logWarringGrade, errorText, ext1, ext2);
            }
        }
示例#6
0
        /// <summary>
        /// 用来判断是否结束应用的内部方法
        /// </summary>
        /// <param name="logGrade">日志等级</param>
        /// <returns>是否关闭程序</returns>
        private static bool exitSwitch(LogGrade logGrade)
        {
            switch (logGrade)
            {
            case LogGrade.msg:
            case LogGrade.info:
            case LogGrade.trace:
            case LogGrade.debug:
            case LogGrade.warn:
            case LogGrade.error:
                return(false);

            case LogGrade.fatal:
                return(true);

            default:
                return(false);
            }
        }
示例#7
0
        /// <summary>
        /// 写日志
        /// </summary>
        /// <param name="strSubSys">子系统,默认为Sys</param>
        /// <param name="logType">日志类型</param>
        /// <param name="logGrade">警告级别</param>
        /// <param name="errorMessage">日志内容</param>
        public void WriteLog(string strSubSys, LogType logType, LogGrade logGrade, string errorMessage,
                             string strExt1, string strExt2)
        {
            try
            {
                System.Diagnostics.Trace.WriteLine(AppDomain.CurrentDomain.BaseDirectory + "FileLogs");
                string logPath = string.Format("{0}filelogs\\{1}", AppDomain.CurrentDomain.BaseDirectory, strFileName);

                if (!Directory.Exists(AppDomain.CurrentDomain.BaseDirectory + "FileLogs"))
                {
                    Directory.CreateDirectory(AppDomain.CurrentDomain.BaseDirectory + "FileLogs");
                }

                lock (lockObj)
                {
                    FileInfo fi = new FileInfo(logPath);
                    if (fi.Exists && fi.Length > iFileLen)
                    {
                        FileCopy(logPath);
                        fi.Delete();
                    }

                    using (StreamWriter sw = new StreamWriter(logPath, true, Encoding.Unicode))
                    {
                        sw.WriteLine(string.Format("{0,-20};{1,-10};{2,-10};{3,-10};{4,-10};{5,-10};{6,-10}",
                                                   DateTime.Now,
                                                   strSubSys,
                                                   EnumTextByDescription.GetEnumDesc(logType),
                                                   EnumTextByDescription.GetEnumDesc(logGrade),
                                                   strExt1, strExt2,
                                                   errorMessage));
                    }
                }
            }
            catch (Exception ex)
            {
                System.Diagnostics.Trace.Write(ex.Message);
            }
        }
示例#8
0
    public static void LuaLog(int logGrade, string title, string message)
    {
        LogGrade cslogGrade = (LogGrade)logGrade;

        Log(cslogGrade, "[lua]", title, message);
    }
示例#9
0
 /// <summary>
 /// 弹出错误窗口
 /// </summary>
 /// <param name="message">错误窗口额外信息</param>
 /// <param name="e">错误窗口输出简要异常信息</param>
 /// <param name="logGrade">日志错误等级 用来判断是否关闭程序</param>
 public ErrorBox(string message, Exception e, LogGrade logGrade) : this(message, e, exitSwitch(logGrade))
 {
 }
示例#10
0
 /// <summary>
 /// 弹出错误窗口
 /// </summary>
 /// <param name="e">错误窗口输出简要异常信息</param>
 /// <param name="logGrade">日志错误等级 用来判断是否关闭程序</param>
 public ErrorBox(Exception e, LogGrade logGrade) : this(null, e, exitSwitch(logGrade))
 {
 }
示例#11
0
 /// <summary>
 /// 弹出错误窗口
 /// </summary>
 /// <param name="message">错误窗口额外信息</param>
 /// <param name="logGrade">日志错误等级 用来判断是否关闭程序</param>
 public ErrorBox(string message, LogGrade logGrade) : this(message, null, exitSwitch(logGrade))
 {
 }
示例#12
0
 /// <summary>
 /// 弹出错误窗口
 /// </summary>
 /// <param name="logGrade">日志错误等级 用来判断是否关闭程序</param>
 public ErrorBox(LogGrade logGrade) : this(null, null, exitSwitch(logGrade))
 {
 }