errDump - 错误上报#
已适配 Air780E Air780EP
备注
本页文档由这个文件自动生成。如有错误,请提交issue或帮忙修改后pr,谢谢!
小技巧
本库有专属demo,点此链接查看errDump的demo例子
示例
-- 基本用法, 10分钟上报一次,如果有的话
if errDump then
errDump.config(true, 600)
end
-- 附开源服务器端: https://gitee.com/openLuat/luatos-devlog
errDump.dump(zbuff, type, isDelete)#
手动读取异常日志,主要用于用户将日志发送给自己的服务器而不是IOT平台,如果在errDump.config配置了周期上传,则不能使用本函数
参数
传入值类型 |
解释 |
---|---|
zbuff |
日志信息缓存,如果为nil就不会读出,一般当 |
int |
日志类型,目前只有errDump.TYPE_SYS和errDump.TYPE_USR |
boolean |
是否删除日志 |
返回值
返回值类型 |
解释 |
---|---|
boolean |
true表示本次读取前并没有写入数据,false反之,在删除日志前,最好再读一下确保没有新的数据写入了 |
例子
local result = errDump.dump(buff, errDump.TYPE_SYS, false) --读出系统记录的异常日志
local result = errDump.dump(nil, errDump.TYPE_SYS, true) --清除系统记录的异常日志
errDump.record(string)#
写入用户的异常日志,注意最大只有4KB,超过部分新的覆盖旧的,开启自动上传后会上传到合宙IOT平台
参数
传入值类型 |
解释 |
---|---|
string |
日志 |
返回值
返回值类型 |
解释 |
---|---|
nil |
无返回值 |
例子
errDump.record("socket long time no connect") --记录下"socket long time no connect"
errDump.config(enable, period, user_flag, custom_id, host, port)#
配置关键日志上传IOT平台,这里的日志包括引起luavm异常退出的日志和用户通过record写入的日志,类似于air的errDump
参数
传入值类型 |
解释 |
---|---|
boolean |
是否启用记录功能,false的话将不会记录任何日志 |
int |
定时上传周期,单位秒,默认600秒,这个是自动上传时候后的重试时间时间,在开机后或者有record操作后会很快尝试上传到合宙IOT平台一次,如果为0,则不会上传,由用户dump后自己上传自己的平台 |
string |
用户的特殊标识,可以为空 |
string |
设备识别号, 4G设备默认是imei,其他设备默认是mcu.unique_id |
string |
服务器域名,默认dev_msg1.openluat.com |
int |
服务器端口,默认 |
返回值
返回值类型 |
解释 |
---|---|
nil |
无返回值 |
例子
errDump.config(true, 3600, "12345678") --一个小时尝试上次一次,上传时会在imei后附加上12345678
errDump.config(false) --关闭记录功能,不再上传
errDump.config(true, 0) --记录,但是不会主动上传,由用户实现上传功能
-- 2023.09.22新增custom_id参数
errDump.config(true, 3600, nil, "ABC") --一个小时尝试上次一次,上传时使用自定义的设备识别号ABC
-- 2023.12.8 新增host和port参数
errDump.config(true, 3600, nil, nil, "dev_msg1.openluat.com", 12425)