|
|
赶快注册并登录访问我们网站,呈现更多精彩内容!
您需要 登录 才可以下载或查看,没有帐号?注册加入
x
快速本地使用:
; u& o0 U5 q6 t |1. 在Windows电脑上,我们推荐使用WM_COPYDATA消息进行日志传输,资源占用最少,速度最快。
" J/ q7 m6 z3 x) q' q3 c \0 o2. 如果您的应用程序已经具备UDP或TCP功能,可以直接通过原有的Socket将日志发送到本机的127...1。4 G' g) ]5 P+ f8 E7 C9 r
3. 对于嵌入式系统的本地调试,您可以通过串口、USB或网口来进行日志传输。
. n' q+ Z! o$ k; B) W. G0 `6 B) V3 w' n" J4 |+ s! ?
便捷远程及云端使用:
5 H9 F* {8 b2 N7 ]3 O1. 您可以在路由器中设置端口转发功能,将对应的端口转发到安装了CloudLog的电脑上。
1 G- `$ T+ y! ]6 p2. 为了方便获取到电脑所在的IP地址,我们建议使用动态域名系统(DDNS)服务。
3 ~+ Q2 \* k7 {. a2 W h' j3. 使用云控域名账号,在服务器上保存日志,您可以随时打开CloudLog回读所有未读过的日志。+ v4 [4 [8 s# Q5 `1 u5 g6 V
& e3 V5 v9 g4 A+ \$ @7 u T2 F
CloudLog的日志元素介绍:0 Y6 q) ?) I' g' d& ]" {
1. 日志等级(Log Level,简写为LL)用于确认日志的重要性。
: Q: [- r3 {- e+ h. R* R2. 日期时间Tick(Date Time tick,简写为DT)用于确定日志生成的时刻。
' A4 O) |: ]5 Y$ T! P/ x. F3. 应用名(App Name,简写为AN)用于确认日志的来源项目或进程。( K4 q+ C5 O( k2 M8 i- w
4. 标签(Tag,简写为TA)用于按模块化区分日志。$ p. W) v0 ?9 `. B- M
5. 线程标识符(Thread Identity,简写为TI)用于区分多线程。+ m- v4 p6 E9 x& H# N! T
6. 文字内码(Text Code,简写为TC)用于实时调整当前的内码。4 A: y( q/ w5 F, u, X7 k
7. 日志文字(Log Text,简写为LT)可以使用任何内码进行记录。! E) P7 j4 J' Q; F% w
8. 日志缓冲(Log Buffer,简写为LB)可以传送阵列缓冲。
% r- j: n; I4 N' n9. 计时功能可以根据前一条日志的tick,计算出精确到1微秒的用时。8 [) v! l. {. k& h2 S: L
( s3 j2 P: L5 i' S* w% I
CloudLog的日志等级说明:6 n' D! G; u0 L# x; I/ Q
1. Error级别表示严重的问题或软件执行功能错误,是最高等级的日志,无法屏蔽。
( q/ `4 `% z/ c% q2. Warn级别表示可能出现潜在错误的情况,当选择Error级别时,Warn级别的日志将不会显示。
1 l8 o+ D* F$ W3. Info级别强调应用程序运行过程中的一些重要信息。* c' V1 j4 i" J9 U0 e6 q
4. Debug级别仅在开发期间有用的调试消息,等级较低,在正式发布时一般不会出现。
% p2 P) ]5 @9 w4 Z) a5 W c: C5. Buffer阵列数值直接显示等级与Debug相同。
- c2 E8 r$ N: y3 r! l! K6. Fixer级别用于固定位置显示日志,这些日志不保存到log文件中。
! w _2 [ n' b/ w( Y3 i/ |1 k v, h' f8 U
CloudLog的日志过滤器功能:
0 \1 f, a% ~; e5 n8 i1. 可以根据日志等级及各种组合来过滤日志记录。/ M+ l5 D8 Y" m3 a
2. 关键词可以高亮显示,以增强可读性,您可以自定义加大、加粗或指定专门的颜色进行高亮突出显示。
5 j* I9 Y' J5 [) p+ Y9 f: z! [3. 您可以指定关键词,使含有指定关键词的日志不显示。
" T/ w# Q8 }# S; o; a) O# g4. 您也可以指定关键词,使含有指定关键词的日志显示。' u' r* l3 H" T5 K1 D6 t( q' u+ B
5. 您还可以根据应用名中的关键词进行显示过滤。, i' F# y+ ?; S. e. {* H5 @
6. 同样地,您可以根据标签中的关键词进行显示过滤。
$ w- T& Z. L F4 N( |% n' y ` ]" \# Y6 A i T$ }& u
CloudLog支持的键值对风格文字: M4 ~9 Z$ n* ?# |
1. 使用'&'分隔各个日志元素,每个元素由键值':'数值组成。) I8 G8 W$ \' A
2. 日期时间Tick、日志文字及日志缓冲的数值使用Base64编码。$ Y3 j& |2 s" S X# t9 }
3. 应用名、标签及线程标识符一般只使用数字或字母。4 }; [9 _1 z7 E" M0 B/ g
4. 日期时间可以选择是否传送,可以是2字节的毫秒(ms)、3字节的微秒(us)或8字节的全部时间。
s" L# ~3 z h' z& K) C, T( s5. 一个简单的示例:"hello"日志可以表示为:ll:D&/aGVsbG8=
0 W3 L8 x5 e W8 ?2 }
2 O: @, b2 J5 N" q& ^7 ~3 H& MCloudLog支持的简易风格文字:
. B( F' e" t0 A: J% E8 w1. 使用空格分隔各个日志元素,请勿调换元素的顺序。
5 q- |+ `0 e- F2. 最少包含日志等级(LL)空格及日志文字(LT)。
8 _ L5 a4 d5 \% L% D( N; Z3. LL+LT+文字,LT表示4位数的毫秒tick,范围从000到9999,最大可以表示10秒的时间间隔。
8 d4 J3 |! z( Q) V* k4. LL+LT+TAG+文字,TAG标签用于按模块化区分日志,一般使用字母表示。
8 \: _$ y& A- B: M4 y5. LL+LT+TAG+TI+文字,TI为-9的数字,表示线程标识符。
* K* H4 c, k; H8 d6 f, H8 |6. LL+LT+TAG+TI+TC+文字,TC为G=GBK内码或U=UTF-8内码。
3 h3 i% w9 g+ h4 A* c) {$ g. {6 `( K: X3 m% Q1 t; V* i: L
使用开源库CloudLog的方法:
' k2 O# J- V; P" a0 }5 b1. 直接从 https://gitee.com/hsav20/CloudLog.git 克隆整个仓库。6 y4 i5 j7 H% s) d$ E
2. 将CloudLog.c和CloudLog.h文件添加到您的项目中。7 n# f* s9 \, Q+ a) M- U
3. 在对应的平台目录(如PlatformWindows)中找到一个最接近的模板文件FwbConf.h,并将其复制到您的项目中。7 k" V7 z+ F+ l. e A
4. 根据您的实际使用环境,修改FwbConf.h中的配置信息。
! F: W2 t9 x; e% h& q" }5. 参考PlatformWindows目录下的main.c文件,您可以了解如何输出不同类型的日志。 |
|