{"version":"0.1.0","code":"0000","result":true,"message":"处理成功","errdetail":"","timestamp":1671508798547,"data":{"id":71712610,"title":"1.7日志开关控制","slug":"nz0bnd","format":"lake","bookId":26046811,"body":null,"body_draft":null,"body_html":"

场景图

如上图为SDK日志文件样例

时序图

关键参数

成员

含义

示例说明

logFileName

日志文件名称

{logFileName}_{AutoSDK版本号}_dice_{引擎版本号}.log,比如BLLog_9.460.0.1.160000_dice.10.21.41.406.log

logPath

日志文件存储路径

如/sdcard/navi/bllog/,之后程序执行过程中

就会在该路径下生成如下日志:

  • 网络库日志:
    • log_GNet.log
    • log/network/{logFileName}_{AutoSDK版本号}_dice_{引擎版本号}_log_xxx
  • AutoSDK日志:log/{logFileName}_{AutoSDK版本号}_dice_{引擎版本号}_log_xxx


备注:

  • 客户端抓取日志时,将/sdcard/navi/bllog/

整个路径压缩成zip包,上传aone缺陷附件

  • 在log_GNet.log文件 同级目录下,创建一个空文件gnet_stat_a.txt ,重启,重现问题,程序全部网络请求数据在gnet_stats/目录下采集生成。
  • 在log_GNet.log 同级目录新建2个log文件, 文件名: log_mqtt.log 和 log_mqtt_jni.log,可以开启mqttSDK高频日志方法

logLevel

日志输出级别控制



LogLevelNone 不打任何日志(包括log_GNet.log等)

LogLevelError  打印错误日志

LogLevelWarn 打印警告、错误日志

LogLevelInfo   打印普通、警告、错误日志

LogLevelDebug 打印调试、普通、警告、错误日志

LogLevelVerbose 打印高频、调试、普通、警告、错误日志

groupMask

日志掩码,即可按模块打印日志

如设GROUP_MASK_ALL值,打印

所有模块日志

如设置GROUP_MASK_NULL=0, 不打印任何模块的日志包括(log_GNet.log)

async

目前不支持

(由于同步日志的模式GPI日志库会有性能问题) 目前,AutoSDK内部写死为 异步方式

maxFiles

目前不支持


maxFileSize

目前不支持


recordCacheMaxFiles

日志文件最大个数,默认BLlog_xxx.log文件最多保留40个。

使用默认值就可以。

recordCacheMaxFileSize

单个日志文件默认最大字节数据,

默认单个BLlog_xxx.log文件保留最大20M。

不要超过20M,使用默认值就可


模块定义,参见LogModuleType.java


成员

含义

示例说明

level

模块日志级别

EGcoLogLevel.GCO_LOG_NULL 不打印任何日志

EGcoLogLevel.GCO_LOG_ERROR 错误日志

EGcoLogLevel.GCO_LOG_INFO 信息日志

EGcoLogLevel.GCO_LOG_DEBUG 调试日志

EGcoLogLevel.GCO_LOG_VERBOSE 最详细的信息

onoff

开关模块日志

true 开启

false 关闭

核心接口

int com.autonavi.gbl.servicemanager.ServiceMgr.initBaseLibs (BaseInitParam)

void com.autonavi.gbl.servicemanager.ServiceMgr.switchLog(long level)

void com.autonavi.gbl.servicemanager.ServiceMgr.setGroupMask(long groupMask)

void com.autonavi.gbl.util.LogIntf.configModule(int modType, LogModuleConfig config)


说明:函数详情,请复制函数名称到在线API搜索

调用示例

// 初始化BL基础功能库\nBaseInitParam mBaseInitParam = new BaseInitParam();\nmBaseInitParam.logPath = pcLogPath;\n// 场景一: 不打印任何级别日志\nmBaseInitParam.logLevel = ALCLogLevel.LogLevelNone;\n// 场景二:打印全部级别日志\n//mBaseInitParam.logLevel = ALCLogLevel.LogLevelVerbose;\n// 场景一:不打印任何模块日志\nmBaseInitParam.groupMask = ALCGroup.GROUP_MASK_NULL;\n// 场景二: 打印全部模块日志\n//mBaseInitParam.groupMask = ALCGroup.GROUP_MASK_ALL;\n//ALC日志输出到logcat\nmBaseInitParam.bLogcat = true;\n//ALC日志输出到logcat 使用同步的方式\nmBaseInitParam.async = false;\n//最多40个文件,不填写默认也是40个\nmBaseInitParam.recordCacheMaxFiles = 40;\n//每个文件最大20M,不要超过这个值\nmBaseInitParam.recordCacheMaxFileSize = 1024 * 1024 *20;\nServiceMgr.getServiceMgrInstance().InitBaseLibs(mBaseInitParam )\n  \n// 日志开关控制\n// 场景一:关闭日志\nServiceMgr.getServiceMgrInstance().switchLog(ALCLogLevel.LogLevelNone);\nServiceMgr.getServiceMgrInstance().setGroupMask(ALCGroup.GROUP_MASK_NULL);\n// 场景二:低频Log\nServiceMgr.getServiceMgrInstance().switchLog(ALCLogLevel.LogLevelInfo);\nServiceMgr.getServiceMgrInstance().setGroupMask(ALCGroup.GROUP_MASK_BL_HMI);\n// 场景三:高频Log\nServiceMgr.getServiceMgrInstance().switchLog(ALCLogLevel.LogLevelDebug);\nServiceMgr.getServiceMgrInstance().setGroupMask(ALCGroup.GROUP_MASK_ALL);\n// 场景四:超高频Log\nServiceMgr.getServiceMgrInstance().switchLog(ALCLogLevel.LogLevelVerbose);\nServiceMgr.getServiceMgrInstance().setGroupMask(ALCGroup.GROUP_MASK_ALL);\n\n// 模块开关控制\n// 场景一:关闭GBL_BIZ模块日志\nLogModuleConfig logConf = LogModuleConfig();\nlogConf.onoff = false;\nLogIntf.configModule(LogModuleType.GBL_BIZ, logConf);\n// 场景二:设置GBL_BIZ模块日志级别为Error\nLogModuleConfig logConf = LogModuleConfig();\nlogConf.onoff = true;\nlogConf.level = EGcoLogLevel.GCO_LOG_ERROR;\nLogIntf.configModule(LogModuleType.GBL_BIZ, logConf);

注意事项

详见

","body_lake":null,"pub_level":null,"status":"0","updated_at":"2022-11-25 03:53:53","deleted_at":null,"nameSpace":"mnlcaa/v610","browseCount":261,"collectCount":0,"estimateDate":9,"docStatus":0,"permissions":true,"overView":false}}