コード例 #1
0
        public static void Log(LogType oType, string sMessage, string sException)
        {
            if (oType.Equals(LogType.SystemError) && !AppConfigUtility.bLogSystemError)
            {
                return;
            }

            if (oType.Equals(LogType.Information) && !AppConfigUtility.bLogInformation)
            {
                return;
            }

            lock (oLocker)
            {
                var oLog = !File.Exists(AppConfigUtility.sLogFileName)
                    ? new Log {
                    Logs = new List <LogItem>()
                }
                    : File.ReadAllText(AppConfigUtility.sLogFileName).DeserializeFromXml <Log>();

                oLog.Logs.RemoveAll(item => item.DateTime <= DateTime.Now.AddDays(-30));

                oLog.Logs.Add(new LogItem {
                    DateTime = DateTime.Now, Type = oType.ToString(), Exception = sException, Message = sMessage
                });

                var oXmlDoc = new XmlDocument();
                oXmlDoc.LoadXml(oLog.SerializeToXml());
                oXmlDoc.Save(AppConfigUtility.sLogFileName);
            }
        }
コード例 #2
0
ファイル: DebugScript.cs プロジェクト: Awkbak/Procrastination
 /// <summary>
 /// Handles captured messages from the debug console
 /// </summary>
 /// <param name="logString">The message displayed</param>
 /// <param name="stackTrace">Stack trace of where the message occured (Mainly used with error and exception messaged)</param>
 /// <param name="type">What kind of message (Log, Warning, Warning, Error, Exception, Assert)</param>
 private void handleLog(string logString, string stackTrace, LogType type)
 {
     //If it's a log, just output it
     if (type.Equals(LogType.Log))
     {
         println(logString);
     }//If it's a warning, include that type (Warning)
     else if(type.Equals(LogType.Warning))
     {
         println(type + ": " + logString);
     }//Otherwise, it is serious and output the type, log, and stacktrace
     else
     {
         //Wrapping lines messes up the console
         //This curbs it a bit, but still allows for some stack output
         //Since in an error, reading what's wrong is most important
         if (stackTrace.Length < 250)
         {
             println(type + ": " + logString + " " + stackTrace);
         }
         else
         {
             println(type + ": " + logString + " " + stackTrace.Substring(0, 250));
         }
     }
 }
コード例 #3
0
 static void ErrorLogHandler(string condition, string stackTrace, LogType type)
 {
     if (type.Equals(LogType.Error) || type.Equals(LogType.Exception))
     {
         hLog("condition: " + type.ToString() + ", " + condition + ", \n" + stackTrace);
     }
 }
コード例 #4
0
ファイル: Log.cs プロジェクト: slfl/ArctiumAlpha
        static void SetLogger(LogType type, string text, params object[] args)
        {
            switch (type)
            {
                case LogType.Normal:
                    Console.ForegroundColor = ConsoleColor.Green;
                    text = text.Insert(0, "System: ");
                    break;
                case LogType.Error:
                    Console.ForegroundColor = ConsoleColor.Red;
                    text = text.Insert(0, "Error: ");
                    break;
                case LogType.Dump:
                    Console.ForegroundColor = ConsoleColor.Yellow;
                    break;
                case LogType.Init:
                    Console.ForegroundColor = ConsoleColor.Cyan;
                    break;
                case LogType.Cmd:
                    Console.ForegroundColor = ConsoleColor.Green;
                    break;
                case LogType.Debug:
                    Console.ForegroundColor = ConsoleColor.DarkRed;
                    break;
                default:
                    break;
            }

            if (type.Equals(LogType.Init) | type.Equals(LogType.Default))
                Console.WriteLine(text, args);
            else if (type.Equals(LogType.Dump) || type.Equals(LogType.Cmd))
                Console.Write(text, args);
            else
                Console.WriteLine("[" + DateTime.Now.ToLongTimeString() + "] " + text, args);
        }
コード例 #5
0
ファイル: DebugScript.cs プロジェクト: Awkbak/Procrastination
 /// <summary>
 /// Handles captured messages from the debug console
 /// </summary>
 /// <param name="logString">The message displayed</param>
 /// <param name="stackTrace">Stack trace of where the message occured (Mainly used with error and exception messaged)</param>
 /// <param name="type">What kind of message (Log, Warning, Warning, Error, Exception, Assert)</param>
 private void handleLog(string logString, string stackTrace, LogType type)
 {
     //If it's a log, just output it
     if (type.Equals(LogType.Log))
     {
         println(logString);
     }//If it's a warning, include that type (Warning)
     else if (type.Equals(LogType.Warning))
     {
         println(type + ": " + logString);
     }//Otherwise, it is serious and output the type, log, and stacktrace
     else
     {
         //Wrapping lines messes up the console
         //This curbs it a bit, but still allows for some stack output
         //Since in an error, reading what's wrong is most important
         if (stackTrace.Length < 250)
         {
             println(type + ": " + logString + " " + stackTrace);
         }
         else
         {
             println(type + ": " + logString + " " + stackTrace.Substring(0, 250));
         }
     }
 }
コード例 #6
0
        public void WriteOutput(SoapMessage message)
        {
            FileStream   fs;
            StreamWriter w = null;

            try
            {
                if (_logTypeMode.Equals(LogType.RequestOnly) || _logTypeMode.Equals(LogType.RequestReponse))
                {
                    _newStream.Position = 0;
                    fs = new FileStream(_reqFilename, FileMode.Append,
                                        FileAccess.Write);
                    w = new StreamWriter(fs);

                    string soapString = "SoapRequest";
                    w.WriteLine("-----" + soapString + " at " + DateTime.Now);
                    w.Flush();
                    Copy(_newStream, fs);
                    w.Close();
                }
            }
            catch (Exception ex)
            {
            }
            finally
            {
                if (w != null)
                {
                    w.Close();
                }
                _newStream.Position = 0;
                Copy(_newStream, _oldStream);
            }
        }
コード例 #7
0
 void LogCallback(string condition, string stackTrace, LogType type)
 {
     if (type.Equals(LogType.Error) || type.Equals(LogType.Exception))
     {
         exceptionCanvas.SetActive(true);
         exceptionContent.text = stackTrace;
     }
 }
コード例 #8
0
ファイル: Log.cs プロジェクト: xorpsxmm0/Arctium-WoW
        static void SetLogger(LogType type, string text, params object[] args)
        {
            DefaultConsole.OutputEncoding = UTF8Encoding.UTF8;

            switch (type)
            {
            case LogType.Normal:
                DefaultConsole.ForegroundColor = ConsoleColor.Green;
                text = text.Insert(0, "System: ");
                break;

            case LogType.Error:
                DefaultConsole.ForegroundColor = ConsoleColor.Red;
                text = text.Insert(0, "Error: ");
                break;

            case LogType.Dump:
                DefaultConsole.ForegroundColor = ConsoleColor.Yellow;
                break;

            case LogType.Init:
                DefaultConsole.ForegroundColor = ConsoleColor.Cyan;
                break;

            case LogType.DB:
                DefaultConsole.ForegroundColor = ConsoleColor.DarkMagenta;
                break;

            case LogType.Cmd:
                DefaultConsole.ForegroundColor = ConsoleColor.Green;
                break;

            case LogType.Debug:
                DefaultConsole.ForegroundColor = ConsoleColor.DarkRed;
                break;

            default:
                DefaultConsole.ForegroundColor = ConsoleColor.White;
                break;
            }

            if (((Log.ServerType == "World" ? WorldConfig.LogLevel : RealmConfig.LogLevel) & type) == type)
            {
                if (type.Equals(LogType.Init) | type.Equals(LogType.Default))
                {
                    DefaultConsole.WriteLine(text, args);
                }
                else if (type.Equals(LogType.Dump) || type.Equals(LogType.Cmd))
                {
                    DefaultConsole.WriteLine(text, args);
                }
                else
                {
                    DefaultConsole.WriteLine("[" + DateTime.Now.ToLongTimeString() + "] " + text, args);
                }
            }
        }
コード例 #9
0
ファイル: Log.cs プロジェクト: GlassFace/Arctium-WoW
        static void SetLogger(LogType type, string text, params object[] args)
        {
            Console.OutputEncoding = Encoding.UTF8;

            ConsoleColor foreGround;

            switch (type)
            {
            case LogType.Init:
                foreGround = ConsoleColor.Cyan;
                break;

            case LogType.Normal:
                foreGround = ConsoleColor.Green;
                text       = text.Insert(0, "System: ");
                break;

            case LogType.Error:
                foreGround = ConsoleColor.Red;
                text       = text.Insert(0, "Error: ");
                break;

            case LogType.Debug:
                foreGround = ConsoleColor.DarkRed;
                text       = text.Insert(0, "Debug: ");
                break;

            case LogType.Packet:
                foreGround = ConsoleColor.Yellow;
                break;

            case LogType.Database:
                foreGround = ConsoleColor.DarkMagenta;
                break;

            case LogType.Network:
                foreGround = ConsoleColor.Magenta;
                break;

            default:
                foreGround = ConsoleColor.White;
                break;
            }

            if ((logLevel & type) == type)
            {
                if (type.Equals(LogType.Init) || type.Equals(LogType.None))
                {
                    logQueue.Add(Tuple.Create(foreGround, string.Format(text, args)));
                }
                else
                {
                    logQueue.Add(Tuple.Create(foreGround, string.Format("[" + DateTime.Now.ToLongTimeString() + "] " + text, args)));
                }
            }
        }
コード例 #10
0
 public ILogger GetLogger(LogType logType)
 {
     if (logType.Equals(LogType.FileBased))
     {
         return(FileBasedLogger.logger);
     }
     else if (logType.Equals(LogType.Email))
     {
         return(EmailBasedLogger.logger);
     }
     return(new ConsoleLogger());
 }
コード例 #11
0
ファイル: Log.cs プロジェクト: thundergod221/Arctium
        static void SetLogger(LogType type, string text, params object[] args)
        {
            switch (type)
            {
            case LogType.NORMAL:
                DefaultConsole.ForegroundColor = ConsoleColor.Green;
                text = text.Insert(0, "System: ");
                break;

            case LogType.ERROR:
                DefaultConsole.ForegroundColor = ConsoleColor.Red;
                text = text.Insert(0, "Error: ");
                break;

            case LogType.DUMP:
                DefaultConsole.ForegroundColor = ConsoleColor.Yellow;
                break;

            case LogType.INIT:
                DefaultConsole.ForegroundColor = ConsoleColor.Cyan;
                break;

            case LogType.MISC:
                DefaultConsole.ForegroundColor = ConsoleColor.DarkBlue;
                break;

            case LogType.CMD:
                DefaultConsole.ForegroundColor = ConsoleColor.Green;
                break;

            case LogType.DEBUG:
                DefaultConsole.ForegroundColor = ConsoleColor.DarkRed;
                break;

            default:
                DefaultConsole.ForegroundColor = ConsoleColor.White;
                break;
            }

            if (type.Equals(LogType.INIT) | type.Equals(LogType.DEFAULT))
            {
                DefaultConsole.WriteLine(text, args);
            }
            else if (type.Equals(LogType.DUMP) || type.Equals(LogType.CMD))
            {
                DefaultConsole.WriteLine(text, args);
            }
            else
            {
                DefaultConsole.WriteLine("[" + DateTime.Now.ToLongTimeString() + "] " + text, args);
            }
        }
コード例 #12
0
 public static void Log(string logText, LogType type = LogType.Info)
 {
     if (type.Equals(LogType.Info))
     {
         Trace.TraceInformation(DateTime.Now.ToString(DateFormat) + ": " + logText);
     }
     else if (type.Equals(LogType.Error))
     {
         Trace.TraceError(DateTime.Now.ToString(DateFormat) + ": " + logText);
     }
     else if (type.Equals(LogType.Warning))
     {
         Trace.TraceWarning(DateTime.Now.ToString(DateFormat) + ": " + logText);
     }
 }
コード例 #13
0
 public static void Log(string logText, LogType type = LogType.Info)
 {
     if (type.Equals(LogType.Info))
     {
         Trace.TraceInformation(DateTime.Now.ToString(DateFormat) + ": " + logText);
     }
     else if (type.Equals(LogType.Error))
     {
         Trace.TraceError(DateTime.Now.ToString(DateFormat) + ": " + logText);
     }
     else if (type.Equals(LogType.Warning))
     {
         Trace.TraceWarning(DateTime.Now.ToString(DateFormat) + ": " + logText);
     }
 }
コード例 #14
0
ファイル: LogAdapter.cs プロジェクト: venkataratnam19/devops
        /// <summary>
        /// Function to Write  Logs
        /// </summary>
        /// <param name="logType , log"></param>
        /// <returns>response Task<dynamic></returns>
        private dynamic LogsWriter(LogType logType, dynamic log)
        {
            try
            {
                //Checking whether logs are enabled or not
                bool IsLogsEnabled = CommonUtils.StrToBoolean(CommonUtils.CnvStr(CommonUtils.AppConfig.Logs_Enabled));
                if (IsLogsEnabled)
                {
                    //Exception Logs
                    if (logType.Equals(LogType.Error))
                    {
                        _LogType = CommonUtils.CnvStr(CommonUtils.AppConfig.Logs_Exception_Name);
                    }
                    //Information Logs
                    else
                    {
                        _LogType = CommonUtils.CnvStr(CommonUtils.AppConfig.Logs_Information_Name);
                    }

                    //  var dta = CommonUtils.JsonSerialize(CommonUtils.CurrentContext.Request);
                    //Calling function to write logs
                    Console.WriteLine(CommonUtils.JsonSerialize(log));

                    //Common.CommonUtils.RestClient_PostData((string)CommonUtils.AppConfig.LogProfilerUrl,
                    // CommonUtils.JsonSerialize(logreqFormater(log)), "Post", new Dictionary<string, string>());
                }
            }
            catch (Exception ex)
            {
                //Do nothing
            }
            return("");
        }
コード例 #15
0
ファイル: ScreenLog.cs プロジェクト: simonkarman/karmannet
    private void HandleLog(string logMessage, string stackTrace, LogType logType)
    {
        ThreadManager.ExecuteOnMainThread(() => {
            if (logMessage.Equals(latestLogMessage) && logType.Equals(latestLogType))
            {
                duplicationCounter++;
                lines[currentIndex].Set(string.Format("{0}x {1}", duplicationCounter, logMessage), logType);
                return;
            }
            currentIndex += 1;
            currentIndex %= maxNumberOfLines;

            duplicationCounter = 1;
            latestLogMessage   = logMessage;
            latestLogType      = logType;

            ScreenLogLine screenLogLine = lines[currentIndex];
            if (screenLogLine == null)
            {
                screenLogLine       = Instantiate(linePrefab.gameObject, linesParent).GetComponent <ScreenLogLine>();
                lines[currentIndex] = screenLogLine;
            }
            screenLogLine.transform.SetAsLastSibling();
            screenLogLine.Set(logMessage, logType);
        });
    }
コード例 #16
0
 public override string ToString()
 {
     return(string.Format(
                "{0}: {1}",
                time.ToLongTimeString(),
                type.Equals(LogType.Exception) ? stackTrace : logString
                ));
 }
コード例 #17
0
    public void LogFormat(LogType logType, UnityEngine.Object context, string format, params object[] args)
    {
        if (logType.Equals(LogType.Error))
        {
            streamWriterError.WriteLine(String.Format(format, args));
            streamWriterError.Flush();
        }
        else if (logType.Equals(LogType.Warning))
        {
            streamWriterGen.WriteLine(String.Format(format, args));
            streamWriterGen.Flush();
        }
        else
        {
            streamWriterMain.WriteLine(String.Format(format, args));
            streamWriterMain.Flush();
        }

        defaultLogHandler.LogFormat(logType, context, format, args);
    }
コード例 #18
0
ファイル: Log.cs プロジェクト: boredtodeath/Arctium
        static void SetLogger(LogType type, string text, params object[] args)
        {
            switch (type)
            {
                case LogType.NORMAL:
                    DefaultConsole.ForegroundColor = ConsoleColor.Green;
                    text = text.Insert(0, "System: ");
                    break;
                case LogType.ERROR:
                    DefaultConsole.ForegroundColor = ConsoleColor.Red;
                    text = text.Insert(0, "Error: ");
                    break;
                case LogType.DUMP:
                    DefaultConsole.ForegroundColor = ConsoleColor.Yellow;
                    break;
                case LogType.INIT:
                    DefaultConsole.ForegroundColor = ConsoleColor.Cyan;
                    break;
                case LogType.MISC:
                    DefaultConsole.ForegroundColor = ConsoleColor.DarkBlue;
                    break;
                case LogType.CMD:
                    DefaultConsole.ForegroundColor = ConsoleColor.Green;
                    break;
                case LogType.DEBUG:
                    DefaultConsole.ForegroundColor = ConsoleColor.DarkRed;
                    break;
                default:
                    DefaultConsole.ForegroundColor = ConsoleColor.White;
                    break;
            }

            if (type.Equals(LogType.INIT) | type.Equals(LogType.DEFAULT))
                DefaultConsole.WriteLine(text, args);
            else if (type.Equals(LogType.DUMP) || type.Equals(LogType.CMD))
                DefaultConsole.WriteLine(text, args);
            else
            {
                DefaultConsole.WriteLine("[" + DateTime.Now.ToLongTimeString() + "] " + text, args);
            }
        }
コード例 #19
0
ファイル: LogOutputHandler.cs プロジェクト: cmdr2/trooper2c
        //Capture debug.log output, send logs to Loggly
        public void HandleLog(string logString, string stackTrace, LogType type)
        {
            if ((type.Equals (LogType.Log) || type.Equals(LogType.Warning)) && !ENABLE_DEBUG_LOGS) {
                return;
            }

            //Initialize WWWForm and store log level as a string
            level = type.ToString ();
            var loggingForm = new WWWForm();

            //Add log message to WWWForm
            loggingForm.AddField("LEVEL", level);
            loggingForm.AddField("Message", logString);
            loggingForm.AddField("Stack_Trace", stackTrace);

            //Add any User, Game, or Device MetaData that would be useful to finding issues later
            loggingForm.AddField("Device_Model", SystemInfo.deviceModel);

            //Send WWW Form to Loggly, replace TOKEN with your unique ID from Loggly
            var sendLog = new WWW("http://logs-01.loggly.com/inputs/" + LogglyCredential.TOKEN + "/tag/Unity3D/", loggingForm);
        }
コード例 #20
0
        public void WriteRequest(SoapMessage message)
        {
            var xDoc = new XmlDocument();

            try
            {
                if (logTypeMode.Equals(LogType.RequestOnly) || logTypeMode.Equals(LogType.RequestReponse))
                {
                    newStream.Position = 0;
                    TextReader textReader   = new StreamReader(newStream);
                    var        soapEnvelope = textReader.ReadToEnd();
                    xDoc.LoadXml(soapEnvelope);

                    foreach (XmlNode xmlNode in xDoc)
                    {
                        if (xmlNode.NodeType == XmlNodeType.XmlDeclaration)
                        {
                            xDoc.RemoveChild(xmlNode);
                            break;
                        }
                    }

                    DataAccess.AddSoapRequestResponse(connectionString: InterchangeConfiguration.SoapInterchangeDBConnectionString, direction: "Request", soapEnvelope: xDoc.OuterXml);
                }
            }
            catch (Exception ex)
            {
            }
            finally
            {
                if (xDoc != null)
                {
                    xDoc.RemoveAll();
                }
                xDoc = null;
                newStream.Position = 0;
                Copy(newStream, oldStream);
            }
        }
コード例 #21
0
 private static void OnUnityLog(string line, string stackTrace, LogType type)
 {
     if (type.Equals(LogType.Exception))
     {
         string id  = String.Format("{0:X}", DateTime.UtcNow.GetHashCode()).Substring(0, 7).ToUpper();
         string msg = $"<color='#{ColorUtility.ToHtmlStringRGB(Color.red)}'>Exception!</color> {id}";
         if (DebugModeCommand.DebugMode)
         {
             Messaging.Notification(msg);
         }
         Logger.Info($"Exception ID: {id}");
     }
 }
コード例 #22
0
 public int CalculateTax(int amount, int rate)
 {
     try
     {
         int r = amount / rate;
         return(r);
     }
     catch (Exception e)
     {
         //Console.WriteLine(e.Message);
         DBLogger   db = new DBLogger();
         FileLogger f  = new FileLogger();
         if (_log.Equals(LogType.DB))
         {
             db.Log(e.Message);
         }
         else if (_log.Equals(LogType.FILE))
         {
             f.Log(e.Message);
         }
     }
     return(-1);
 }
コード例 #23
0
    /// <summary>
    /// 疫苗庫存資料 異動log
    /// </summary>
    /// <param name="logtype">修改或刪除</param>
    /// <param name="func">異動功能</param>
    /// <param name="ModifyDate">異動時間</param>
    /// <param name="UserID">操作者ID</param>
    /// <param name="DataID">疫苗代號(ex:HBIG)</param>
    /// <param name="DataLog">只有修改時需要填:[異動功能]-[修改的疫苗代碼-批號]-[修改欄位]-[修改內容]</param>
    /// <param name="MasterID">只有刪除時需要填:刪除的MasterID</param>
    /// <param name="DetailID">只有刪除時需要填:刪除的DetailID,若是刪Master則填0</param>
    public static void AddStockLog(LogType logtype, StockFunc func, DateTime ModifyDate, String UserID, String DataID, String DataLog, int MasterID, int DetailID)
    {
        SystemDataLog log = new SystemDataLog();

        if (logtype.Equals(LogType.刪除))
        {
            if (DetailID == 0)
            {
                DataLog = ((int)func).ToString() + "_" + MasterID.ToString();
            }
            else
            {
                DataLog = ((int)func).ToString() + "_" + MasterID.ToString() + "_" + DetailID.ToString();
            }
        }
        log.AddLog(logtype, DataType.疫苗庫存資料, ModifyDate, UserID, DataID, DataLog);
    }
コード例 #24
0
        public int CalculateTax(int income, int rate)
        {
            int r = 0;

            try
            {
                r = income / rate;
            }
            catch (Exception e)
            {
                if (_log.Equals(LogType.DB))
                {
                    DBLogger dblogger = new DBLogger();
                    dblogger.Log(e.Message);
                }
                else
                {
                    FileLogger filelogger = new FileLogger();
                    filelogger.Log(e.Message);
                }
            }
            return(r);
        }
コード例 #25
0
ファイル: TaxCalaculator.cs プロジェクト: 2SANAL/Swabhav-Repo
        public int Calculator(int income, int rate)
        {
            int result = 0;

            try
            {
                result = income / rate;
            }
            catch (Exception exception)
            {
                if (_log.Equals(LogType.DATABASE))
                {
                    DataBaseLogger dataBaseLogger = new DataBaseLogger();
                    dataBaseLogger.Log(exception.Message);
                }
                else
                {
                    FileLogger fileLogger = new FileLogger();
                    fileLogger.Log(exception.Message);
                }
            }
            return(result);
        }
コード例 #26
0
        static void SetLogger(LogType type, string text, params object[] args)
        {
            var solidColor = new XMedia.SolidColorBrush();

            switch (type)
            {
            case LogType.NORMAL:
                solidColor.Color        = Colors.Green;
                CurrentBlock.Foreground = solidColor;

                text = text.Insert(0, "System: ");
                break;

            case LogType.ERROR:
                solidColor.Color        = Colors.Green;
                CurrentBlock.Foreground = solidColor;

                text = text.Insert(0, "Error: ");
                break;

            case LogType.DUMP:
                solidColor.Color        = Colors.Green;
                CurrentBlock.Foreground = solidColor;
                break;

            case LogType.INIT:
                solidColor.Color        = Colors.Green;
                CurrentBlock.Foreground = solidColor;
                break;

            case LogType.MISC:
                solidColor.Color        = Colors.Green;
                CurrentBlock.Foreground = solidColor;
                break;

            case LogType.CMD:
                solidColor.Color        = Colors.Green;
                CurrentBlock.Foreground = solidColor;
                break;

            case LogType.DEBUG:
                solidColor.Color        = Colors.Green;
                CurrentBlock.Foreground = solidColor;
                break;

            default:
                solidColor.Color        = Colors.Green;
                CurrentBlock.Foreground = solidColor;
                break;
            }

            StringBuilder logText = new StringBuilder();

            if (type.Equals(LogType.INIT) | type.Equals(LogType.DEFAULT))
            {
                logText.AppendFormat(text, args);
            }
            else if (type.Equals(LogType.DUMP) || type.Equals(LogType.CMD))
            {
                logText.AppendFormat(text, args);
            }
            else
            {
                logText.AppendFormat("[" + DateTime.Now.ToString() + "] " + text, args);
            }

            CurrentBlock.Text += logText.ToString() + "\n";
        }
コード例 #27
0
ファイル: Log.cs プロジェクト: RashKim/Arctium
        static void SetLogger(LogType type, string text, params object[] args)
        {
            DefaultConsole.OutputEncoding = UTF8Encoding.UTF8;

            switch (type)
            {
                case LogType.NORMAL:
                    DefaultConsole.ForegroundColor = ConsoleColor.Green;
                    text = text.Insert(0, "System: ");
                    break;
                case LogType.ERROR:
                    DefaultConsole.ForegroundColor = ConsoleColor.Red;
                    text = text.Insert(0, "Error: ");
                    break;
                case LogType.DUMP:
                    DefaultConsole.ForegroundColor = ConsoleColor.Yellow;
                    break;
                case LogType.INIT:
                    DefaultConsole.ForegroundColor = ConsoleColor.Cyan;
                    break;
                case LogType.DB:
                    DefaultConsole.ForegroundColor = ConsoleColor.DarkMagenta;
                    break;
                case LogType.CMD:
                    DefaultConsole.ForegroundColor = ConsoleColor.Green;
                    break;
                case LogType.DEBUG:
                    DefaultConsole.ForegroundColor = ConsoleColor.DarkRed;
                    break;
                default:
                    DefaultConsole.ForegroundColor = ConsoleColor.White;
                    break;
            }

            if (((Log.ServerType == "World" ? WorldConfig.LogLevel : RealmConfig.LogLevel) & type) == type)
            {
                if (type.Equals(LogType.INIT) | type.Equals(LogType.DEFAULT))
                    DefaultConsole.WriteLine(text, args);
                else if (type.Equals(LogType.DUMP) || type.Equals(LogType.CMD))
                    DefaultConsole.WriteLine(text, args);
                else
                    DefaultConsole.WriteLine("[" + DateTime.Now.ToLongTimeString() + "] " + text, args);
            }
        }
コード例 #28
0
        void HandleLog(string message, string stackTrace, LogType type)
        {
            if (logs == null)
            {
                logs = new List <Log>();
            }
            if (collapsedLogs == null)
            {
                collapsedLogs = new List <Log>();
            }

            Log newLog = new Log();

            newLog.id                   = logID;
            newLog.message              = message;
            newLog.stackTrace           = stackTrace;
            newLog.type                 = type;
            newLog.time                 = Time.time;
            newLog.realtimeSinceStartup = Time.realtimeSinceStartup;
            newLog.frameCount           = Time.frameCount;
            newLog.count                = 1;

            logID++;

            if (type.Equals(LogType.Log))
            {
                logCount++;
            }
            else if (type.Equals(LogType.Warning))
            {
                warningCount++;
            }
            else
            {
                errorCount++;
            }

            logs.Add(newLog);
            if (OnNewLog != null)
            {
                OnNewLog(newLog, false);
            }

            bool found = false;

            for (int i = 0; i < collapsedLogs.Count; i++)
            {
                if (collapsedLogs[i].message == newLog.message && collapsedLogs[i].stackTrace == newLog.stackTrace)
                {
                    collapsedLogs[i] = incrementLogCount(collapsedLogs[i]);
                    found            = true;
                    break;
                }
            }

            if (!found)
            {
                if (type.Equals(LogType.Log))
                {
                    collapsedLogCount++;
                }
                else if (type.Equals(LogType.Warning))
                {
                    collapsedWarningCount++;
                }
                else
                {
                    collapsedErrorCount++;
                }
                collapsedLogs.Add(newLog);
            }

            if (OnNewCollapsedLog != null)
            {
                OnNewCollapsedLog(newLog, true);
            }
        }
コード例 #29
0
ファイル: Log.cs プロジェクト: concept45/Arctium-RT
        static void SetLogger(LogType type, string text, params object[] args)
        {
            var solidColor = new XMedia.SolidColorBrush();

            switch (type)
            {
                case LogType.NORMAL:
                    solidColor.Color = Colors.Green;
                    CurrentBlock.Foreground = solidColor;

                    text = text.Insert(0, "System: ");
                    break;
                case LogType.ERROR:
                    solidColor.Color = Colors.Green;
                    CurrentBlock.Foreground = solidColor;

                    text = text.Insert(0, "Error: ");
                    break;
                case LogType.DUMP:
                    solidColor.Color = Colors.Green;
                    CurrentBlock.Foreground = solidColor;
                    break;
                case LogType.INIT:
                    solidColor.Color = Colors.Green;
                    CurrentBlock.Foreground = solidColor;
                    break;
                case LogType.MISC:
                    solidColor.Color = Colors.Green;
                    CurrentBlock.Foreground = solidColor;
                    break;
                case LogType.CMD:
                    solidColor.Color = Colors.Green;
                    CurrentBlock.Foreground = solidColor;
                    break;
                case LogType.DEBUG:
                    solidColor.Color = Colors.Green;
                    CurrentBlock.Foreground = solidColor;
                    break;
                default:
                    solidColor.Color = Colors.Green;
                    CurrentBlock.Foreground = solidColor;
                    break;
            }

            StringBuilder logText = new StringBuilder();

            if (type.Equals(LogType.INIT) | type.Equals(LogType.DEFAULT))
                logText.AppendFormat(text, args);
            else if (type.Equals(LogType.DUMP) || type.Equals(LogType.CMD))
                logText.AppendFormat(text, args);
            else
                logText.AppendFormat("[" + DateTime.Now.ToString() + "] " + text, args);

            CurrentBlock.Text += logText.ToString() + "\n";
        }
コード例 #30
0
ファイル: Log.cs プロジェクト: LuigiElleBalotta/Project-WoW
        static void SetLogger(LogType type, string text, params object[] args)
        {
            if ((logLevel & type) == type)
            {
                ConsoleColor foreGround;

                switch (type)
                {
                    case LogType.Init:
                        foreGround = ConsoleColor.Cyan;
                        break;
                    case LogType.Normal:
                        foreGround = ConsoleColor.Green;
                        text = text.Insert(0, "System: ");
                        break;
                    case LogType.Error:
                        foreGround = ConsoleColor.Red;
                        text = text.Insert(0, "Error: ");
                        break;
                    case LogType.Debug:
                        foreGround = ConsoleColor.DarkRed;
                        text = text.Insert(0, "Debug: ");
                        break;
                    case LogType.Packet:
                        foreGround = ConsoleColor.Yellow;
                        break;
                    case LogType.Database:
                        foreGround = ConsoleColor.DarkMagenta;
                        break;
                    case LogType.Network:
                        foreGround = ConsoleColor.Magenta;
                        break;
                    default:
                        foreGround = ConsoleColor.White;
                        break;
                }

                if (type.Equals(LogType.Init) || type.Equals(LogType.None))
                    logQueue.Add(Tuple.Create(foreGround, string.Format(text, args)));
                else
                    logQueue.Add(Tuple.Create(foreGround, string.Format("[" + DateTime.Now.ToLongTimeString() + "] " + text, args)));
            }
        }