W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
HiChecker可以作為應(yīng)用開發(fā)階段使用的檢測(cè)工具,用于檢測(cè)代碼運(yùn)行過程中部分易忽略的問題,如應(yīng)用線程出現(xiàn)耗時(shí)調(diào)用、應(yīng)用進(jìn)程中Ability資源泄露等問題。開發(fā)者可以通過日志記錄或進(jìn)程crash等形式查看具體問題并進(jìn)行修改,提升應(yīng)用的使用體驗(yàn)。
本模塊首批接口從API version 8開始支持。后續(xù)版本的新增接口,采用上角標(biāo)單獨(dú)標(biāo)記接口的起始版本。
提供了所有規(guī)則類型的常量。
系統(tǒng)能力: SystemCapability.HiviewDFX.HiChecker
名稱 | 參數(shù)類型 | 說明 |
---|---|---|
RULE_CAUTION_PRINT_LOG | bigint | 告警規(guī)則,當(dāng)有告警時(shí)記錄日志。 |
RULE_CAUTION_TRIGGER_CRASH | bigint | 告警規(guī)則,當(dāng)有告警時(shí)讓應(yīng)用推出。 |
RULE_THREAD_CHECK_SLOW_PROCESS | bigint | 檢測(cè)規(guī)則,檢測(cè)是否有耗時(shí)函數(shù)被調(diào)用。 |
RULE_CHECK_ABILITY_CONNECTION_LEAK | bigint | 檢測(cè)規(guī)則,檢測(cè)是否發(fā)生ability泄露。 |
addCheckRule(rule: bigint): void
添加一條或多條規(guī)則到系統(tǒng),系統(tǒng)根據(jù)添加的規(guī)則進(jìn)行檢測(cè)或反饋。
系統(tǒng)能力: SystemCapability.HiviewDFX.HiChecker
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
rule | bigint | 是 | 需要添加的規(guī)則。 |
示例:
- try {
- // 添加一條規(guī)則
- hichecker.addCheckRule(hichecker.RULE_CAUTION_PRINT_LOG);
- // 添加多條規(guī)則
- // hichecker.addCheckRule(
- // hichecker.RULE_CAUTION_PRINT_LOG | hichecker.RULE_CAUTION_TRIGGER_CRASH);
- } catch (err) {
- console.error(`code: ${err.code}, message: ${err.message}`);
- }
removeCheckRule(rule: bigint): void
刪除一條或多條規(guī)則,刪除的規(guī)則后續(xù)將不再生效。
系統(tǒng)能力: SystemCapability.HiviewDFX.HiChecker
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
rule | bigint | 是 | 需要?jiǎng)h除的規(guī)則。 |
示例:
- try {
- // 刪除一條規(guī)則
- hichecker.removeCheckRule(hichecker.RULE_CAUTION_PRINT_LOG);
- // 刪除多條規(guī)則
- // hichecker.removeCheckRule(
- // hichecker.RULE_CAUTION_PRINT_LOG | hichecker.RULE_CAUTION_TRIGGER_CRASH);
- } catch (err) {
- console.error(`code: ${err.code}, message: ${err.message}`);
- }
containsCheckRule(rule: bigint): boolean
當(dāng)前已添加的規(guī)則集中是否包含了某一個(gè)特定的規(guī)則,如果傳入的規(guī)則級(jí)別為線程級(jí)別,則僅在當(dāng)前線程中進(jìn)行查詢。
系統(tǒng)能力: SystemCapability.HiviewDFX.HiChecker
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
rule | bigint | 是 | 需要查詢的規(guī)則。 |
返回值:
類型 | 說明 |
---|---|
boolean | 查詢結(jié)果,true 表示規(guī)則已添加,false 表示規(guī)則未添加。 |
示例:
- try {
- // 添加一條規(guī)則
- hichecker.addCheckRule(hichecker.RULE_THREAD_CHECK_SLOW_PROCESS);
- // 查詢是否包含
- hichecker.containsCheckRule(hichecker.RULE_THREAD_CHECK_SLOW_PROCESS); // return true;
- hichecker.containsCheckRule(hichecker.RULE_CAUTION_PRINT_LOG); // return false;
- } catch (err) {
- console.error(`code: ${err.code}, message: ${err.message}`);
- }
addRule(rule: bigint): void
從 API version 9 開始廢棄,建議使用hichecker.addCheckRule替代。
添加一條或多條規(guī)則到系統(tǒng),系統(tǒng)根據(jù)添加的規(guī)則進(jìn)行檢測(cè)或反饋。
系統(tǒng)能力: SystemCapability.HiviewDFX.HiChecker
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
rule | bigint | 是 | 需要添加的規(guī)則。 |
示例:
- // 添加一條規(guī)則
- hichecker.addRule(hichecker.RULE_CAUTION_PRINT_LOG);
- // 添加多條規(guī)則
- hichecker.addRule(
- hichecker.RULE_CAUTION_PRINT_LOG | hichecker.RULE_CAUTION_TRIGGER_CRASH);
removeRule(rule: bigint): void
從 API version 9 開始廢棄,建議使用hichecker.removeCheckRule替代。
刪除一條或多條規(guī)則,刪除的規(guī)則后續(xù)將不再生效。
系統(tǒng)能力: SystemCapability.HiviewDFX.HiChecker
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
rule | bigint | 是 | 需要?jiǎng)h除的規(guī)則。 |
示例:
- // 刪除一條規(guī)則
- hichecker.removeRule(hichecker.RULE_CAUTION_PRINT_LOG);
- // 刪除多條規(guī)則
- hichecker.removeRule(
- hichecker.RULE_CAUTION_PRINT_LOG | hichecker.RULE_CAUTION_TRIGGER_CRASH);
getRule(): bigint
獲取當(dāng)前線程規(guī)則、進(jìn)程規(guī)則、告警規(guī)則的合集。
系統(tǒng)能力: SystemCapability.HiviewDFX.HiChecker
返回值:
類型 | 說明 |
---|---|
bigint | 當(dāng)前系統(tǒng)中添加的規(guī)則。 |
示例:
- // 添加一條規(guī)則
- hichecker.addRule(hichecker.RULE_THREAD_CHECK_SLOW_PROCESS);
- // 獲取已添加的規(guī)則
- hichecker.getRule(); // return 1n;
contains(rule: bigint): boolean
從 API version 9 開始廢棄,建議使用hichecker.containsCheckRule替代。
當(dāng)前已添加的規(guī)則集中是否包含了某一個(gè)特定的規(guī)則,如果傳入的規(guī)則級(jí)別為線程級(jí)別,則僅在當(dāng)前線程中進(jìn)行查詢。
系統(tǒng)能力: SystemCapability.HiviewDFX.HiChecker
參數(shù):
參數(shù)名 | 類型 | 必填 | 說明 |
---|---|---|---|
rule | bigint | 是 | 需要查詢的規(guī)則。 |
返回值:
類型 | 說明 |
---|---|
boolean | 查詢結(jié)果,true 表示規(guī)則已添加,false 表示規(guī)則未添加。 |
示例:
- // 添加一條規(guī)則
- hichecker.addRule(hichecker.RULE_THREAD_CHECK_SLOW_PROCESS);
- // 查詢是否包含
- hichecker.contains(hichecker.RULE_THREAD_CHECK_SLOW_PROCESS); // return true;
- hichecker.contains(hichecker.RULE_CAUTION_PRINT_LOG); // return false;
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: