unity3d log管理

unity3d的log管理,主要区分log的重要程度,有时候习惯在项目开发过程中随意打log,到后期出现log比较多且混乱的情况,在真机上调试的时候也会很不方便。

这里记录下最近写的一个Log管理类,还有很大的优化空间,以后有时间在详细弄下。

public enum LogLevel  //Log等级
    {
        Everything,
        Normal,
        Important,
        Emergy
    }

    public enum LogColor //Log颜色
    {
        White,
        Red,
        Yellow,
        Blue,
        Green,
        Purple,
        Orange
    }

    public static class Log
    {
        public static Dictionary<LogColor, string> colors = new Dictionary<LogColor, string>();
        public static LogLevel curMsgType = LogLevel.Everything; //当前允许的打印等级

        public static void InitColor()
        {
            colors.Add(LogColor.White, "FFFFFF");
            colors.Add(LogColor.Green, "00FF00");
            colors.Add(LogColor.Blue, "99CCFF");
            colors.Add(LogColor.Red, "FF0000");
            colors.Add(LogColor.Yellow, "FFFF00");
            colors.Add(LogColor.Purple, "CC6699");
            colors.Add(LogColor.Orange, "FF9933");
        }

        public static void LogMsg(string msg, LogColor color = LogColor.White, LogLevel type = LogLevel.Normal)
        {
            if (type < curMsgType)  //只允许打印比curMsgType等级高的Log,方便Log等级管理
            {
                return;
            }
            msg = string.Format("<color=#{0}>{1}</color>",colors[color],msg);
            Debug.Log(msg);
        }

        public static void LogMsg(string msg, GameObject go,LogLevel type = LogLevel.Normal, LogColor color = LogColor.White)
        {
            if (type < curMsgType)
            {
                return;
            }
            msg = string.Format("<color=#{0}>{1}</color>", colors[color], msg);
            Debug.Log(msg,go);
        }
    }
时间: 2024-10-06 23:18:06

unity3d log管理的相关文章

Unity3d Log

adb logcat -d > logcat.txt adb logcat -s Unity adb logcat Unity3d Log,布布扣,bubuko.com

[译]Unity3D内存管理——对象池(Object Pool)

从一个简单的对象池类开始说起 对象池背后的理念其实是非常简单的.我们将对象存储在一个池子中,当需要时在再次使用,而不是每次都实例化一个新的对象.池的最重要的特性,也就是对象池设计模式的本质是允许我们获取一个“新的”对象而不管它真的是一个新的对象还是循环使用的对象.该模式可以用以下简单的几行代码实现: public class ObjectPool<T> where T : class, new() { private Stack<T> m_objectStack = new Sta

Unity3D Log 收集机制

最近做项目的时候发现,需要有一个完整的log机制.这样不仅方便调试而且方便观察. 一.需求 目前我认为一个完善的log机制应该是这样的. 一.双击定位 二.生命周期是全局的 三.输出包括consloe 和 log 日志,并且这些log的打印是可配置的. 四.未完待续,如果你有更好的想法,请留言. 二.代码实现 不废话,直接上代码 using UnityEngine; using System; using System.Text; using System.IO; using System.Co

Unity3D Log文件所在

官方地址:https://docs.unity3d.com/Manual/LogFiles.html PS.有时候Unity直接崩溃,这时候使用日志文件查看日志会是定位问题的好方法. 链接附带各种情况下的log文件路径并且分别分平台简述. 原文地址:https://www.cnblogs.com/zhang-dkln/p/11777254.html

unity3d内存管理坑爹之处

Resources.UnloadUnusedAssets();会卸载没有引用的资源,切场景也会自动清理 但是注意,如果不调,是不会自动清理的,比如不断的用www加载图片资源,即使没有引用,也一样在内存里面 :

Unity3D游戏开发之从Unity3D项目版本号控制说起

??各位朋友.大家好.欢迎大家关注我的博客,我是秦元培,我的独立博客地址是http://qinyuanpei.com.CSDN博客地址是http://blog.csdn.net/qinyuanpei. 今天我想和大家聊聊Unity3D游戏项目的版本号控制. 1.为什么要进行版本号控制? ??当我一个人写代码的时候,在我的脑海中是不存在版本号控制这个概念的.由于我对整个项目的代码如数家珍. 但是当我和一群人在一起写代码的时候.我可能并不会清楚团队中有谁改动了哪一行代码,即使是一个变量的名称或者是一

【快速查阅】Linux下启动和关闭Weblogic(管理服务器+被管服务器)

Weblogic的管理服务器和被管服务器的启动.关闭,偶尔会用到,却又不常用,导致需用时却忘记了,而又重新查阅HELP. 故,以此记录,方便查阅.执行. 首先,weblogic的启动脚本和关闭脚本都在域目录的bin文件夹下,所以,先cd到该目录 cd $WEBLOGIC_HOME/user_projects/domains/$DOMAIN_NAME/bin 然后按需要执行以下脚本: 管理服务器的启动 ./startWebLogic.sh即可 但离开命令行模式随即关闭,所以需用nohup模式 亦可

Kafka 源代码分析之log框架介绍

这里主要介绍log管理,读写相关的类的调用关系的介绍. 在围绕log的实际处理上.有很多层的封装和调用.这里主要介绍一下调用结构和顺序. 首先从LogManager开始. 调用关系简单如下:LogManager->Log->LogSegment->FileMessageSet->ByteBufferMessageSet->MessageSet->Message LogManager作为kafka一个子系统在管理log的工作上必不可少.LogManager通过Log类来为

转载:Linux下启动和关闭Weblogic(管理服务器+被管服务器)

转载自:http://www.cnblogs.com/nick-huang/p/3834134.html  感谢! Weblogic的管理服务器和被管服务器的启动.关闭,偶尔会用到,却又不常用,导致需用时却忘记了,而又重新查阅HELP. 故,以此记录,方便查阅.执行. 首先,weblogic的启动脚本和关闭脚本都在域目录的bin文件夹下,所以,先cd到该目录 cd $WEBLOGIC_HOME/user_projects/domains/$DOMAIN_NAME/bin 然后按需要执行以下脚本: