arkts故障获取faultLogger

88 阅读1分钟

简介

@ohos.faultLogger (故障日志获取)

说明:

本模块首批接口从API version 8开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

导包

import faultLogger from '@ohos.faultLogger';

测试代码

import faultLogger from '@ohos.faultLogger'
import { BusinessError } from '@ohos.base'

export function queryFaultLogCallback(error: BusinessError, value: Array<faultLogger.FaultLogInfo>) {
  if (error) {
    console.info('error is ' + error);
  } else {
    console.info("value length is " + value.length);
    let len: number = 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);
    }
  }
}

export function testFaultLoggerFunction() {
  try {
    faultLogger.query(faultLogger.FaultType.JS_CRASH, queryFaultLogCallback);
  } catch (err) {
    console.error(`code: ${(err as BusinessError).code}, message: ${(err as BusinessError).message}`);
  }
}

在Index.ets中测试

import { testAuth } from '../common/Auth'
import { queryFaultLogCallback, testFaultLoggerFunction } from '../common/log'
import { test } from '../common/soundpool'

@Entry
@Component
struct Index {
  async onPageShow(): Promise<void> {
    testFaultLoggerFunction()
  }
  build() {
    Column(){

    }
      .width('100%')
      .height('100%')
  }
}

测试结果

image.png