首页 > 其他分享 >鸿蒙5.0南向开发:HiDumper开发概述

鸿蒙5.0南向开发:HiDumper开发概述

时间:2024-11-21 16:15:08浏览次数:3  
标签:5.0 鸿蒙 -- 导出 HiDumper pid 信息 内存 hidumper

 鸿蒙NEXT开发实战往期必看文章:

一分钟了解”纯血版!鸿蒙HarmonyOS Next应用开发!

“非常详细的” 鸿蒙HarmonyOS Next应用开发学习路线!(从零基础入门到精通)

HarmonyOS NEXT应用开发案例实践总结合(持续更新......)

HarmonyOS NEXT应用开发性能优化实践总结(持续更新......)


功能简介

HiDumper是OpenHarmony为开发、测试人员、IDE工具提供的系统信息获取工具,帮助开发者分析、定位问题。本章节内容适用于标准系统。

源码目录说明

/base/hiviewdfx/hidumper
├── frameworks           # 框架代码
│   ├── native           # 导出功能核心代码
│   │  │── include       # 头文件目录
│   │  │── src           # 源文件目录
│   │      │── common    # 通用功能代码
│   │      │── executor  # 导出过程执行器代码
│   │      │── factory   # 跟进导出项生成导出执行器
│   │      │── manager   # 导出管理核心代码
│   │      │── util      # 工具类源代码
│── sa_profile           # Hidumper sa属性文件
│── services             # Hidumper服务源码
│   │── native           # 服务C++源码
│   │── zidl             # 通讯功能源码目录
│   │   │── include      # 通讯功能头文件
│   │   │── src          # 通讯功能源代码
├── test                 # 测试用例目录
│   ├── unittest         # 单元测试代码
│   ├── moduletest       # 模块级别测试代码

HiDumper使用指导

命令参数说明

表1 HiDumper命令参数说明

选项描述
-h查看帮助信息。
-t [timeout]超时时间,单位:秒。默认值是30s。如果设置为0表示无超时限定。
-lc查看系统信息簇列表。
-ls查看系统元能力列表。
-c导出系统簇信息。
-c [base system]以base或system标签区分的系统簇信息导出。
-s导出全部系统元能力信息
-s [SA0 SA1]导出SA0、SA1等元能力id对应的元能力信息。
-s [SA] -a [‘-h’]以-h为参数导出SA指定的系统元能力信息。
-e导出Faultlog模块生成的崩溃日志。
–net [pid]导出网络信息。如果指定了进程的pid,则只获取该进程的网络流量使用信息。
–storage [pid]导出存储信息。如果指定了进程的pid,则只获取该进程的io信息。
-p导出进程列表及全部进程信息。
-p [pid]导出指定进程号的进程全部信息。
–cpuusage [pid]导出CPU使用信息。如果指定pid则导出该进程的CPU使用信息。
–cpufreq导出实际的CPU频率
–mem [pid]导出内存使用信息。如果指定pid则导出该进程的内存使用信息。
–zip将导出信息压缩到固定文件夹下。

使用实例

HiDumper可以为开发者导出系统当前基本信息,通过这些基本信息可以定位分析问题。给子服务和元能力传递复杂参数时,参数需要加双引号。

具体步骤如下:

  1. 进入设备命令行,输入 hidumper -h 获取基本信息介绍,功能语法介绍。

    hidumper -h
    
  2. 输入 hidumper -lc 获取系统信息分类列表。

    hidumper -lc
    
  3. 输入 hidumper -c 获取系统base、system等所有分类信息。

    hidumper -c
    
  4. 输入 hidumper -c [base | system] 按 base 或 system 分类获取系统簇信息。

    hidumper -c base
    hidumper -c system
    
  5. 输入 hidumper -ls 命令获取系统中元能力列表。

    hidumper -ls
    
  6. 输入 hidumper -s 命令获取系统全部元能力信息。

    hidumper -s
    
  7. 运行 hidumper -s 3301 -a “-h” 命令获取id为3301的元能力的帮助。

    hidumper -s 3301 -a "-h"
    
  8. 运行 hidumper -s 3008命令获取id为3008的元能力的全部信息。

    hidumper -s 3008
    
  9. 运行 hidumper -e 命令获取Faultlog模块生成的崩溃历史信息。

    hidumper -e
    
  10. 运行 hidumper --net [pid] 命令获取网络信息;如果指定了进程的pid,则只获取该进程的网络流量使用信息。

    hidumper --net
    hidumper --net 1024
    
  11. 运行 hidumper --storage [pid] 命令获取存储相关信息;如果指定了进程的pid,则只获取该进程的io信息。

    hidumper --storage
    hidumper --storage 1024
    
  12. 运行 hidumper -p 命令获取进程信息,包括进程、线程的列表和信息。

    hidumper -p
    
  13. 运行 hidumper -p 1024 命令获取pid为1024的进程信息。

    hidumper -p 1024
    
  14. 运行 hidumper --cpuusage [pid] 命令获取CPU的使用信息。如果指定了进程的pid,则只获取该进程的CPU使用信息。

    hidumper --cpuusage
    hidumper --cpuusage 1024
    
  15. 运行 hidumper --cpufreq 命令获取每一个CPU核实际运行的频率。

    hidumper --cpufreq
    
  16. 运行 hidumper --mem [pid] 命令获取全部的内存使用信息。如果指定进程的pid,只获取该进程的内存使用情况。

    hidumper --mem [pid]
    

    当携带pid参数时输出结果中第一列标题的详细说明如下:

    名称描述
    GLGPU内存
    Graph图形内存
    ark ts heapArkTS堆的内存占用
    guard保护段所占内存
    native heap堆内存
    AnonPage other其它没有被映射到文件的页所占内存
    stack栈内存
    .hap应用程序所占内存
    .db进程加载的.db数据文件所占内存
    .so进程加载的.so动态库所占内存
    .ttf进程加载的.ttf字体文件所占内存
    dev进程加载的以/dev开头的文件所占内存
    FilePage other其它有被映射到文件的页所占内存
  17. 运行 hidumper --zip 命令压缩信息数据到/data/dumper目录下。

    hidumper --zip
    
  18. 运行 hidumper -t timeout 命令设置超时时间,单位:秒。默认值是30s。如果设置为0表示无超时限制。

    hidumper -t [timeout]
    
  19. 运行 hidumper --mem-smaps pid [-v] 命令获取指定进程内存信息的详细使用情况。

    hidumper --mem-smaps pid [-v]

标签:5.0,鸿蒙,--,导出,HiDumper,pid,信息,内存,hidumper
From: https://blog.csdn.net/2401_89119947/article/details/143946899

相关文章

  • 鸿蒙5.0南向开发:HiSysEvent工具
     鸿蒙NEXT开发实战往期必看文章:一分钟了解”纯血版!鸿蒙HarmonyOSNext应用开发!“非常详细的”鸿蒙HarmonyOSNext应用开发学习路线!(从零基础入门到精通)HarmonyOSNEXT应用开发案例实践总结合(持续更新......)HarmonyOSNEXT应用开发性能优化实践总结(持续更新......)概述目......
  • 鸿蒙项目实战(六):HMRouter实现两次返回退出应用
    1、定义一个生命周期类ExitAppLifecycle实现IHMLifecycle接口import{HMLifecycle,HMLifecycleContext,IHMLifecycle}from'@hadss/hmrouter';@HMLifecycle({lifecycleName:'ExitAppLifecycle'})exportclassExitAppLifecycleimplementsIHMLifecycle{......
  • 鸿蒙NEXT开发案例:简体繁体转换器
    【引言】简体繁体转换器是一个实用的小工具,它可以帮助用户轻松地在简体中文和繁体中文之间进行转换。对于需要频繁处理两岸三地文档的用户来说,这样的工具无疑是提高工作效率的好帮手。本案例将展示如何利用鸿蒙NEXT提供的组件和服务,结合第三方库@nutpi/chinese_transverter,来实......
  • 鸿蒙实战开发—— IPC与RPC通信
    ......
  • 鸿蒙开发Hvigor插件动态生成代码
    Hvigor允许开发者实现自己的插件,开发者可以定义自己的构建逻辑,并与他人共享。Hvigor主要提供了两种方式来实现插件:基于hvigorfile脚本开发插件、基于typescript项目开发。下面以基于hvigorfile脚本开发插件进行介绍。基于hvigorfile脚本开发基于hvigorfile.ts脚本开发的方式,其优......
  • 鸿蒙hvigor构建任务依赖与生命周期简介
    Hivgor脚本文件在构建的生命周期中Hvigor使用两个脚本文件来完成插件、任务以及生命周期hook的注册:hvigorconfig.ts:此文件在整个项目中只有根目录下存在一份,不是构建必须的文件并且默认不存在,如有需要可自行创建,此文件被解析执行的时间较早,可用于在Hvigor生命周期刚开始时操作......
  • 鸿蒙NEXT开发案例:随机密码生成
     【引言】本案例将实现一个随机密码生成器。用户可以自定义密码的长度以及包含的字符类型(大写字母、小写字母、数字、特殊字符),最后通过点击按钮生成密码,并提供一键复制功能。【环境准备】•操作系统:Windows10•开发工具:DevEcoStudioNEXTBeta1BuildVersion:5.0.3.806......
  • 如何在Linux系统实现屏幕旋转?触觉智能RK3568鸿蒙开发板演示
    本文介绍Linux系统实现屏幕角度旋转的方法,以解决不同产品形态的展现方式,其中Ubuntu、Debian系统可以通过xrandr工具实现屏幕旋转。使用触觉智能EVB3568鸿蒙开发板演示,搭载瑞芯微RK3568芯片,搭载四核A55处理器,主频2.0Ghz;1T算力NPU;现已发布全新OpenHarmony5.0Release固件。Linux旋......
  • 【鸿蒙开发】基础干货篇--7 “一篇带你掌握页面跳转”
    系列文章目录【鸿蒙开发】鸿蒙开发基础干货篇–1【鸿蒙开发】基础干货篇–2小白入门手册(内含DevEco安装教程和汉化插件安装)【鸿蒙开发】基础干货篇–3小白入门手册(内含模拟器保姆级安装使用教程)【鸿蒙开发】基础干货篇–4小白入门手册(内含Stage模型工程目录结构和U......
  • 鸿蒙HarmonyOS实战开发:hilog命令行查询
     鸿蒙NEXT开发实战往期必看文章:一分钟了解”纯血版!鸿蒙HarmonyOSNext应用开发!“非常详细的”鸿蒙HarmonyOSNext应用开发学习路线!(从零基础入门到精通)HarmonyOSNEXT应用开发案例实践总结合(持续更新......)HarmonyOSNEXT应用开发性能优化实践总结(持续更新......)HiLog日......