0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

鴻蒙開(kāi)發(fā)系統(tǒng)基礎(chǔ)能力:ohos.hilog 日志打印

jf_46214456 ? 來(lái)源:jf_46214456 ? 作者:jf_46214456 ? 2024-06-25 15:59 ? 次閱讀

日志打印

hilog日志系統(tǒng),使應(yīng)用/服務(wù)可以按照指定級(jí)別、標(biāo)識(shí)和格式字符串輸出日志內(nèi)容,幫助開(kāi)發(fā)者了解應(yīng)用/服務(wù)的運(yùn)行狀態(tài),更好地調(diào)試程序。

說(shuō)明: 本模塊首批接口從API version 7開(kāi)始支持。后續(xù)版本的新增接口,采用上角標(biāo)單獨(dú)標(biāo)記接口的起始版本。

導(dǎo)入模塊

import hilog from '@ohos.hilog';

hilog.isLoggable

isLoggable(domain: number, tag: string, level: LogLevel) : boolean

在打印日志前調(diào)用該接口,用于檢查指定領(lǐng)域標(biāo)識(shí)、日志標(biāo)識(shí)和級(jí)別的日志是否可以打印。

系統(tǒng)能力: SystemCapability.HiviewDFX.HiLog

參數(shù)

參數(shù)名類型必填說(shuō)明
domainnumber日志對(duì)應(yīng)的領(lǐng)域標(biāo)識(shí),范圍是0x0~0xFFFF,開(kāi)發(fā)者可根據(jù)需要自定義。
tagstring指定日志標(biāo)識(shí),可以為任意字符串,建議用于標(biāo)識(shí)調(diào)用所在的類或者業(yè)務(wù)行為。
level[LogLevel]日志級(jí)別。

返回值:

類型說(shuō)明
boolean如果返回true,則該領(lǐng)域標(biāo)識(shí)、日志標(biāo)識(shí)和級(jí)別的日志可以打印,否則不能打印。

示例:

hilog.isLoggable(0x0001, "testTag", hilog.LogLevel.INFO);

LogLevel

日志級(jí)別。

系統(tǒng)能力: SystemCapability.HiviewDFX.HiLog

名稱默認(rèn)值說(shuō)明
DEBUG3詳細(xì)的流程記錄,通過(guò)該級(jí)別的日志可以更詳細(xì)地分析業(yè)務(wù)流程和定位分析問(wèn)題。
INFO4用于記錄業(yè)務(wù)關(guān)鍵流程節(jié)點(diǎn),可以還原業(yè)務(wù)的主要運(yùn)行過(guò)程; 用于記錄可預(yù)料的非正常情況信息,如無(wú)網(wǎng)絡(luò)信號(hào)、登錄失敗等。 這些日志都應(yīng)該由該業(yè)務(wù)內(nèi)處于支配地位的模塊來(lái)記錄,避免在多個(gè)被調(diào)用的模塊或低級(jí)函數(shù)中重復(fù)記錄。
WARN5用于記錄較為嚴(yán)重的非預(yù)期情況,但是對(duì)用戶影響不大,應(yīng)用可以自動(dòng)恢復(fù)或通過(guò)簡(jiǎn)單的操作就可以恢復(fù)的問(wèn)題。
ERROR6應(yīng)用發(fā)生了錯(cuò)誤,該錯(cuò)誤會(huì)影響功能的正常運(yùn)行或用戶的正常使用,可以恢復(fù)但恢復(fù)代價(jià)較高,如重置數(shù)據(jù)等。
FATAL7重大致命異常,表明應(yīng)用即將崩潰,故障無(wú)法恢復(fù)。

hilog.debug

debug(domain: number, tag: string, format: string, ...args: any[]) : void

打印DEBUG級(jí)別的日志。

DEBUG級(jí)別的日志在正式發(fā)布版本中默認(rèn)不被打印,只有在調(diào)試版本或打開(kāi)調(diào)試開(kāi)關(guān)的情況下才會(huì)打印。

系統(tǒng)能力: SystemCapability.HiviewDFX.HiLog

參數(shù):

參數(shù)名類型必填說(shuō)明
domainnumber日志對(duì)應(yīng)的領(lǐng)域標(biāo)識(shí),范圍是0x0~0xFFFF,開(kāi)發(fā)者可根據(jù)需要自定義。
tagstring指定日志標(biāo)識(shí),可以為任意字符串,建議用于標(biāo)識(shí)調(diào)用所在的類或者業(yè)務(wù)行為。
formatstring格式字符串,用于日志的格式化輸出。格式字符串中可以設(shè)置多個(gè)參數(shù),參數(shù)需要包含參數(shù)類型、隱私標(biāo)識(shí)。 隱私標(biāo)識(shí)分為{public}和{private},缺省為{private}。標(biāo)識(shí){public}的內(nèi)容明文輸出,標(biāo)識(shí){private}的內(nèi)容以過(guò)濾回顯。
argsany[]與格式字符串format對(duì)應(yīng)的可變長(zhǎng)度參數(shù)列表。參數(shù)數(shù)目、參數(shù)類型必須與格式字符串中的標(biāo)識(shí)一一對(duì)應(yīng)。

示例:

輸出一條DEBUG信息,格式字符串為"%{public}s World %{private}d"。其中變參%{public}s為明文顯示的字符串;%{private}d為隱私的整型數(shù)。

hilog.debug(0x0001, "testTag", "%{public}s World %{private}d", "hello", 3);

字符串"hello"填入%{public}s,整型數(shù)3填入%{private}d,輸出日志:

08-05 12:21:47.579  2695-2703/com.example.myapplication D 00001/testTag: hello World < private >

hilog.info

info(domain: number, tag: string, format: string, ...args: any[]) : void

打印INFO級(jí)別的日志。

系統(tǒng)能力: SystemCapability.HiviewDFX.HiLog

參數(shù):

參數(shù)名類型必填說(shuō)明
domainnumber日志對(duì)應(yīng)的領(lǐng)域標(biāo)識(shí),范圍是0x0~0xFFFF,開(kāi)發(fā)者可根據(jù)需要自定義。
tagstring指定日志標(biāo)識(shí),可以為任意字符串,建議用于標(biāo)識(shí)調(diào)用所在的類或者業(yè)務(wù)行為。
formatstring格式字符串,用于日志的格式化輸出。格式字符串中可以設(shè)置多個(gè)參數(shù),參數(shù)需要包含參數(shù)類型、隱私標(biāo)識(shí)。 隱私標(biāo)識(shí)分為{public}和{private},缺省為{private}。標(biāo)識(shí){public}的內(nèi)容明文輸出,標(biāo)識(shí){private}的內(nèi)容以過(guò)濾回顯。
argsany[]與格式字符串format對(duì)應(yīng)的可變長(zhǎng)度參數(shù)列表。參數(shù)數(shù)目、參數(shù)類型必須與格式字符串中的標(biāo)識(shí)一一對(duì)應(yīng)。

示例:

輸出一條INFO信息,格式字符串為"%{public}s World %{private}d"。其中變參%{public}s為明文顯示的字符串;%{private}d為隱私的整型數(shù)。

hilog.info(0x0001, "testTag", "%{public}s World %{private}d", "hello", 3);

字符串"hello"填入%{public}s,整型數(shù)3填入%{private}d,輸出日志:

08-05 12:21:47.579  2695-2703/com.example.myapplication I 00001/testTag: hello World < private >

hilog.warn

warn(domain: number, tag: string, format: string, ...args: any[]) : void

打印WARN級(jí)別的日志。

系統(tǒng)能力: SystemCapability.HiviewDFX.HiLog

參數(shù):

參數(shù)名類型必填說(shuō)明
domainnumber日志對(duì)應(yīng)的領(lǐng)域標(biāo)識(shí),范圍是0x0~0xFFFF,開(kāi)發(fā)者可根據(jù)需要自定義。
tagstring指定日志標(biāo)識(shí),可以為任意字符串,建議用于標(biāo)識(shí)調(diào)用所在的類或者業(yè)務(wù)行為。
formatstring格式字符串,用于日志的格式化輸出。格式字符串中可以設(shè)置多個(gè)參數(shù),參數(shù)需要包含參數(shù)類型、隱私標(biāo)識(shí)。 隱私標(biāo)識(shí)分為{public}和{private},缺省為{private}。標(biāo)識(shí){public}的內(nèi)容明文輸出,標(biāo)識(shí){private}的內(nèi)容以過(guò)濾回顯。
argsany[]與格式字符串format對(duì)應(yīng)的可變長(zhǎng)度參數(shù)列表。參數(shù)數(shù)目、參數(shù)類型必須與格式字符串中的標(biāo)識(shí)一一對(duì)應(yīng)。

示例:

輸出一條WARN信息,格式字符串為"%{public}s World %{private}d"。其中變參%{public}s為明文顯示的字符串;%{private}d為隱私的整型數(shù)。

hilog.warn(0x0001, "testTag", "%{public}s World %{private}d", "hello", 3);

字符串"hello"填入%{public}s,整型數(shù)3填入%{private}d,輸出日志:

08-05 12:21:47.579  2695-2703/com.example.myapplication W 00001/testTag: hello World < private >

hilog.error

error(domain: number, tag: string, format: string, ...args: any[]) : void

打印ERROR級(jí)別的日志。

系統(tǒng)能力: SystemCapability.HiviewDFX.HiLog

參數(shù):

參數(shù)名類型必填說(shuō)明
domainnumber日志對(duì)應(yīng)的領(lǐng)域標(biāo)識(shí),范圍是0x0~0xFFFF,開(kāi)發(fā)者可根據(jù)需要自定義。
tagstring指定日志標(biāo)識(shí),可以為任意字符串,建議用于標(biāo)識(shí)調(diào)用所在的類或者業(yè)務(wù)行為。
formatstring格式字符串,用于日志的格式化輸出。格式字符串中可以設(shè)置多個(gè)參數(shù),參數(shù)需要包含參數(shù)類型、隱私標(biāo)識(shí)。 隱私標(biāo)識(shí)分為{public}和{private},缺省為{private}。標(biāo)識(shí){public}的內(nèi)容明文輸出,標(biāo)識(shí){private}的內(nèi)容以過(guò)濾回顯。
argsany[]與格式字符串format對(duì)應(yīng)的可變長(zhǎng)度參數(shù)列表。參數(shù)數(shù)目、參數(shù)類型必須與格式字符串中的標(biāo)識(shí)一一對(duì)應(yīng)。

示例:

輸出一條ERROR信息,格式字符串為"%{public}s World %{private}d"。其中變參%{public}s為明文顯示的字符串;%{private}d為隱私的整型數(shù)。

hilog.error(0x0001, "testTag", "%{public}s World %{private}d", "hello", 3);

字符串"hello"填入%{public}s,整型數(shù)3填入%{private}d,輸出日志:

08-05 12:21:47.579  2695-2703/com.example.myapplication E 00001/testTag: hello World < private >

hilog.fatal

fatal(domain: number, tag: string, format: string, ...args: any[]) : void

打印FATAL級(jí)別的日志。

系統(tǒng)能力: SystemCapability.HiviewDFX.HiLog

參數(shù):

參數(shù)名類型必填說(shuō)明
domainnumber日志對(duì)應(yīng)的領(lǐng)域標(biāo)識(shí),范圍是0x0~0xFFFF,開(kāi)發(fā)者可根據(jù)需要自定義。
tagstring指定日志標(biāo)識(shí),可以為任意字符串,建議用于標(biāo)識(shí)調(diào)用所在的類或者業(yè)務(wù)行為。
formatstring格式字符串,用于日志的格式化輸出。格式字符串中可以設(shè)置多個(gè)參數(shù),參數(shù)需要包含參數(shù)類型、隱私標(biāo)識(shí)。 隱私標(biāo)識(shí)分為{public}和{private},缺省為{private}。標(biāo)識(shí){public}的內(nèi)容明文輸出,標(biāo)識(shí){private}的內(nèi)容以過(guò)濾回顯。
argsany[]與格式字符串format對(duì)應(yīng)的可變長(zhǎng)度參數(shù)列表。參數(shù)數(shù)目、參數(shù)類型必須與格式字符串中的標(biāo)識(shí)一一對(duì)應(yīng)。

示例:

輸出一條FATAL信息,格式字符串為"%{public}s World %{private}d"。其中變參%{public}s為明文顯示的字符串;%{private}d為隱私的整型數(shù)。

hilog.fatal(0x0001, "testTag", "%{public}s World %{private}d", "hello", 3);

字符串"hello"填入%{public}s,整型數(shù)3填入%{private}d,輸出日志:

08-05 12:21:47.579  2695-2703/com.example.myapplication F 00001/testTag: hello World < private >

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 接口
    +關(guān)注

    關(guān)注

    33

    文章

    8381

    瀏覽量

    150580
  • 鴻蒙
    +關(guān)注

    關(guān)注

    57

    文章

    2295

    瀏覽量

    42646
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    鴻蒙Flutter實(shí)戰(zhàn):09-現(xiàn)有Flutter項(xiàng)目支持鴻蒙

    /path_provider\" 編譯運(yùn)行 運(yùn)行 Flutter 項(xiàng)目,查看相關(guān)日志和運(yùn)行界面,針對(duì)出現(xiàn)的問(wèn)題再單獨(dú)處理。 查看日志,可以在運(yùn)行Flutter處的IDE調(diào)試控制臺(tái)查看 Flutter 項(xiàng)目日志,可以使用 hdc
    發(fā)表于 10-23 16:36

    鴻蒙Flutter實(shí)戰(zhàn):08-如何調(diào)試代碼

    Attach 模式,一個(gè)是普通的運(yùn)行模式。 3.查看日志 查看日志,可以在運(yùn)行Flutter處的IDE調(diào)試控制臺(tái)查看 Flutter 項(xiàng)目日志,可以使用 hdc hilog 命令或D
    發(fā)表于 10-23 16:29

    鴻蒙開(kāi)發(fā)系統(tǒng)基礎(chǔ)能力ohos.pasteboard 剪貼板

    以下各項(xiàng)對(duì)應(yīng)的系統(tǒng)能力均為SystemCapability.MiscServices.Pasteboard。
    的頭像 發(fā)表于 06-26 16:48 ?313次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開(kāi)發(fā)</b><b class='flag-5'>系統(tǒng)</b>基礎(chǔ)<b class='flag-5'>能力</b>:<b class='flag-5'>ohos</b>.pasteboard 剪貼板

    鴻蒙開(kāi)發(fā)系統(tǒng)基礎(chǔ)能力ohos.faultLogger 故障日志獲取

    故障類型枚舉。
    的頭像 發(fā)表于 06-24 17:29 ?253次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開(kāi)發(fā)</b><b class='flag-5'>系統(tǒng)</b>基礎(chǔ)<b class='flag-5'>能力</b>:<b class='flag-5'>ohos</b>.faultLogger 故障<b class='flag-5'>日志</b>獲取

    鴻蒙開(kāi)發(fā)系統(tǒng)基礎(chǔ)能力ohos.hichecker檢測(cè)模式

    HiChecker可以作為應(yīng)用開(kāi)發(fā)階段使用的檢測(cè)工具,用于檢測(cè)代碼運(yùn)行過(guò)程中部分易忽略的問(wèn)題,如應(yīng)用線程出現(xiàn)耗時(shí)調(diào)用、應(yīng)用進(jìn)程中Ability資源泄露等問(wèn)題。開(kāi)發(fā)者可以通過(guò)日志記錄或進(jìn)程crash等形式查看具體問(wèn)題并進(jìn)行修改,提
    的頭像 發(fā)表于 06-24 15:50 ?314次閱讀
    <b class='flag-5'>鴻蒙</b><b class='flag-5'>開(kāi)發(fā)</b><b class='flag-5'>系統(tǒng)</b>基礎(chǔ)<b class='flag-5'>能力</b>:<b class='flag-5'>ohos</b>.hichecker檢測(cè)模式

    OpenHarmony實(shí)戰(zhàn)開(kāi)發(fā)-管理系統(tǒng)窗口(僅Stage模型支持)

    .app.ability.Want\'; import hilog from \'@ohos.hilog\'; import common from \'@ohos.app.ability.common\'; import UI
    發(fā)表于 05-06 15:32

    鴻蒙實(shí)戰(zhàn)項(xiàng)目開(kāi)發(fā):【短信服務(wù)】

    崗位需要掌握那些核心技術(shù)點(diǎn)?為此鴻蒙開(kāi)發(fā)學(xué)習(xí)必須要系統(tǒng)性的進(jìn)行。 而網(wǎng)上有關(guān)鴻蒙開(kāi)發(fā)資料非常的少,假如你想學(xué)好
    發(fā)表于 03-03 21:29

    鴻蒙Ability開(kāi)發(fā)-Stage模型下Ability的創(chuàng)建和使用

    函數(shù) HiLog日志系統(tǒng)可以讓應(yīng)用按照指定類型、指定級(jí)別、指定格式字符串打印日志內(nèi)容,幫助開(kāi)發(fā)
    發(fā)表于 01-08 15:34

    HarmonyOS應(yīng)用事件打點(diǎn)開(kāi)發(fā)指導(dǎo)

    = holder.takeNext()) != null) { // 開(kāi)發(fā)者可以對(duì)事件包中的事件打點(diǎn)數(shù)據(jù)進(jìn)行自定義處理,此處是將事件打點(diǎn)數(shù)據(jù)打印日志hilog.info(0x0
    發(fā)表于 12-21 11:02

    鴻蒙原生應(yīng)用/元服務(wù)開(kāi)發(fā)-Stage模型能力接口(八)

    ‘@ohos.app.ability.ExtensionAbility’; 系統(tǒng)能力:SystemCapability.Ability.AbilityRuntime.AbilityCore 示例: class MyExtens
    發(fā)表于 12-20 16:12

    鴻蒙原生應(yīng)用/元服務(wù)開(kāi)發(fā)-Stage模型能力接口(七)

    下文ApplicationContext對(duì)系統(tǒng)環(huán)境變化監(jiān)聽(tīng)回調(diào)的能力,包括onConfigurationUpdated方法。本模塊首批接口從API version 9 開(kāi)始支持。后續(xù)版本的新增接口,采用上角標(biāo)單獨(dú)標(biāo)記
    發(fā)表于 12-19 11:03

    鴻蒙原生應(yīng)用/元服務(wù)開(kāi)發(fā)-Stage模型能力接口(五)

    在Stage模型下使用 二、 導(dǎo)入模塊 import common from \'@ohos.app.ability.common\'; 三、系統(tǒng)能力 :以下各項(xiàng)對(duì)應(yīng)的系統(tǒng)
    發(fā)表于 12-15 15:11

    鴻蒙原生應(yīng)用/元服務(wù)開(kāi)發(fā)-Stage模型能力接口(四)

    ‘@ohos.app.ability.AbilityStage’; 1.AbilityStage.onCreate onCreate(): void 當(dāng)應(yīng)用創(chuàng)建時(shí)調(diào)用。 系統(tǒng)能力
    發(fā)表于 12-14 15:39

    鴻蒙原生應(yīng)用/元服務(wù)開(kāi)發(fā)-Stage模型能力接口(二)

    。 系統(tǒng)能力:以下各項(xiàng)對(duì)應(yīng)的系統(tǒng)能力均為SystemCapability.Ability.AbilityRuntime.Core2.AbilityConstant.LaunchReas
    發(fā)表于 12-11 14:48

    C++異步日志實(shí)踐

    一個(gè)高效可拓展的異步C++日志庫(kù):RING LOG,本文分享了了其設(shè)計(jì)方案與技術(shù)原理等內(nèi)容 導(dǎo)論 同步日志與缺點(diǎn) 傳統(tǒng)的日志也叫同步日志,每次調(diào)用一次
    的頭像 發(fā)表于 11-09 10:29 ?597次閱讀
    C++異步<b class='flag-5'>日志</b>實(shí)踐