Log 配置¶
Log 初始化配置¶
| 方法名 | 类型 | 必须 | 含义 |
|---|---|---|---|
| setSamplingRate | Float | 否 | 设置采集率,取值范围 [0,1],0 表示不采集,1 表示全采集,默认值为 1 |
| setEnableConsoleLog | Boolean | 否 | 是否上报控制台日志,该配置依赖 ft-plugin,默认 false。日志等级对应关系为:Log.v -> ok、Log.i -> info、Log.d -> debug、Log.e -> error、Log.w -> warning。prefix 为控制前缀过滤参数,默认不设置过滤。注意:Android 控制台日志量是很大的,为了避免影响应用性能,减少不必要的资源浪费,建议使用 prefix 过滤出有价值的日志。ft-plugin 1.3.5 以上版本,支持捕获 Log.println 打印的日志 |
| setEnableLinkRUMData | Boolean | 否 | 是否与 RUM 数据关联,默认为 false |
| setEnableCustomLog | Boolean | 否 | 是否上传自定义日志,默认为 false |
| setLogLevelFilters | Array | 否 | 设置等级日志过滤,默认不设置 |
| addGlobalContext | Dictionary | 否 | 添加 log 全局属性,添加规则请查阅此处 |
| setLogCacheLimitCount | Int | 否 | 本地缓存最大日志条目数量限制 [1000,),日志越大,代表磁盘缓存压力越大,默认为 5000 |
| setLogCacheDiscardStrategy | LogCacheDiscard | 否 | 设置日志达到限制上限以后的日志丢弃规则,默认为 LogCacheDiscard.DISCARD,DISCARD 为丢弃追加数据,DISCARD_OLDEST 丢弃老数据 |
Logger 日志打印¶
通过使用 FTLogger 进行自定义日志输出,需要开启 FTLoggerConfig.setEnableCustomLog(true)。
目前日志内容限制为 30 KB,字符超出部分会进行截断处理。
使用方法¶
/**
* 将单条日志数据存入本地同步
*
* @param content 日志内容
* @param status 日志等级,enum Status
* @param property 附加属性(可选)
*/
public void logBackground(String content, Status status, HashMap<String, Object> property)
/**
* 将单条日志数据存入本地同步
*
* @param content 日志内容
* @param status 日志等级,String
* @param property 附加属性(可选)
*/
public void logBackground(String content, String status, HashMap<String, Object> property)
/**
* 将多条日志数据存入本地同步
*
* @param logDataList {@link LogData} 列表
*/
public void logBackground(List<LogData> logDataList)
/**
* 将单条日志数据存入本地同步
*
* @param content 日志内容
* @param status 日志等级
* @param property 日志属性(可选)
*/
fun logBackground(content: String, status: Status, property: HashMap<String, Any>)
/**
* 将单条日志数据存入本地同步
*
* @param content 日志内容
* @param status 日志等级
* @param property 日志属性(可选)
*/
fun logBackground(content: String, status: String, property: HashMap<String, Any>)
/**
* 将多条日志数据存入本地同步
*
* @param logDataList 日志数据列表
*/
fun logBackground(logDataList: List<LogData>)
日志等级¶
| 方法名 | 含义 |
|---|---|
| Status.DEBUG | 调试 |
| Status.INFO | 提示 |
| Status.WARNING | 警告 |
| Status.ERROR | 错误 |
| Status.CRITICAL | 严重 |
| Status.OK | 恢复 |
代码示例¶
// 上传单个日志
FTLogger.getInstance().logBackground("test", Status.INFO);
// 传递参数到 HashMap
HashMap<String, Object> map = new HashMap<>();
map.put("ft_key", "ft_value");
FTLogger.getInstance().logBackground("test", Status.INFO, map);
// 批量上传日志
List<LogData> logList = new ArrayList<>();
logList.add(new LogData("test", Status.INFO));
FTLogger.getInstance().logBackground(logList);