Logcat

2018-03-25  本文已影响0人  左卫门_6e62

logcat是一个微型跨平台日志应用,笔者编写它,主要是用来开发cocos2d游戏的,代码托管在github上。这篇文章介绍如何使用它。
logcat包括两部分,用来打印日志的,下文称它为打印端;另一个部份为客户端编程接口,下文称它为客户端。 打印端和客户端通过udp协议通信。

打印端

打印端是一个electron app。在代码仓库根目录中,名为logcat.7z的文件是已经配置好了的windows版程序,解压后运行里面的electron.exe即可。代码仓库根目录的app文件夹实际上是打印端的程序主体,使用mac或者linux的朋友,可以按照electron官网的说明将它安装到各自平台的electron程序中。 以下为打开打印端界面截图:

运行效果

客户端(c++)

编程端提供win32 c++,node.js以及lua三个版本,这里主要介绍c++版在vs中的配置。

打印Hello,world!
日志等级i,d,w,e

最基础的打印函数为UdpLog::i(tag,msg),UdpLog::d(tag,msg),UdpLog::w(tag,msg)以及UdpLog::e(tag,msg)。msg参数即为要打印的字符串;tag参数也为字符串,主要用来醒目的分类各种日志信息,它将会打印在标签栏中。它们的区别为日志等级不同:

si、sd、sw、se

有时候我们打印信息可能并不在意tag是什么,此时就可以忽略它。si、sd、sw、se函数分别相当于i、d、w、e函数省略了tag参数,在函数内部会把tag值直接设为logid了。

StackTrace

包括UdpLog::iStackTrace、UdpLog::dStackTrace、UdpLog::wStackTrace、UdpLog::eStackTrace四个函数,区别为四个日志等级。它们主要是打印调用栈,只有在win32平台中才能使用。

iBytes

函数UdpLog::iBytes(tag,bytes,len)用来打印unsigned char数组,日志等级为infomation。bytes为数组或者指针,len为数组长度。打印的数组内容都用16进制数字表示,开头的数字为十进制,表示数组长度。

上一篇下一篇

猜你喜欢

热点阅读