关于harmonyos:HiLog日志

13次阅读

共计 1778 个字符,预计需要花费 5 分钟才能阅读完成。

作者:韩茹

公司:程序咖(北京)科技有限公司

鸿蒙巴士专栏作家

HarmonyOS 提供了 HiLog 日志零碎,让利用能够依照指定类型、指定级别、指定格局字符串输入日志内容,帮忙开发者理解利用的运行状态,更好地调试程序。

输入日志的接口由 HiLog 类提供。在输入日志前,须要先调用 HiLog 的辅助类 HiLogLabel 定义日志标签。

一、定义日志标签

应用 HiLogLabel(int type, int domain, String tag)定义日志标签,其中包含了日志类型、业务畛域和 TAG。应用示例:

static final HiLogLabel LABEL = new HiLogLabel(HiLog.LOG_APP, 0x00201, "MY_TAG"); 
  • 参数 type:用于指定输入日志的类型。HiLog 中以后只提供了一种日志类型,即利用日志类型 LOG_APP。
  • 参数 domain:用于指定输入日志所对应的业务畛域,取值范畴为 0x0~0xFFFFF,开发者能够依据须要进行自定义。
  • 参数 tag:用于指定日志标识,能够为任意字符串,倡议标识调用所在的类或者业务行为。

开发者能够依据自定义参数 domain 和 tag 来进行日志的筛选和查找。

二、输入日志

HiLog 中定义了 DEBUG、INFO、WARN、ERROR、FATAL 五种日志级别,并提供了对应的办法用于输入不同级别的日志,如下表所示。

接口名 性能形容
debug(HiLogLabel label, String format, Object… args) 输入 DEBUG 级别的日志。DEBUG 级别日志示意仅用于利用调试,默认不输入,输入前须要在设施的“开发人员选项”中关上“USB 调试”开关。
info(HiLogLabel label, String format, Object… args) 输入 INFO 级别的日志。INFO 级别日志示意一般的信息。
warn(HiLogLabel label, String format, Object… args) 输入 WARN 级别的日志。WARN 级别日志示意存在正告。
error(HiLogLabel label, String format, Object… args) 输入 ERROR 级别的日志。ERROR 级别日志示意存在谬误。
fatal(HiLogLabel label, String format, Object… args) 输入 FATAL 级别的日志。FATAL 级别日志示意呈现致命谬误、不可复原谬误。
  • 参数 label:定义好的 HiLogLabel 标签。
  • 参数 format:格局字符串,用于日志的格式化输入。格局字符串中能够设置多个参数,例如格局字符串为“Failed to visit %s.”,“%s”为参数类型为 string 的变参标识,具体取值在 args 中定义。

    每个参数需增加隐衷标识,分为 {public} 或{private},默认为 {private}。{public} 示意日志打印后果可见;{private}示意日志打印后果不可见,输入后果为 <private>。

  • 参数 args:能够为 0 个或多个参数,是格局字符串中参数类型对应的参数列表。参数的数量、类型必须与格局字符串中的标识一一对应。

以输入一条 WARN 级别的信息为例,示例代码:

HiLog.warn(LABEL, "Failed to visit %{private}s, reason:%{public}d.", url, errno);

该行代码示意输入一个日志标签为 label 的正告信息,格局字符串为:“Failed to visit %{private}s, reason:%{public}d.”。其中变参 url 的格局为公有的字符串,errno 为公共的整型数。

三、查看日志信息

DevEco Studio 提供了 HiLog 窗口查看日志信息,开发者可通过设置设施、过程、日志级别和搜寻关键词来筛选日志信息。搜寻性能反对应用正则表达式,开发者可通过搜寻自定义的业务畛域值和 TAG 来筛选日志信息。

如示例所示,依据理论状况抉择了设施和过程后,搜寻业务畛域值“00201”进行筛选,失去对应的日志信息。

  • W 示意日志级别为 WARN。
  • 00201/MY_TAG 为开发者在 HiLogLabel 中定义的内容。
  • 日志内容中的 url 为公有参数不显示具体内容,仅显示 <private>。errno 为私有参数,显示理论取值 503。

正文完
 0