Log 配置¶
本文用于承载 HarmonyOS Log 初始化配置。
初始化配置¶
import { FTSDK, FTLoggerConfig, Status } from '@guancecloud/ft_sdk/Index';
const logConfig = new FTLoggerConfig()
.setSamplingRate(1.0)
.setEnableCustomLog(true)
.setLogLevelFilters([
Status.ERROR,
Status.WARN,
Status.INFO,
Status.DEBUG
])
.setEnableLinkRumData(true)
.addGlobalContext('log_source', 'business')
.setLogCacheLimitCount(10000);
FTSDK.installLogConfig(logConfig);
| 方法 | 类型 | 必须 | 说明 |
|---|---|---|---|
setSamplingRate |
number |
否 | 日志采样率,范围 [0.0, 1.0],默认 1.0 |
setEnableCustomLog |
boolean |
否 | 是否启用自定义日志,默认 false |
setEnableLinkRumData |
boolean |
否 | 是否关联 RUM 数据,默认 false |
setLogLevelFilters |
Array<Status | string | { name: string }> |
否 | 日志级别过滤,可选值:ERROR、WARN、INFO、DEBUG |
addGlobalContext |
Dictionary |
否 | 添加 Log 全局属性,支持 key,value;添加规则请查阅此处 |
addGlobalContext |
key: string, value: object |
否 | 添加 Log 全局属性,添加规则请查阅此处 |
setLogCacheLimitCount |
number |
否 | 日志数据缓存数量限制,默认 5000,最小值 1000 |
setLogCacheDiscardStrategy |
LogCacheDiscard |
否 | 设置日志达到限制上限以后的日志丢弃规则,默认为 LogCacheDiscard.DISCARD,DISCARD 为丢弃追加数据,DISCARD_OLDEST 丢弃老数据 |
Logger 日志打印¶
使用 FTLogger 上报自定义日志前,需开启 setEnableCustomLog(true)。单条日志内容最大为 30 KB,超出部分会被截断。
使用方法¶
/**
* 上报单条自定义日志。
*
* @param content 日志内容。
* @param status 日志等级,可传 `Status` 或等级字符串。
* @param property 附加属性(可选)。
* @param isSilence 是否静默处理(可选)。
*/
FTLogger.logBackground(
content: string,
status: Status | string,
property?: Map<string, object>,
isSilence?: boolean
): void
代码示例¶
import { FTLogger, Status } from '@guancecloud/ft_sdk/Index';
// 上传单个日志。
FTLogger.logBackground('登录成功', Status.INFO);
// 传递附加属性。
const property = new Map<string, object>();
property.set('user_id', new String('user-001'));
FTLogger.logBackground('支付完成', Status.INFO, property);
日志等级¶
| 方法名 | 含义 |
|---|---|
| Status.TRACE | 跟踪 |
| Status.DEBUG | 调试 |
| Status.INFO | 提示 |
| Status.WARN | 警告 |
| Status.ERROR | 错误 |
| Status.FATAL | 严重 |
使用建议¶
setLogLevelFilters(...)控制FTLogger业务 Log 的上报级别,与 SDK 内部诊断日志的setSdkLogLevel(...)相互独立- 调试阶段可结合
setEnableCustomLog(true)、setDebug(true)和 SDK 调试日志 一起验证采集链路 - 若希望日志与用户行为、页面和资源数据串联分析,建议同时开启
setEnableLinkRumData(true) - 若日志量较大,可通过采样率和级别过滤控制上报量