c – 记录库的意义和目的是什么?
我想了解日志库的基础知识.
>记录库的目的是什么?我知道一个日志基本上是在执行过程中你的应用程序进程的信息.一种方法是直接在文件中写入信息. 解决方法
在执行应用程序期间记录信息可以帮助您了解导致错误或崩溃的原因,为您提供比简单的崩溃,调用堆栈甚至minidump报告更多的上下文.当您从不是开发人员的人身上获取错误或崩溃报告,并且没有在调试器下运行时,特别重要的是,您的团队中的最终用户/客户或非开发人员.
我的背景是在游戏中,由于几个原因,游戏记录可能是特别有价值的.一个是许多问题可以与系统上硬件的细节相关联,因此可以记录用户拥有的什么样的GPU,它们正在运行的图形驱动程序版本等信息,这对于调试只出现在具体配置.另一个原因是游戏有一个模拟方面,游戏的状态随着时间的推移而变化,以响应用户输入以及物理,AI和游戏规则等的仿真.了解在崩溃或错误的过程中发生的事情有助于弄清楚如何重现它,并且可以为问题的根本原因提供宝贵的线索. 日志记录库增加了对日志记录有用的功能,超出了一个简单的printf可用的功能.这包括以下内容: >根据诸如调试与发布版本以及运行时设置(如-verbose标志)等因素控制日志记录的能力. 至于如何使用日志库,这在某种程度上取决于你的应用程序,但这里有一些一般的建议: >如果您的日志库提供它们(应该),请充分利用频道和详细程度.这将帮助您管理在应用程序增长时可以成为大量日志消息的内容.>如果您遇到意外但非致命的情况并处理它,请记录一些有关信息,以防以后导致意外问题.>在应用程序启动时,如果您收到客户的错误或崩溃报告,请记录任何可能会在稍后再现罕见错误的信息.错误的信息太多,你永远不知道什么可能是有用的提前.这可能包括CPU类型,GPU型号和驱动程序版本,可用内存,操作系统版本,可用硬盘空间等.>记录关键状态转换,以便您可以在调试问题时跟踪应用程序的状态及其到达的位置. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |