HarmonyOS NEXT hiLog日志类封装
【摘要】 在鸿蒙原生开发中,推荐使用hiLog日志来打印我们需要查看的数据,在写hiLog日志时,需要入参四个参数来设置hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onWindowStageCreate');其中第一个参数domain,是不需要处理的,按照默认值来展示就好;第二个参数 prefix,在封装类中我们可以统一设置同一个值,方便检...
在鸿蒙原生开发中,推荐使用hiLog日志来打印我们需要查看的数据,在写hiLog日志时,需要入参四个参数来设置
hilog.info(0x0000, 'testTag', '%{public}s', 'Ability onWindowStageCreate');
其中第一个参数domain,是不需要处理的,按照默认值来展示就好;
第二个参数 prefix,在封装类中我们可以统一设置同一个值,方便检索同一个应用下的日志信息,筛除掉系统日志和隐藏应用的日志影响,提高我们定位问题的效率;
第三个参数和第四个参数是相互对照的,需要指定相应参数打印的方式,是public还是private;正常我们debug开发时,全部设置为public就好,发release时需要设置debugModel模式,避免用户使用时,因HiLog日志打印影响性能
const MAX_LENGTH = 3500;
static debug(...args: string[]): void {
if (this.isModelDebug) {
if (!args || args.length < 1) {
return;
}
let argsLength = args.length;
let format = '';
let length = 0;
let index = 0;
for (index = 0; index <= argsLength - 1; index++) {
format = format + '%{public}s,';
let currentLength = length + args[index]?.length;
if (currentLength > MAX_LENGTH) {
args[index] = args[index].substring(0, MAX_LENGTH-length);
index ++;
break;
} else {
length = currentLength;
}
}
format = format.substring(0, format.length - 1);
hilog.debug(0x0000, 'CustomPrefix', format, args.slice(0, index));
}
}
MAX_LENGTH设置是为了一次打印太多数据影响我们调试,这个也可以根据个人业务需求来设置。
----------------- end ---------------
后面会继续补充不足之处。
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
作者其他文章
评论(0)