0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

鸿蒙开发系统基础能力:ohos.faultLogger 故障日志获取

jf_46214456 来源:jf_46214456 作者:jf_46214456 2024-06-24 17:29 次阅读

故障日志获取

icon-note.gif说明: 本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。 开发前请熟悉鸿蒙开发指导文档 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md]

导入模块

import faultLogger from '@ohos.faultLogger'

FaultType

故障类型枚举。

系统能力: 以下各项对应的系统能力均为SystemCapability.HiviewDFX.Hiview.FaultLogger。

名称默认值说明
NO_SPECIFIC0不区分故障类型
CPP_CRASH2C++程序故障类型
JS_CRASH3JS程序故障类型
APP_FREEZE4应用程序卡死故障类型

FaultLogInfo

故障信息数据结构,获取到的故障信息的数据结构。

系统能力: 以下各项对应的系统能力均为SystemCapability.HiviewDFX.Hiview.FaultLogger。

名称参数类型说明
pidnumber故障进程的进程id
uidnumber故障进程的用户id
type[FaultType]故障类型
timestampnumber日志生成时的秒级时间戳
reasonstring发生故障的原因
modulestring发生故障的模块
summarystring故障的概要
fullLogstring故障日志全文

faultLogger.querySelfFaultLog

querySelfFaultLog(faultType: FaultType, callback: AsyncCallback>) : void

获取当前进程故障信息,该方法通过回调方式获取故障信息数组,故障信息数组内最多上报10份故障信息。

系统能力: SystemCapability.HiviewDFX.Hiview.FaultLogger

参数:

参数名类型必填说明
faultType[FaultType]输入要查询的故障类型。
callbackAsyncCallbackArray>回调函数,在回调函数中获取故障信息数组。 - value拿到故障信息数组;value为undefined表示获取过程中出现异常,error返回错误提示字符串

示例:

function queryFaultLogCallback(error, value) {
    if (error) {
        console.info('error is ' + error);
    } else {
        console.info("value length is " + value.length);
        let len = value.length;
        for (let i = 0; i < len; i++) {
            console.info("log: " + i);
            console.info("Log pid: " + value[i].pid);
            console.info("Log uid: " + value[i].uid);
            console.info("Log type: " + value[i].type);
            console.info("Log timestamp: " + value[i].timestamp);
            console.info("Log reason: " + value[i].reason);
            console.info("Log module: " + value[i].module);
            console.info("Log summary: " + value[i].summary);
            console.info("Log text: " + value[i].fullLog);
        }
    }
}
faultLogger.querySelfFaultLog(faultLogger.FaultType.JS_CRASH, queryFaultLogCallback);

faultLogger.querySelfFaultLog

querySelfFaultLog(faultType: FaultType) : Promise>

获取当前进程故障信息,该方法通过Promise方式返回故障信息数组,故障信息数组内最多上报10份故障信息。

系统能力: SystemCapability.HiviewDFX.Hiview.FaultLogger

参数:

参数名类型必填说明
faultType[FaultType]输入要查询的故障类型。

返回值:

类型说明
Promise>Promise实例,可以在其then()方法中获取故障信息实例,也可以使用await。 - value拿到故障信息数组;value为undefined表示获取过程中出现异常HarmonyOSOpenHarmony鸿蒙文档籽料:mau123789是v直接拿

鸿蒙文档.png

示例:

async function getLog() {
    let value = await faultLogger.querySelfFaultLog(faultLogger.FaultType.JS_CRASH);
    if (value) {
        console.info("value length is " + value.length);
	let len = value.length;
	for (let i = 0; i < len; i++) {
	    console.info("log: " + i);
	    console.info("Log pid: " + value[i].pid);
	    console.info("Log uid: " + value[i].uid);
	    console.info("Log type: " + value[i].type);
	    console.info("Log timestamp: " + value[i].timestamp);
	    console.info("Log reason: " + value[i].reason);
	    console.info("Log module: " + value[i].module);
	    console.info("Log summary: " + value[i].summary);
	    console.info("Log text: " + value[i].fullLog);
	}
    }
}

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 开发系统
    +关注

    关注

    0

    文章

    38

    浏览量

    9672
  • 鸿蒙
    +关注

    关注

    57

    文章

    2323

    浏览量

    42752
收藏 人收藏

    评论

    相关推荐

    鸿蒙实战开发:【FaultLoggerd组件】讲解

    Faultloggerd部件是OpenHarmony中C/C++运行时崩溃临时日志的生成及管理模块。面向基于 Rust 开发的部件,Faultloggerd 提供了Rust Panic故障日志
    的头像 发表于 03-12 16:22 992次阅读
    <b class='flag-5'>鸿蒙</b>实战<b class='flag-5'>开发</b>:【FaultLoggerd组件】讲解

    鸿蒙实战项目开发:【短信服务】

    岗位需要掌握那些核心技术点?为此鸿蒙开发学习必须要系统性的进行。 而网上有关鸿蒙开发资料非常的少,假如你想学好
    发表于 03-03 21:29

    鸿蒙Flutter实战:08-如何调试代码

    # 鸿蒙Flutter实战:如何调试代码 ## 1.环境搭建 参考文章[鸿蒙Flutter实战:01-搭建开发环境](https://gitee.com/zacks
    发表于 10-23 16:29

    基于OpenHarmony的Graphic标准子系统能力分析

    UI组件、布局、动画、字体、输入事件、窗口管理、渲染绘制等模块。    以下主要分析标准系统能力。代码版本是OpenHarmony3.1版本。  开机动画是鸿蒙系统启动后,运行的第一个
    发表于 03-18 13:45

    鸿蒙应用开发入门资料合集

    1、鸿蒙应用开发入门资料一:鸿蒙系统的概述1.1 鸿蒙系统是一个什么样的
    发表于 03-22 11:23

    鸿蒙开源第三方组件资料合集

    1、鸿蒙开源第三方组件——日志工具组件Timber_ohosTimber_ohos是一个带有小型可扩展API的日志工具组件,它可以给开发者提
    发表于 03-23 09:53

    鸿蒙原生应用/元服务开发-Stage模型能力接口(二)

    系统能力:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core2.AbilityConstant.LaunchReas
    发表于 12-11 14:48

    鸿蒙原生应用/元服务开发-Stage模型能力接口(四)

    ‘@ohos.app.ability.AbilityStage’; 1.AbilityStage.onCreate onCreate(): void 当应用创建时调用。 系统能力
    发表于 12-14 15:39

    鸿蒙原生应用/元服务开发-Stage模型能力接口(六)

    、 ContextConstant.AreaMode 使用时通过ContextConstant.AreaMode获取系统能力 :以下各项对应的系统
    发表于 12-18 14:40

    鸿蒙原生应用/元服务开发-Stage模型能力接口(七)

    下文ApplicationContext对系统环境变化监听回调的能力,包括onConfigurationUpdated方法。本模块首批接口从API version 9 开始支持。后续版本的新增接口,采用上角标单独标记
    发表于 12-19 11:03

    鸿蒙实战开发学习【FaultLoggerd组件】

    Faultloggerd部件是OpenHarmony中C/C++运行时崩溃临时日志的生成及管理模块。面向基于 Rust 开发的部件,Faultloggerd 提供了Rust Panic故障日志
    的头像 发表于 03-17 20:39 458次阅读
    <b class='flag-5'>鸿蒙</b>实战<b class='flag-5'>开发</b>学习【FaultLoggerd组件】

    鸿蒙开发系统基础能力ohos.hichecker检测模式

    HiChecker可以作为应用开发阶段使用的检测工具,用于检测代码运行过程中部分易忽略的问题,如应用线程出现耗时调用、应用进程中Ability资源泄露等问题。开发者可以通过日志记录或进程crash等形式查看具体问题并进行修改,提
    的头像 发表于 06-24 15:50 361次阅读
    <b class='flag-5'>鸿蒙</b><b class='flag-5'>开发</b><b class='flag-5'>系统</b>基础<b class='flag-5'>能力</b>:<b class='flag-5'>ohos</b>.hichecker检测模式

    鸿蒙开发系统基础能力ohos.hilog 日志打印

    hilog日志系统,使应用/服务可以按照指定级别、标识和格式字符串输出日志内容,帮助开发者了解应用/服务的运行状态,更好地调试程序。
    的头像 发表于 06-25 15:59 415次阅读

    鸿蒙开发系统基础能力ohos.pasteboard 剪贴板

    以下各项对应的系统能力均为SystemCapability.MiscServices.Pasteboard。
    的头像 发表于 06-26 16:48 358次阅读
    <b class='flag-5'>鸿蒙</b><b class='flag-5'>开发</b><b class='flag-5'>系统</b>基础<b class='flag-5'>能力</b>:<b class='flag-5'>ohos</b>.pasteboard 剪贴板

    鸿蒙开发系统基础能力ohos.systemTime 设置系统时间

    本模块用来设置、获取当前系统时间,设置、获取当前系统日期和设置、获取当前系统时区。
    的头像 发表于 06-27 09:43 790次阅读
    <b class='flag-5'>鸿蒙</b><b class='flag-5'>开发</b><b class='flag-5'>系统</b>基础<b class='flag-5'>能力</b>:<b class='flag-5'>ohos</b>.systemTime 设置<b class='flag-5'>系统</b>时间