异常记录日志功能"/>
Unity 异常记录日志功能
当unity工程打包后,程序的Bug出现后,可能出现无法还原错误或者无法捕获错误的情况。也因此,自己做了一个简单的功能,实现了一个错误日志记录功能,打包后在根目录生成log文件。在可能出现异常的位置使用
try
{
}catch(Exception ex)
{
throw ex;
}
配合如下代码可以进行错误日志记录。
void Awake(){if(IsHandler){Application.logMessageReceived += Handler;}}private void OnDestroy(){Application.logMessageReceived -= Handler;}void Handler(string logString,string stackTrace,LogType type){if(type==LogType.Error||type==LogType.Exception||type==LogType.Assert){UnityEngine.Debug.Log("接收到异常信息" + logString);string logPath = Path.Combine(LogPath,DateTime.Now.ToString("yyyy_MM_dd_HH_mm_ss"))+".log";if (!Directory.Exists(LogPath))Directory.CreateDirectory(LogPath);if(Directory.Exists(LogPath)){File.AppendAllText(logPath, "[time]:" + DateTime.Now.ToString() + "\r\n");File.AppendAllText(logPath, "[type]:" +type.ToString()+ "\r\n");File.AppendAllText(logPath, "[exception message]:" + logString + "\r\n");File.AppendAllText(logPath, "[stack Trace]:" + stackTrace + "\r\n");}if (IsQuitWhenException){#if UNITY_EDITORUnityEditor.EditorApplication.isPlaying = false;#elseApplication.Quit();#endif}}}
更多推荐
Unity 异常记录日志功能
发布评论