|
|
赶快注册并登录访问我们网站,呈现更多精彩内容!
您需要 登录 才可以下载或查看,没有帐号?注册加入
x
快速本地使用:
! f1 I. V1 B3 A1 O9 x X% y1. 在Windows电脑上,我们推荐使用WM_COPYDATA消息进行日志传输,资源占用最少,速度最快。
# [- I6 S- E0 {. H* d7 P2. 如果您的应用程序已经具备UDP或TCP功能,可以直接通过原有的Socket将日志发送到本机的127...1。
! {+ K) N( q0 e; J" @; R; x# d3. 对于嵌入式系统的本地调试,您可以通过串口、USB或网口来进行日志传输。
5 A O. `# t- C8 i4 |0 | C
8 `! }1 v- }) i1 T' `0 |! l' v% b' K便捷远程及云端使用:
( H! Z- y& v4 K1. 您可以在路由器中设置端口转发功能,将对应的端口转发到安装了CloudLog的电脑上。
% F) w# l* b$ l t( \4 J2. 为了方便获取到电脑所在的IP地址,我们建议使用动态域名系统(DDNS)服务。
. d, [% f; y* P' O+ X' E! r8 I, t9 x3. 使用云控域名账号,在服务器上保存日志,您可以随时打开CloudLog回读所有未读过的日志。
h" |# K. R. U+ U0 U. w) `. D+ {" G% e3 {- }# F0 H; R
CloudLog的日志元素介绍:8 c5 Z9 G5 _* o" Z
1. 日志等级(Log Level,简写为LL)用于确认日志的重要性。* G) w5 b6 ^2 B4 L, p' s
2. 日期时间Tick(Date Time tick,简写为DT)用于确定日志生成的时刻。8 }8 }7 ]& Q/ [( S) T
3. 应用名(App Name,简写为AN)用于确认日志的来源项目或进程。9 p$ g- r, W+ w/ q! P0 t4 n/ m
4. 标签(Tag,简写为TA)用于按模块化区分日志。/ `7 X# P }8 j4 e; w$ B5 Q+ c/ r
5. 线程标识符(Thread Identity,简写为TI)用于区分多线程。: }- c6 y. M$ M, g
6. 文字内码(Text Code,简写为TC)用于实时调整当前的内码。9 c1 t$ K* D/ F. N
7. 日志文字(Log Text,简写为LT)可以使用任何内码进行记录。
1 C! p" I# M* g8. 日志缓冲(Log Buffer,简写为LB)可以传送阵列缓冲。
% x7 x) Y" h9 j$ s* S) p! J8 p9. 计时功能可以根据前一条日志的tick,计算出精确到1微秒的用时。
7 h0 E; |" X O7 i( K' p/ N6 ~8 n3 @; |" f2 ]9 K
CloudLog的日志等级说明:, R& z" ?. z0 T3 U, |" a J
1. Error级别表示严重的问题或软件执行功能错误,是最高等级的日志,无法屏蔽。& \* [1 q! Z$ g' b) Y, O/ j
2. Warn级别表示可能出现潜在错误的情况,当选择Error级别时,Warn级别的日志将不会显示。) k3 G, ?% r- I! f2 |5 ?
3. Info级别强调应用程序运行过程中的一些重要信息。( }9 d( v' ?2 c+ K
4. Debug级别仅在开发期间有用的调试消息,等级较低,在正式发布时一般不会出现。; o" t6 q* Q. }# \. W& y
5. Buffer阵列数值直接显示等级与Debug相同。7 v v& a; ^3 ]1 D/ P
6. Fixer级别用于固定位置显示日志,这些日志不保存到log文件中。
# @6 e0 p2 R2 ~# |9 s3 w
% z* A3 z7 D7 ` dCloudLog的日志过滤器功能:
$ ]- p, p3 v% N3 E2 M1 `0 E1. 可以根据日志等级及各种组合来过滤日志记录。
' j; b9 ^( C) d% q2. 关键词可以高亮显示,以增强可读性,您可以自定义加大、加粗或指定专门的颜色进行高亮突出显示。8 l f9 B' Z' z# W. q; e, O9 ?- ~) u
3. 您可以指定关键词,使含有指定关键词的日志不显示。
: g6 B8 w+ k; ~' I: [4. 您也可以指定关键词,使含有指定关键词的日志显示。
# t9 _6 p. W9 x. y5. 您还可以根据应用名中的关键词进行显示过滤。" d. n! w5 ~# Q. I$ ?: z: i% J& F
6. 同样地,您可以根据标签中的关键词进行显示过滤。
5 Y- c3 H! `; M- Q7 d
$ X% o, B+ u' D+ s' h. ]CloudLog支持的键值对风格文字:5 \! c1 P' d6 z7 P9 ]8 \4 x# J
1. 使用'&'分隔各个日志元素,每个元素由键值':'数值组成。 T% b U) j% E, R9 O/ K/ M3 l _
2. 日期时间Tick、日志文字及日志缓冲的数值使用Base64编码。
0 k0 I' p1 M: p7 B3. 应用名、标签及线程标识符一般只使用数字或字母。! [. {' l* ]& E; x/ D" c
4. 日期时间可以选择是否传送,可以是2字节的毫秒(ms)、3字节的微秒(us)或8字节的全部时间。
' T% O! |3 P( }0 N/ l! G" Y5. 一个简单的示例:"hello"日志可以表示为:ll:D&/aGVsbG8=# O6 N/ q: G/ t$ T
6 l" Y8 n! O9 M$ x
CloudLog支持的简易风格文字:
, T; F& j7 z2 I1. 使用空格分隔各个日志元素,请勿调换元素的顺序。8 R* z" Z- v7 A2 Q& M
2. 最少包含日志等级(LL)空格及日志文字(LT)。4 h# `7 X9 b! U" U& x+ G( o
3. LL+LT+文字,LT表示4位数的毫秒tick,范围从000到9999,最大可以表示10秒的时间间隔。
7 X) a- Z+ ]' K& ^4 I; D6 G4. LL+LT+TAG+文字,TAG标签用于按模块化区分日志,一般使用字母表示。4 a5 I: F. G& c
5. LL+LT+TAG+TI+文字,TI为-9的数字,表示线程标识符。
. u7 H; I( Q1 u* S/ {6. LL+LT+TAG+TI+TC+文字,TC为G=GBK内码或U=UTF-8内码。
* ?' H O' Z2 G5 Q7 ^5 Z+ ?3 H, [
使用开源库CloudLog的方法:) g' Z6 i- F% a
1. 直接从 https://gitee.com/hsav20/CloudLog.git 克隆整个仓库。% W! @3 h5 ~/ d: v! E# `' ^+ ?. E
2. 将CloudLog.c和CloudLog.h文件添加到您的项目中。: Z6 x, H2 I* P6 R" X6 J8 R. [
3. 在对应的平台目录(如PlatformWindows)中找到一个最接近的模板文件FwbConf.h,并将其复制到您的项目中。4 X; }9 \3 [( X- z* d
4. 根据您的实际使用环境,修改FwbConf.h中的配置信息。& H2 j/ {; U' o6 p
5. 参考PlatformWindows目录下的main.c文件,您可以了解如何输出不同类型的日志。 |
|