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

云控日志CloudLog

[复制链接]
发表于 2023-8-14 16:19:43 | 显示全部楼层 |阅读模式
快速本地使用:
" G' P% [) g7 p& T6 r% ~9 @1. 在Windows电脑上,我们推荐使用WM_COPYDATA消息进行日志传输,资源占用最少,速度最快。7 e2 m+ S$ a  ~* v/ W9 E
2. 如果您的应用程序已经具备UDP或TCP功能,可以直接通过原有的Socket将日志发送到本机的127...1。' I9 O1 S$ w" V% I) q6 q+ p
3. 对于嵌入式系统的本地调试,您可以通过串口、USB或网口来进行日志传输。% p8 V" r: y: C# ?8 b4 i

$ g. ?4 L& p* J4 U/ {便捷远程及云端使用:
: ?  |! m) R+ p5 L  p0 z+ x  v1. 您可以在路由器中设置端口转发功能,将对应的端口转发到安装了CloudLog的电脑上。- F+ ^7 J( t2 |. N: X. }8 [; i9 D" z
2. 为了方便获取到电脑所在的IP地址,我们建议使用动态域名系统(DDNS)服务。/ }2 {' k+ Z5 Z. y) s: U* w
3. 使用云控域名账号,在服务器上保存日志,您可以随时打开CloudLog回读所有未读过的日志。
& I) I* M, r5 f0 }! H! c* F! P4 L+ ?+ u4 `+ |0 _) Q6 h  M
CloudLog的日志元素介绍:
7 o! a/ J, z  w9 z4 M1. 日志等级(Log Level,简写为LL)用于确认日志的重要性。3 n6 L" b! L# U) l. f9 c! b: d
2. 日期时间Tick(Date Time tick,简写为DT)用于确定日志生成的时刻。) K5 Q. W' Z5 \/ d# w6 G  F4 T/ v/ {
3. 应用名(App Name,简写为AN)用于确认日志的来源项目或进程。  r9 ~0 F6 G" o, |/ T3 M) E
4. 标签(Tag,简写为TA)用于按模块化区分日志。
/ M) t- z8 v% X7 a, ~4 K4 t9 s3 E: X5. 线程标识符(Thread Identity,简写为TI)用于区分多线程。
4 ^& T* o  X. ^+ a6. 文字内码(Text Code,简写为TC)用于实时调整当前的内码。
5 H3 s# o& j2 }+ Z4 Y8 F, L  L) \7. 日志文字(Log Text,简写为LT)可以使用任何内码进行记录。  T2 Z6 Z. M& r- ^
8. 日志缓冲(Log Buffer,简写为LB)可以传送阵列缓冲。9 F8 l$ P1 J/ h1 O% t' a
9. 计时功能可以根据前一条日志的tick,计算出精确到1微秒的用时。! D5 K1 ^2 y) ?1 P8 h

  q5 M& e! a% s8 P/ ECloudLog的日志等级说明:
/ T* h# d7 k# H0 \7 l1. Error级别表示严重的问题或软件执行功能错误,是最高等级的日志,无法屏蔽。/ l' i" e; M) e& I$ r1 w
2. Warn级别表示可能出现潜在错误的情况,当选择Error级别时,Warn级别的日志将不会显示。
2 {4 R. u* i/ l+ g0 S9 p3. Info级别强调应用程序运行过程中的一些重要信息。
7 j6 T" T- M8 h5 Q4. Debug级别仅在开发期间有用的调试消息,等级较低,在正式发布时一般不会出现。
# i! J/ r6 E' j# ?% D5. Buffer阵列数值直接显示等级与Debug相同。: s1 N% J* @1 T4 l8 r
6. Fixer级别用于固定位置显示日志,这些日志不保存到log文件中。
5 B, y6 _8 C! {& A& v1 J" D' b& x0 Q$ @
CloudLog的日志过滤器功能:$ _5 ?# y6 t* V! h8 W$ R( t. g
1. 可以根据日志等级及各种组合来过滤日志记录。
/ T0 ^7 R' e2 j9 p9 j0 }) G2. 关键词可以高亮显示,以增强可读性,您可以自定义加大、加粗或指定专门的颜色进行高亮突出显示。
! A4 O0 l9 ?& y) w7 A$ x& G& _3. 您可以指定关键词,使含有指定关键词的日志不显示。8 I. |) f2 _$ e2 \3 M
4. 您也可以指定关键词,使含有指定关键词的日志显示。$ m# H9 y/ D# }/ a# ]
5. 您还可以根据应用名中的关键词进行显示过滤。, E) T0 r! a' o) n7 R
6. 同样地,您可以根据标签中的关键词进行显示过滤。2 ^! j0 K1 Y  j
" R+ R/ C5 n# d: D
CloudLog支持的键值对风格文字:
+ x: B9 }. j9 v* |2 i4 x* H1 ]1. 使用'&'分隔各个日志元素,每个元素由键值':'数值组成。! F- |" F7 A" c0 C& q
2. 日期时间Tick、日志文字及日志缓冲的数值使用Base64编码。# z! Z6 Y9 K4 M" B3 v% R, C0 [
3. 应用名、标签及线程标识符一般只使用数字或字母。
4 W; _; }: j+ ^; K. C2 U4. 日期时间可以选择是否传送,可以是2字节的毫秒(ms)、3字节的微秒(us)或8字节的全部时间。
' k3 O+ y* l0 Q( w/ \% {5. 一个简单的示例:"hello"日志可以表示为:ll:D&/aGVsbG8=3 ^1 A* U3 b/ [: ]* I9 v. Q

1 r: r3 y0 F! v- _7 _8 O; r" mCloudLog支持的简易风格文字:
+ h, o" V. E* j9 ?9 w1. 使用空格分隔各个日志元素,请勿调换元素的顺序。
1 A9 l/ h0 W' q2 q2. 最少包含日志等级(LL)空格及日志文字(LT)。
  i* ]" U  F: b( }% l' U0 O3. LL+LT+文字,LT表示4位数的毫秒tick,范围从000到9999,最大可以表示10秒的时间间隔。# _3 v0 s7 ]9 \4 D7 b2 Q
4. LL+LT+TAG+文字,TAG标签用于按模块化区分日志,一般使用字母表示。
  ]5 v+ m4 y' [" N3 z, i5. LL+LT+TAG+TI+文字,TI为-9的数字,表示线程标识符。. O0 j# g4 R  U" E" t' R# A
6. LL+LT+TAG+TI+TC+文字,TC为G=GBK内码或U=UTF-8内码。
5 T& g5 i" t, r
4 j3 d$ K+ X. a$ a- e; K: F使用开源库CloudLog的方法:
) o. a5 N! {+ h3 v6 M# G  Y* d0 z1. 直接从 https://gitee.com/hsav20/CloudLog.git 克隆整个仓库。
/ \; ]9 G! i( r5 I2. 将CloudLog.c和CloudLog.h文件添加到您的项目中。
! Q& c: W, [& y3. 在对应的平台目录(如PlatformWindows)中找到一个最接近的模板文件FwbConf.h,并将其复制到您的项目中。
5 ~) k% K6 H9 {: U% k. L" R4. 根据您的实际使用环境,修改FwbConf.h中的配置信息。
- I4 R' J4 L9 t5. 参考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.