查看: 2009|回复: 0
收起左侧

云控日志CloudLog

[复制链接]
发表于 2023-8-14 16:19:43 | 显示全部楼层 |阅读模式
快速本地使用:/ L, @! m4 f- y, x9 b% ?& D% s
1. 在Windows电脑上,我们推荐使用WM_COPYDATA消息进行日志传输,资源占用最少,速度最快。
3 V/ e8 d( r5 o% Q, W+ \2. 如果您的应用程序已经具备UDP或TCP功能,可以直接通过原有的Socket将日志发送到本机的127...1。+ |) {9 s/ b9 Z$ I% _! W
3. 对于嵌入式系统的本地调试,您可以通过串口、USB或网口来进行日志传输。' l$ `. J$ [1 q6 y( x. H: H# ]

4 P+ ?" N& F5 T' X; C便捷远程及云端使用:% K1 n& O+ [# a- I, l
1. 您可以在路由器中设置端口转发功能,将对应的端口转发到安装了CloudLog的电脑上。6 ^) z/ F4 _7 [' H& a7 P
2. 为了方便获取到电脑所在的IP地址,我们建议使用动态域名系统(DDNS)服务。8 r, g; _, u6 t+ Q% }
3. 使用云控域名账号,在服务器上保存日志,您可以随时打开CloudLog回读所有未读过的日志。
3 J/ O4 F! V  K3 a4 |% h+ l+ r7 w: ]5 t
CloudLog的日志元素介绍:- P) x' l0 q  B3 r8 b
1. 日志等级(Log Level,简写为LL)用于确认日志的重要性。
. T; T, `; i- W8 `6 X1 g7 t7 G5 v# e2. 日期时间Tick(Date Time tick,简写为DT)用于确定日志生成的时刻。6 ^. v1 B6 X; U6 y
3. 应用名(App Name,简写为AN)用于确认日志的来源项目或进程。5 Q  S* T4 [" ~+ O4 }
4. 标签(Tag,简写为TA)用于按模块化区分日志。4 F* R. a+ y7 }
5. 线程标识符(Thread Identity,简写为TI)用于区分多线程。
0 v  Y+ {8 ]" n6. 文字内码(Text Code,简写为TC)用于实时调整当前的内码。0 g( t3 |1 K6 @, N
7. 日志文字(Log Text,简写为LT)可以使用任何内码进行记录。
* R' r7 `; C8 r8. 日志缓冲(Log Buffer,简写为LB)可以传送阵列缓冲。4 x+ B" w8 P" v& r% T2 Q% s+ z
9. 计时功能可以根据前一条日志的tick,计算出精确到1微秒的用时。# p) ~+ E: a: b2 }. u8 U0 b0 A+ G

# w$ l* R  r' g) x% g, VCloudLog的日志等级说明:7 ~3 \/ W: Z! T6 |" X3 J. S+ \- V9 O
1. Error级别表示严重的问题或软件执行功能错误,是最高等级的日志,无法屏蔽。
5 `! ?( d- d$ B( l! v+ g/ v4 n. ~2. Warn级别表示可能出现潜在错误的情况,当选择Error级别时,Warn级别的日志将不会显示。
; J/ |8 q& ^6 w+ e9 y3 U, o/ f) [3. Info级别强调应用程序运行过程中的一些重要信息。: b; T4 d" y& q2 ~- u
4. Debug级别仅在开发期间有用的调试消息,等级较低,在正式发布时一般不会出现。* u7 T* {9 n7 S( Y: T  S, G
5. Buffer阵列数值直接显示等级与Debug相同。  F5 @3 X  x6 Y; A# [
6. Fixer级别用于固定位置显示日志,这些日志不保存到log文件中。
7 ~( h& a) B5 |# A. D: `
: \2 Q3 d& g0 {( Q5 FCloudLog的日志过滤器功能:5 W: ]4 w4 D- H/ v& }
1. 可以根据日志等级及各种组合来过滤日志记录。
( P/ b  n3 H" b% k) f, x% F, k2. 关键词可以高亮显示,以增强可读性,您可以自定义加大、加粗或指定专门的颜色进行高亮突出显示。
4 e( m' c+ k3 Y& \6 M% g9 l3. 您可以指定关键词,使含有指定关键词的日志不显示。
- M' ]& \) ~- J9 P  S; {! J4. 您也可以指定关键词,使含有指定关键词的日志显示。
+ p! X4 A' P" c* L; ?5. 您还可以根据应用名中的关键词进行显示过滤。9 b7 Y( H' j9 f: W
6. 同样地,您可以根据标签中的关键词进行显示过滤。
0 U2 ?. o7 Y: s% w! A4 {3 G
! r2 L6 H) d+ [! Z8 QCloudLog支持的键值对风格文字:
: s: a/ F1 o# n. V) t1. 使用'&'分隔各个日志元素,每个元素由键值':'数值组成。$ e4 b( g& _6 G3 x, o
2. 日期时间Tick、日志文字及日志缓冲的数值使用Base64编码。' D( e$ x1 J: U( q: g1 v5 a7 h
3. 应用名、标签及线程标识符一般只使用数字或字母。  ^. ?' I6 T( [/ p2 a' t; G
4. 日期时间可以选择是否传送,可以是2字节的毫秒(ms)、3字节的微秒(us)或8字节的全部时间。
4 O7 h; H9 U  D* d5. 一个简单的示例:"hello"日志可以表示为:ll:D&/aGVsbG8=' D. V. Z: g- _' L4 }4 O$ z

! ]8 K% b# Z1 n" A9 c5 fCloudLog支持的简易风格文字:) `* ?- w; P' R* h7 u. Z6 P
1. 使用空格分隔各个日志元素,请勿调换元素的顺序。+ I  ^, ?* V( L/ a( c" y
2. 最少包含日志等级(LL)空格及日志文字(LT)。- L/ o7 F7 G1 c$ ~) o
3. LL+LT+文字,LT表示4位数的毫秒tick,范围从000到9999,最大可以表示10秒的时间间隔。
1 U( n! q5 u9 A6 x  \4. LL+LT+TAG+文字,TAG标签用于按模块化区分日志,一般使用字母表示。" `/ u  b# Y/ z/ t, @. `
5. LL+LT+TAG+TI+文字,TI为-9的数字,表示线程标识符。1 P( k2 s+ E4 V3 |7 g! a) i: ]
6. LL+LT+TAG+TI+TC+文字,TC为G=GBK内码或U=UTF-8内码。9 ]0 Y, N  t  j
2 S, K! M  G5 {% z7 y1 Z
使用开源库CloudLog的方法:7 f: w9 F, \' X9 J8 S
1. 直接从 https://gitee.com/hsav20/CloudLog.git 克隆整个仓库。
1 ]6 J- O% I( ]8 U9 z2. 将CloudLog.c和CloudLog.h文件添加到您的项目中。
% A( J. Z  p* b$ v* X3. 在对应的平台目录(如PlatformWindows)中找到一个最接近的模板文件FwbConf.h,并将其复制到您的项目中。
9 ]& f! S9 w0 s! q% T' ]6 j4. 根据您的实际使用环境,修改FwbConf.h中的配置信息。
4 m2 f4 A) ?$ X$ M* j* [+ f  @5. 参考PlatformWindows目录下的main.c文件,您可以了解如何输出不同类型的日志。
高级模式
B Color Image Link Quote Code Smilies @朋友

本版积分规则

在线客服

客服电话

欢迎来电咨询

188-9985 8350

微信关注

手机APP程序:
扫码下载访问

微信公众平台:
摄像头之家公众号

微信小程序:
摄像头小程序

返回顶部

QQ|站点统计|小黑屋|手机版|Archiver|摄像头模组论坛网 ( 粤ICP备18155214号 )

Powered by Discuz! X3.4 Licensed© 2001-2013 Comsenz Inc.