# DntSdk **Repository Path**: hsav20/DntSdk ## Basic Information - **Project Name**: DntSdk - **Description**: DntSdk - **Primary Language**: C - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-05-16 - **Last Updated**: 2025-08-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 深圳市酷唱科技有限公司 #### SDK介绍 云控日志CloudLog可以接收电脑、手机、嵌入式系统如Stm32单片机等发出的日志作统一的保存及处理。 #### 电脑及嵌入式系统本地使用 1、Windows电脑应用软件优先使用WM_COPYDATA消息,占用资源最少,速度最快。 2、如果本身应用带有UDP或TCP的,使用原有的Socket往127.0.0.1发送。 3、嵌入式系统本地调试可以使用串口、USB或网口。 #### 远程及云端日志使用 1、可以在路由器之中使用转发功能将对应的端口转发到运行CloudLog的电脑。 2、需要通过动态域名系统获取电脑所在的IP地址。 3、使用云控域名账号在服务器保存日志,任何时候打开CloudLog都可以回读所有未读过的日志。 #### CloudLog使用到的日志元素 1、日志等级用于确认重要性,Log Level简写为LL。 2、日期时间Tick用于确认生成的时刻,Date Time简写为DT。 3、应用名用于确认来源的项目或进程,App Name简写为AN。 4、标签用于保证日志模块化,Tag简写为TA。 5、线程标识符用于区分多线程,Thread Identity简写为TI。 6、文字内码用于实时调整当前的内码,Text Code简写为TC。 7、日志文字可以任何内码,Log Text简写为LT。 8、日志缓冲可以传送阵列缓冲,Log Buffer简写为LB。 9、计时可以根据前一条日志的tick,计算出精确到1us的用时。 #### CloudLog使用的日志等级说明 1、Error严重的问题或软件没能执行一些功能的错误,不可以屏蔽。 2、Warn会出现潜在错误的情形,选择为Error级别时不显示。 3、Info强调应用程序运行过程的一些重要的信息。 4、Debug仅在开发期间有用的调试消息,级别较低,一般不会在正式发布时出现。 5、Buffer阵列数值直接显示级别与Debug相同。 6、Fixer固定位置显示日志,不保存到log文件。 #### CloudLog使用的键值对风格文字 1、使用'&'分隔各个日志元素,元素由键值':'数值组成。 2、日期时间Tick、日志文字及日志缓冲的数值使用Base64编码。 3、应用名、标签及线程标识符一般只使用数字或字母。 4、日期时间可以为不传送、2字节的ms、3字节的us及8字节全部。 5、一个简单的"hello"日志例子:ll:D<:aGVsbG8= #### CloudLog支持的简易风格文字 1、使用空格分隔各个日志元素,不能调换元素的顺序。 2、最少为LL+文字,简单的例子:D hello。 3、LL+LT4+文字,LT4表示4位数值从0000到9999最大10秒的毫秒tick。 4、LL+LT4+TA3+文字,TA3表示3个字的标签,一般使用字母。 5、LL+LT4+TA3+TI+文字,TI为0-9的数字表示线程标识符。 6、LL+LT4+TA3+TI+TC+文字,TC为G=GBK内码、U=UTF-8内码。 #### 使用开源库CloudLog的方法 1、直接从https://gitee.com/hsav20/CloudLog.git克隆。 2、将CloudLog.c及CloudLog.h加入到项目。 3、在各种平台目录PlatformX中找一个最接近的模板FwbConf.h复制到项目。 4、修改FwbConf.h内的配置以适合自己的使用环境。 5、参考PlatformWindows\KeysGbk(或KeysUtf8)的main.c可以输出各种日志。