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

云控日志CloudLog

[复制链接]
发表于 2023-8-14 16:19:43 | 显示全部楼层 |阅读模式
快速本地使用:) }6 I/ t& n, H9 f3 z1 Y3 T
1. 在Windows电脑上,我们推荐使用WM_COPYDATA消息进行日志传输,资源占用最少,速度最快。
% b- \6 J# G- r6 o) C# [7 Q1 u2. 如果您的应用程序已经具备UDP或TCP功能,可以直接通过原有的Socket将日志发送到本机的127...1。
' F( ]' l& Q) X0 [! k% Q* z; p2 F3. 对于嵌入式系统的本地调试,您可以通过串口、USB或网口来进行日志传输。
" }' G: k. {+ m& g8 x& S
$ l' `! S, b/ U( q3 i便捷远程及云端使用:
# O* J% ?0 M* M1. 您可以在路由器中设置端口转发功能,将对应的端口转发到安装了CloudLog的电脑上。
' N! A. Y, E# w; b2. 为了方便获取到电脑所在的IP地址,我们建议使用动态域名系统(DDNS)服务。# ^, J1 G* g6 G7 }
3. 使用云控域名账号,在服务器上保存日志,您可以随时打开CloudLog回读所有未读过的日志。
0 @* \5 M: x- V& ^9 C/ W6 Y( S1 l) J5 H2 J/ U1 l1 z  c
CloudLog的日志元素介绍:& t; Y2 `0 B* a7 k' q1 l; g$ L
1. 日志等级(Log Level,简写为LL)用于确认日志的重要性。
3 F4 E" T4 m) J. f4 }/ |0 W2. 日期时间Tick(Date Time tick,简写为DT)用于确定日志生成的时刻。
" d' b/ c$ s' d+ ~8 k3. 应用名(App Name,简写为AN)用于确认日志的来源项目或进程。3 c: U. Q" Y; C) T3 K
4. 标签(Tag,简写为TA)用于按模块化区分日志。
8 n1 c8 S; E! j$ X  h" ^, r9 z- Z. q5. 线程标识符(Thread Identity,简写为TI)用于区分多线程。0 y" l0 e% v8 u# n
6. 文字内码(Text Code,简写为TC)用于实时调整当前的内码。, N0 m# h( f$ c  C* p
7. 日志文字(Log Text,简写为LT)可以使用任何内码进行记录。
9 f$ Z% `% T; i% L: R7 L- J8. 日志缓冲(Log Buffer,简写为LB)可以传送阵列缓冲。! U2 W. G$ }$ W- n* w
9. 计时功能可以根据前一条日志的tick,计算出精确到1微秒的用时。
; S- X6 u. k6 b6 R1 A0 j$ u
; S$ g! O' f* F% V* ^CloudLog的日志等级说明:; q. h! }. a. K8 H& z# j5 l" K9 p( p" c; A
1. Error级别表示严重的问题或软件执行功能错误,是最高等级的日志,无法屏蔽。
9 G, s; \: R- O% h' @2. Warn级别表示可能出现潜在错误的情况,当选择Error级别时,Warn级别的日志将不会显示。$ @8 H& f* E7 i/ X+ X0 n, }: g
3. Info级别强调应用程序运行过程中的一些重要信息。' l3 \+ r& i! [6 S  ?
4. Debug级别仅在开发期间有用的调试消息,等级较低,在正式发布时一般不会出现。
/ i1 T2 J4 ?1 L) D  j5. Buffer阵列数值直接显示等级与Debug相同。
- o: q6 K7 Y+ w8 g+ U6. Fixer级别用于固定位置显示日志,这些日志不保存到log文件中。7 D4 W  ~0 F. r! T; g

4 d) `( ^& b: g& f) WCloudLog的日志过滤器功能:0 ^3 p9 r6 G& i! A* C5 E1 H3 o
1. 可以根据日志等级及各种组合来过滤日志记录。
, J4 Q: b6 C: ^' E/ @2. 关键词可以高亮显示,以增强可读性,您可以自定义加大、加粗或指定专门的颜色进行高亮突出显示。
; ~* S8 E8 v* ?9 J3 ^. E  P2 ]3. 您可以指定关键词,使含有指定关键词的日志不显示。7 ]# X4 `- D+ S! Z
4. 您也可以指定关键词,使含有指定关键词的日志显示。
  o. h7 q- r  J# h7 M( l5. 您还可以根据应用名中的关键词进行显示过滤。
* A; k  t: s' f/ P3 @6. 同样地,您可以根据标签中的关键词进行显示过滤。
6 P5 F: @, n! q9 [9 j6 n+ \5 J2 u0 l: n3 Z; M! {" Z( U
CloudLog支持的键值对风格文字:
, g& C5 z% B; \- S: A1. 使用'&'分隔各个日志元素,每个元素由键值':'数值组成。
" t0 R8 w  S& \- p8 t2. 日期时间Tick、日志文字及日志缓冲的数值使用Base64编码。
) x( g4 y" I) i4 d. J9 k  o3. 应用名、标签及线程标识符一般只使用数字或字母。% a! M+ }  ]9 D8 o- F: K) ^
4. 日期时间可以选择是否传送,可以是2字节的毫秒(ms)、3字节的微秒(us)或8字节的全部时间。! K& W+ }  E! x9 N7 Y  Z( \
5. 一个简单的示例:"hello"日志可以表示为:ll:D&/aGVsbG8=
' |8 O- o5 b1 C$ Z  n2 X* x- i# w, m
CloudLog支持的简易风格文字:% z. j, L0 v$ x" I
1. 使用空格分隔各个日志元素,请勿调换元素的顺序。
% |+ D# F8 _/ a0 U0 r. E; \3 d: w2. 最少包含日志等级(LL)空格及日志文字(LT)。. F+ H- `0 ^) ?+ G
3. LL+LT+文字,LT表示4位数的毫秒tick,范围从000到9999,最大可以表示10秒的时间间隔。
- h' r/ g% U" R0 n* @7 e; _4. LL+LT+TAG+文字,TAG标签用于按模块化区分日志,一般使用字母表示。/ m3 a/ s- h2 ^7 m$ }* C
5. LL+LT+TAG+TI+文字,TI为-9的数字,表示线程标识符。% c/ b' r  q6 N, O, Y
6. LL+LT+TAG+TI+TC+文字,TC为G=GBK内码或U=UTF-8内码。# |% l! k  Y! J0 t. x

7 x- S: H0 r+ G/ x2 p( A使用开源库CloudLog的方法:. w6 y& l5 \& m
1. 直接从 https://gitee.com/hsav20/CloudLog.git 克隆整个仓库。
9 }/ G- D: a0 v  D/ R: q2. 将CloudLog.c和CloudLog.h文件添加到您的项目中。1 ~& t$ U3 p7 c  O+ h/ g8 ?. |
3. 在对应的平台目录(如PlatformWindows)中找到一个最接近的模板文件FwbConf.h,并将其复制到您的项目中。
' d* K' A% n- `! k7 r5 h( x+ D, t4. 根据您的实际使用环境,修改FwbConf.h中的配置信息。
$ G0 c8 @* k& `6 v+ `# L6 l5. 参考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.