private static void LogReceiveHandler(string logString, string stackTrace, UnityEngine.LogType logType)
        {
            //Threads safety lock implementation
            lock (Loggers) {
                //Prevent nasty recursion problems
                if (!AlreadyLogging)
                {
                    try {
                        AlreadyLogging = true;
                        var logInfo = new UCL_UnityLog(logString, stackTrace, logType);

                        //Delete any dead loggers and pump them with the new log
                        Loggers.RemoveAll(l => l == null);
                        Loggers.ForEach(l => l.OnLogReceived(logInfo));
                    }
                    finally {
                        AlreadyLogging = false;
                    }
                }
            }
        }
Beispiel #2
0
        public void LogException(Exception exception, UnityEngine.Object context)
        {
            UCL_UnityLog log = new UCL_UnityLog(exception.Message, exception.StackTrace, LogType.Exception);

            LogMessage(log.TagName, log.FullLog);
        }
Beispiel #3
0
        //--------------------------------------
        // ILogMessageReceiver
        //--------------------------------------

        public void OnLogReceived(UCL_UnityLog log)
        {
            LogMessage(log.TagName, log.Message);
            //	LogMessage (log.LogType, log.LogString + "\n" + log.StackTrace);
        }
Beispiel #4
0
        //--------------------------------------
        // Overrided
        //--------------------------------------



        public void LogFormat(LogType logType, UnityEngine.Object context, string format, params object[] args)
        {
            UCL_UnityLog log = new UCL_UnityLog(String.Format(format, args), "", logType);

            LogMessage(log.TagName, log.Message);
        }