|
赶快注册并登录访问我们网站,呈现更多精彩内容!
您需要 登录 才可以下载或查看,没有帐号?注册加入
x
快速本地使用:
- ]1 z6 g9 B5 q( T1. 在Windows电脑上,我们推荐使用WM_COPYDATA消息进行日志传输,资源占用最少,速度最快。( ^' a, v# O0 {# B9 K
2. 如果您的应用程序已经具备UDP或TCP功能,可以直接通过原有的Socket将日志发送到本机的127...1。
# F) m/ N' c7 Z% E3. 对于嵌入式系统的本地调试,您可以通过串口、USB或网口来进行日志传输。, ?; Z) H( @! X1 p# |; L
) s7 n3 J3 `5 r! c9 g9 s
便捷远程及云端使用:1 T- i1 [# k1 m- B% [0 ?/ L
1. 您可以在路由器中设置端口转发功能,将对应的端口转发到安装了CloudLog的电脑上。
% F9 B* A- h; Y# R2. 为了方便获取到电脑所在的IP地址,我们建议使用动态域名系统(DDNS)服务。( l* L' O! y6 S, b4 n4 p5 L
3. 使用云控域名账号,在服务器上保存日志,您可以随时打开CloudLog回读所有未读过的日志。% Q$ [1 Z k. W' r7 ^3 Z
& h O. f$ d& C" h
CloudLog的日志元素介绍:
2 |' u$ P6 ^" Q' L* s& X1. 日志等级(Log Level,简写为LL)用于确认日志的重要性。
0 J2 T' K; j, u6 Q) h, H2. 日期时间Tick(Date Time tick,简写为DT)用于确定日志生成的时刻。
/ E2 a% x* P& u7 k3. 应用名(App Name,简写为AN)用于确认日志的来源项目或进程。
; H. N |# ^/ ^, q Y4 z+ u E% Z% p4. 标签(Tag,简写为TA)用于按模块化区分日志。7 O) o9 A( N$ _" {% x
5. 线程标识符(Thread Identity,简写为TI)用于区分多线程。0 j$ Z$ j7 E- ~' r- J
6. 文字内码(Text Code,简写为TC)用于实时调整当前的内码。6 k- `' ?- V2 s+ L* R
7. 日志文字(Log Text,简写为LT)可以使用任何内码进行记录。9 l: j$ j- _+ y
8. 日志缓冲(Log Buffer,简写为LB)可以传送阵列缓冲。
, ?& ^6 J/ L# v8 E) O2 L9. 计时功能可以根据前一条日志的tick,计算出精确到1微秒的用时。$ v6 s; U7 @+ ~ D
) [6 m( o$ }3 Q8 o$ cCloudLog的日志等级说明:
% x0 r0 z6 i2 B! k% T. t1. Error级别表示严重的问题或软件执行功能错误,是最高等级的日志,无法屏蔽。0 m$ B8 e. t \6 v* b+ |: p
2. Warn级别表示可能出现潜在错误的情况,当选择Error级别时,Warn级别的日志将不会显示。; n! H+ v9 U, ?0 |
3. Info级别强调应用程序运行过程中的一些重要信息。0 L7 B# L& d e/ ?! n
4. Debug级别仅在开发期间有用的调试消息,等级较低,在正式发布时一般不会出现。# T* L0 e5 o! W& `8 ?4 h
5. Buffer阵列数值直接显示等级与Debug相同。/ E: W& f7 t* f- E) z: z" d
6. Fixer级别用于固定位置显示日志,这些日志不保存到log文件中。1 Q6 e; O1 |4 h. c2 D. a4 ^
2 p. g" [1 G6 y- pCloudLog的日志过滤器功能:
: }6 z! Y+ W' ]& f6 L' K1. 可以根据日志等级及各种组合来过滤日志记录。
, T g* T% `- Z5 |! L4 |0 y' `' c) F2. 关键词可以高亮显示,以增强可读性,您可以自定义加大、加粗或指定专门的颜色进行高亮突出显示。
/ ?& _4 C) J9 w3. 您可以指定关键词,使含有指定关键词的日志不显示。
( V- M# K' {7 s9 E* W! v2 e4. 您也可以指定关键词,使含有指定关键词的日志显示。) k) k. D6 K: f- i6 q5 W, b
5. 您还可以根据应用名中的关键词进行显示过滤。
$ T8 t* G, q( l2 P4 M+ H# r% s3 i `6. 同样地,您可以根据标签中的关键词进行显示过滤。
. A# V. G3 i- P: v1 I; G0 N9 i) S7 l% d9 ?% @ R
CloudLog支持的键值对风格文字:
8 W0 h. _' c0 v9 Z) h/ @. q6 `1. 使用'&'分隔各个日志元素,每个元素由键值':'数值组成。
* k { w/ O" n+ g3 ^2 B2. 日期时间Tick、日志文字及日志缓冲的数值使用Base64编码。! N5 N( y+ I, `& B
3. 应用名、标签及线程标识符一般只使用数字或字母。
3 v& N0 z+ k% k; F4. 日期时间可以选择是否传送,可以是2字节的毫秒(ms)、3字节的微秒(us)或8字节的全部时间。8 L1 w* B. N- ^6 m0 p4 s1 x! ]
5. 一个简单的示例:"hello"日志可以表示为:ll:D&/aGVsbG8=
" w. ?: I6 n6 E( S( e
7 I% Q6 s: [- \* P* J8 r2 Z* KCloudLog支持的简易风格文字:
. Q3 C, \$ o1 h. e4 y: S% ^1. 使用空格分隔各个日志元素,请勿调换元素的顺序。
+ @# L7 f/ v% l) y2 u- Z2. 最少包含日志等级(LL)空格及日志文字(LT)。) l; y- g& j, o
3. LL+LT+文字,LT表示4位数的毫秒tick,范围从000到9999,最大可以表示10秒的时间间隔。$ |; N; R; T3 i6 ^6 a: [
4. LL+LT+TAG+文字,TAG标签用于按模块化区分日志,一般使用字母表示。' g( n$ O1 ?7 R( p+ ^( }" R* e
5. LL+LT+TAG+TI+文字,TI为-9的数字,表示线程标识符。* u* t0 J* _: r# [/ a. _
6. LL+LT+TAG+TI+TC+文字,TC为G=GBK内码或U=UTF-8内码。! X& l4 z8 L6 X8 |
& ~! g. `( ]+ K q+ ]3 t1 ], H
使用开源库CloudLog的方法:
# c( V- { p2 l0 _: r1. 直接从 https://gitee.com/hsav20/CloudLog.git 克隆整个仓库。: n3 P2 R5 a. u& r' Q. V. D. ~9 T
2. 将CloudLog.c和CloudLog.h文件添加到您的项目中。/ P Y% H4 l: j- ?- d W: k
3. 在对应的平台目录(如PlatformWindows)中找到一个最接近的模板文件FwbConf.h,并将其复制到您的项目中。/ [! p4 W- Q2 i
4. 根据您的实际使用环境,修改FwbConf.h中的配置信息。: t* ~ { E5 J3 m2 M( s( B0 e
5. 参考PlatformWindows目录下的main.c文件,您可以了解如何输出不同类型的日志。 |
|