TraceStreamer可以将trace数据源转化为易于理解和使用的数据库。用户可以通过SmartPerf界面直观的研究系统跟踪数据,也可在理解TraceStreamer生成的数据库的基础上,在TraceStreamer的交互模式或者Smartperf的数据库查询模式下,使用SQL查询语句自由组装查看用户关心的数据。下文将对TraceStreamer生成的数据库进行详细描述,给用户使用SQL查询系统跟踪数据提供帮助。
表名称 | 作用 |
---|---|
animation | 记录动效的响应时延和完成时延 |
app_name | 记录HiSysEvent事件的事件名与IDE部分事件的字段名为APPNAME中存放的相关信息的映射关系 |
app_startup | 记录了应用启动相关数据 |
args | 记录方法参数集合 |
bio_latency_sample | 记录IO操作相关方法调用,及调用栈数据 |
callstack | 记录调用堆栈和异步调用信息,其中depth,stack_id和parent_stack_id仅在非异步调用中有效。当cookid不为空时,为异步调用,此时callid为进程唯一号,否则为线程唯一号 |
clk_event_filter | 记录时钟相关的信息 |
clock_event_filter | 此结构用来维护时钟事件,cpu与唯一的ID做关联 |
clock_snapshot | 时钟号和时间,时钟名的映射表 |
cpu_measure_filter | cpu事件过滤器表 |
cpu_usage | 记录CPU使用率事件 |
datasource_clockid | 数据源和时钟号的映射表 |
data_dict | 记录常用的字符串,将字符串和索引关联,降低程序运行的内存占用,用作辅助数据 |
data_type | 记录数据类型和typeId的关联关系 |
device_info | 记录设备分辨率和帧率 |
device_state | 记录设备屏幕亮度,蓝牙,位置,wifi,音乐,媒体等信息 |
diskio | 记录磁盘读写数据事件 |
dynamic_frame | 记录动效帧的分辨率和结束时间等 |
ebpf_callstack | 记录了采样相关信息 |
file_system_sample | 记录了调用栈的相关信息 |
frame_maps | 记录应用到RS的帧的映射关系 |
frame_slice | 记录RS(RenderService)和应用的帧渲染 |
gpu_slice | 记录RS的帧对应的gpu渲染时长 |
hidump | 记录FPS(Frame Per Second)数据 |
hisys_all_event | 记录了所有HiSysEvent事件相关的原始数据 |
hisys_event_measure | 记录了HiSysEvent事件相关数据,目前HiSysEvent事件包括了异常事件,IDE事件,器件状态事件 |
instant | 记录Sched_waking, sched_wakeup事件, 用作ThreadState表的上下文使用 |
irq | 记录中断相关事件 |
js_config | 记录了arkTs数据采集的相关配置 |
js_cpu_profiler_node | 记录了cpu profiler中node节点的数据 |
js_cpu_profiler_sample | 记录了cpu profiler中sample节点的数据 |
js_heap_edges | 记录了js内存数据类对象对应的成员的信息 |
js_heap_files | 记录了js内存数据的名称和时间 |
js_heap_info | 记录了js内存数据类型,如nodes和edges的字段类型和数据总数 |
js_heap_location | 记录了js内存location节点相关数据 |
js_heap_nodes | 记录了js内存类对象和其成员的对应关系 |
js_heap_sample | 记录了timeline模式下的时间轴信息 |
js_heap_string | 记录了js内存数据中的字符串 |
js_heap_trace_function_info | 记录了timeline模式下的调用栈的每个函数信息 |
js_heap_trace_node | 记录了timeline模式下的调用栈信息 |
live_process | 记录了一些实时的进程中执行的一些数据 |
log | 记录hilog打印日志数据 |
measure | 记录所有的计量值 |
measure_filter | 记录一个递增的filterid队列,所有其他的filter类型在获取过程中,均从此数据列表中获取下一个可用的filter_id并做记录 |
memory_ashmem | 记录了进程所占用的ashmem相关信息 |
memory_dma | 记录了进程占用的DMA内存相关信息 |
memory_process_gpu | 记录进程占用GPU内存相关信息 |
memory_window_gpu | 记录窗口占用GPU内存相关信息 |
meta | 记录执行解析操作相关的基本信息 |
native_hook | 记录堆内存申请与释放相关的数据 |
native_hook_frame | 记录堆内存申请与释放相关的调用栈 |
native_hook_statistic | 记录堆内存申请与释放相关的统计信息 |
network | 抓取网络信息传输时产生的一些相关信息 |
paged_memory_sample | 记录内存操作相关方法调用,及调用栈数据 |
perf_callchain | 记录Hiperf采样数据的调用栈信息 |
perf_files | 记录Hiperf工具采集到的函数符号表和文件名 |
perf_report | 记录Hiperf工具采集数据时的配置信息。包括抓取的事件类型,抓取数据的命令, 抓数据时指定的进程名称 |
perf_sample | 记录Hiperf工具的采样信息 |
perf_thread | 记录Hiperf工具采集到的进程和线程数据 |
process | 记录所有的进程信息 |
process_measure | 保存进程的所有计量值 |
process_measure_filter | 将进程ID作为key1,进程的内存,界面刷新,屏幕亮度等信息作为key2,唯一确定一个filter_id |
raw | 此数据结构主要作为ThreadState的上下文使用,这张表是sched_waking,sched_wakup, cpu_idle事件的原始记录 |
sched_slice | 此数据结构主要作为ThreadState的上下文使用,这张表是sched_switch事件的原始记录 |
smaps | 记录进程的内存消耗的相关信息采样 |
stat | 此结果用来统计数据解析中各类数据的数据条数,数据和合法性,数据的匹配程度(begin-end),数据的损失等,查看此结构对应的表,可对数据源有基本的了解 |
static_initalize | 记录了so初始化相关数据 |
memory_cpu | 记录了cpu内存数据 |
memory_profile | 记录了sys/kernel/debug/mali0/ctx/$(pidof xxx)/mem_profile节点相关数据 |
memory_rs_image | 记录了hidumper抓取的界面的内存大小相关数据 |
symbols | 记录系统调用名称和其函数指针的对应关系,trace中用addr来映射function_name来节省存储空间 |
syscall | 记录用户空间函数与内核空间函数相互调用记录 |
sys_event_filter | 记录所有的filter |
sys_mem_measure | 记录了所有的系统内存相关的测量信息 |
task_pool | 记录任务池相关数据,与callstack表相关联 |
thread | 记录所有的线程信息 |
thread_state | 记录线程状态信息 |
trace_config | 记录trace数据源,proto的事件-plugin与其process_name |
trace_range | 记录ftrace数据与其他类型数据的时间交集,供前端展示数据时使用 |
表名称 | 事件源 | 插件名 | 备注 |
---|---|---|---|
animation | - | ftrace-plugin | 记录动效的响应时延和完成时延 |
app_name | - | hisysevent-plugin | JSON数据源 |
args | - | ftrace-plugin | 配合callstack使用 |
bio_latency_sample | - | - | IO操作相关方法调用,及调用栈数据 |
callstack | - | ftrace-plugin | 异步或非异步的调用 |
cpu_measure_filter | - | ftrace-plugin | cpu跟踪器,cpu频率等 |
cpu_usage | - | cpu-plugin | cpu使用率 |
data_dict | 通用的 | - | 所有字符串的记录 |
data_type | 通用的 | - | 辅助表 |
device_info | - | ftrace-plugin | 记录设备分辨率和帧率 |
device_state | 通用的 | hisysevent-plugin | 记录设备屏幕亮度,蓝牙,位置等信息 |
dynamic_frame | - | ftrace-plugin | 动效帧的分辨率和结束时间等 |
ebpf_callstack | - | - | 磁盘读写相关的数据 |
file_system_callstack | - | - | ebpf文件系统 |
file_system_sample | - | - | ebpf文件系统 |
frame_maps | - | ftrace-plugin | 帧渲染数据,app到RS的映射 |
frame_slice | - | ftrace-plugin | 帧渲染数据 |
gpu_slice | - | ftrace-plugin | gpu渲染时长 |
hidump | - | hidump-plugin | FPS数据 |
hisys_all_event | - | hisysevent-plugin | JSON数据源 |
hisys_event_measure | - | hisysevent-plugin | JSON数据源 |
instant | - | ftrace-plugin | waking和wakeup事件 |
irq | - | ftrace-plugin | 记录中断事件 |
js_config | - | arkts-plugin | arkTs数据采集的配置 |
js_cpu_profiler_node | - | arkts-plugin | 记录了cpu profiler中node节点的数据 |
js_cpu_profiler_sample | - | arkts-plugin | 记录了cpu profiler中sample节点的数据 |
js_heap_edges | - | arkts-plugin | js内存数据 |
js_heap_files | - | arkts-plugin | js内存数据 |
js_heap_info | - | arkts-plugin | js内存数据 |
js_heap_location | - | arkts-plugin | js内存数据 |
js_heap_nodes | - | arkts-plugin | js内存数据 |
js_heap_sample | - | arkts-plugin | js内存数据 |
js_heap_string | - | arkts-plugin | js内存数据 |
js_heap_trace_function_info | - | arkts-plugin | js内存数据 |
js_heap_trace_node | - | arkts-plugin | js内存数据 |
app_startup | - | ftrace-plugin | 应用启动数据 |
static_initalize | - | ftrace-plugin | so初始化数据 |
memory_cpu | - | hidumper-plugin | cpu内存数据 |
memory_profile | - | hidumper-plugin | /sys/kernel/debug/mali0/ctx/$(pidof xxx)/mem_profile节点相关数据 |
memory_rs_image | - | hidumper-plugin | hidumper抓取的界面内存大小数据 |
live_process | - | process-plugin | Monitor数据 |
network | - | network-plugin | Monitor数据 |
diskio | - | diskio-plugin | Monitor数据 |
log | - | hilog-plugin | 系统日志 |
measure | 通用的 | - | 系统中的计量值(数值型) |
measure_filter | 通用的 | - | 计量值的查询辅助表 |
memory_ashmem | - | memory-plugin | 进程所占用ashmem相关信息 |
memory_dma | - | memory-plugin | 进程占用的DMA内存相关信息 |
memory_process_gpu | - | memory-plugin | 进程占用GPU内存相关信息 |
memory_window_gpu | - | memory-plugin | 窗口占用GPU内存相关信息 |
meta | 通用的 | - | 记录解析现场数据(解析时间,数据类型,解析工具等) |
native_hook | - | nativehook/hookdaemon | malloc && mmap内存数据 |
native_hook_frame | - | nativehook/hookdaemon | native_hook调用栈数据 |
native_hook_statistic | - | nativehook/hookdaemon | malloc && mmap统计数据 |
paged_memory_sample | - | - | 网络数据传输相关的信息 |
perf_callchain | - | perf-plugin | perf数据(非插件模式) |
perf_files | - | - | perf数据(非插件模式) |
perf_report | - | - | perf数据(非插件模式) |
perf_sample | - | - | perf数据(非插件模式) |
perf_thread | - | - | perf数据(非插件模式) |
process | - | ftrace-plugin | 进程信息 |
process_measure | - | ftrace-plugin | 进程内存 |
process_measure_filter | - | ftrace-plugin | process_measure的辅助表 |
raw | - | ftrace-plugin | 线程唤醒信息 |
sched_slice | - | ftrace-plugin | 配合线程状态表使用,sched_switch的原始数据 |
smaps | - | memory-plugin | 进程的内存消耗 |
stat | 通用的 | - | 记录不同种类数据的数据量 |
symbols | - | ftrace-plugin | 符号表(地址到字符串的映射) |
syscall | - | ftrace-plugin | 系统调用 sys_enter/exit |
sys_event_filter | - | ftrace-plugin | |
sys_mem_measure | - | memory-plugin | 系统内存 |
thread | 通用的 | - | 线程信息(常用) |
thread_state | 通用的 | ftrace-plugin | 线程调度图(常用) |
trace_config | 通用的 | hisysevent-plugin | 记录trace数据源 |
trace_range | 通用的 | - | trace数据的时长 |
clock_snapshot | 通用的 | 通用的 | 时钟号和时间,时钟名的映射表 |
datasource_clockid | 通用的 | 通用的 | 数据源和时钟号的映射表 |
task_pool | - | - | 任务池数据 |
当一个进程或者线程结束后,系统可能再次将该进程号或者线程号分配给其他进程或者线程,造成一个进程号或线程号代表多个进程或线程的情况。
Process和Thread表中的id字段可以唯一标识进程和线程。process表中的id在其他表中用作ipid字段。thread表中的id在其他表中用作itid字段。
thread表通过ipid字段关联process表的id字段,可以查询线程归属进程。
select thread.* from thread, process where process.pid = 123 and
thread.ipid = process.id
thread_state表记录所有线程的运行状态信息,包含ts(状态起始时间),dur(状态持续时间),cpu,
itid, state(线程状态)。 thread表的id字段与thread_state表的itid字段相关联。
select thread_state.* from thread, thread_state where thread.tid = 123
and thread.id = thread_state.itid
native_hook表记录堆内存申请(AllocEvent)和释放(FreeEvent)数据。native_hook表通过ipid和itid字段分别与process和thread表的id字段关联,通过callchain_id与native_hook_frame表的callchain_id字段相关联。
native_hook表字段解释如下:
native_hook_frame表记录内存申请/释放的调用堆栈。通过callchain_id区分一组调用堆栈,depth为堆栈深度,depth为0时,表示当前行为栈顶数据。
native_hook_statistic表记录内存申请/释放的统计信息。通过callchain_id区分一组调用堆栈。每个统计事件将记录当前事件的callchain_id,并统计当前调用栈内存分配/释放的总次数和总大小。
select native_hook.* from thread, native_hook where thread.tid = 123
and thread.id = native_hook.itid
select * from native_hook_frame where callchain_id = 1
select * from native_hook_statistic where callchain_id = 1
log表记录日志信息。可以根据seq字段的连续性,来判断是否存在日志丢失的情况。
select * from log where tid = 123 and level = "error"
已知同步后的时间戳为28463134340470,查询采样数据
select * from perf_sample where timestamp_trace =
28463134340470
已知同步后的时间戳为28463134340470,查询采样数据对应的的调用栈信息
select A.* from perf_callchain as A, perf_sample as B where
B.timestamp_trace = 28463134340470 and A.callchain_id = B.callchain_id
已知同步后的时间戳为28463134277762,查询采样数据的函数名及文件路径
select A.*, B.name, C.path from perf_sample as A, perf_callchain as
B, perf_files as C where A.timestamp_trace = 28463134277762 and B.callchain_id = A.callchain_id
and B.callchain_id = 0 and B.file_id = C.file_id and C.serial_id = 0
已知线程号为6700,查询所有的采样记录
select * from perf_sample where thread_id = 6700
已知进程号为7863,查询所有的采样记录
select A.* from perf_sample as A, perf_thread as B where
B.process_id = 7863 and A.thread_id = B.thread_id
查询所有采样对应的事件类型
select A.*, B.report_value from perf_sample as A, perf_report as B
where A.event_type_id = B.id
frame_slice: 记录RS(RenderService)和应用的帧渲染。
gpu_slice: 记录RS的帧对应的gpu渲染时长。
frame_maps:记录应用到RS的帧的映射关系。
已知进程,查询进程对应的实际渲染帧
select * from frame_slice where ipid = 1
已知进程的实际渲染帧的dst为12,求其对应的RS进程的渲染帧
select * from frame_slice where id = 12
已知RS的渲染帧在frame_slice中所在行是14,求其对应的GPU渲染时长
select * from gpu_slice where frame_row = 14
js_heap_files:记录js内存数据的文件名和文件索引
js_heap_nodes:记录js内存类对象数据
js_heap_edges:记录js内存类对象的成员数据
js_heap_trace_node:记录timeline的调用栈信息
js_heap_sample:记录timeline的时间轴信息
Columns Name | SQL TYPE |
---|---|
id | INT |
app_name | INT |
app_key | INT |
记录HiSysevent上报事件中的IDE相关事件中APPNAME的表关联信息。
Columns Name | SQL TYPE |
---|---|
id | INT |
key | INT |
datatype | INT |
value | INT |
argset | INT |
记录方法的参数集合。
Columns Name | SQL TYPE |
---|---|
id | INT |
callchain_id | INT |
type | INT |
ipid | INT |
itid | INT |
start_ts | INT |
end_ts | INT |
latency_dur | INT |
tier | INT |
size | INT |
block_number | TEXT |
path | TEXT |
dur_per_4k | INT |
记录IO操作相关方法调用,及调用栈数据。
Columns Name | SQL TYPE |
---|---|
id | INT |
ts | INT |
dur | INT |
callid | INT |
cat | TEXT |
name | TEXT |
depth | INT |
cookie | INT |
parent_id | INT |
argsetid | INT |
chainId | TEXT |
spanId | TEXT |
parentSpanId | TEXT |
flag | TEXT |
记录调用堆栈和异步调用信息,其中depth,stack_id和parent_stack_id仅在非异步的调用中有效。当cookid不为空时,为异步调用,此时callid为进程唯一号,否则为线程唯一号。
Columns Name | SQL TYPE |
---|---|
id | INT |
type | TEXT |
name | TEXT |
cpu | INT |
记录时钟信息。
Columns Name | SQL TYPE |
---|---|
id | INT |
type | TEXT |
name | TEXT |
cpu | INT |
此结构用来维护时钟事件,cpu与唯一的ID做关联。
Columns Name | SQL TYPE |
---|---|
id | INT |
name | TEXT |
cpu | INT |
将cpu号作为key1,cpu的频率,空闲等状态作为key2,唯一确定一个filter_id。
Columns Name | SQL TYPE |
---|---|
ts | INT |
dur | INT |
total_load | REAL |
user_load | REAL |
system_load | REAL |
process_num | INT |
记录了/proc/pid/stat与CPU使用率相关的数据。
Columns Name | SQL TYPE |
---|---|
id | INT |
data | TEXT |
此表记录了一个数据类型ID和字符串的映射。
Columns Name | SQL TYPE |
---|---|
id | INT |
typeId | INT |
desc | TEXT |
此表记录了一个数据类型ID和数据描述的映射。
Columns Name | SQL TYPE |
---|---|
ts | INT |
dur | INT |
rd | INT |
wr | INT |
rd_speed | REAL |
wr_speed | REAL |
rd_count | INT |
wr_count | INT |
rd_count_speed | REAL |
wr_count_speed | REAL |
记录了与磁盘读写相关的数据。
Columns Name | SQL TYPE |
---|---|
id | INT |
callchain_id | INT |
depth | TEXT |
ip | TEXT |
symbols_id | INT |
file_path_id | INT |
记录了与磁盘读写相关的数据。
Columns Name | SQL TYPE |
---|---|
callchain_id | INT |
type | INT |
ipid | INT |
itid | INT |
start_ts | INT |
end_ts | INT |
dur | INT |
return_value | TEXT |
error_code | TEXT |
fd | INT |
file_id | INT |
size | INT |
first_argument | TEXT |
second_argument | TEXT |
third_argument | TEXT |
fourth_argument | TEXT |
记录了调用栈的相关信息。
Columns Name | SQL TYPE |
---|---|
id | INT |
ts | INT |
fps | INT |
此表记录了设备的帧率信息,fps。
Columns Name | SQL TYPE |
---|---|
serial | INT |
ts | INT |
name_id | INT |
key_id | INT |
type | INT |
int_value | REAL |
string_value | TEXT |
记录所有的system event事件的相关数据,及其相关表的映射信息。
Columns Name | SQL TYPE |
---|---|
ts | INT |
name | TEXT |
ref | INT |
wakeup_from | INT |
ref_type | TEXT |
value | REAL |
记录了系统中的waking和wakeup事件。
Columns Name | SQL TYPE |
---|---|
id | INT |
ts | INT |
dur | INT |
callid | INT |
cat | TEXT |
name | TEXT |
depth | INT |
cookie | INT |
parent_id | INT |
argsetid | INT |
flag | TEXT |
记录中断相关事件。
Columns Name | SQL TYPE |
---|---|
pid | INT |
type | INT |
interval | INT |
capture_numeric_value | INT |
trace_allocation | INT |
enable_cpu_profiler | INT |
cpu_profiler_interval | INT |
记录arkTs数据采集的相关配置。
Columns Name | SQL TYPE |
---|---|
function_id | INT |
function_index | INT |
script_id | INT |
url_index | INT |
line_number | INT |
column_number | INT |
hit_count | INT |
children | INT |
parent_id | INT |
记录cpu profiler中node节点的数据。
Columns Name | SQL TYPE |
---|---|
id | INT |
function_id | INT |
start_time | INT |
end_time | INT |
dur | INT |
记录了cpu profiler 中sample节点的数据。
Columns Name | SQL TYPE |
---|---|
file_id | INT |
edge_index | INT |
type | INT |
name_or_index | INT |
to_node | INT |
from_node_id | INT |
to_node_id | INT |
记录js内存数据类对象对应的成员的信息。
Columns Name | SQL TYPE |
---|---|
id | INT |
file_name | TEXT |
start_time | INT |
end_time | INT |
self_size | INT |
记录了js内存数据的文件名称和时间。
Columns Name | SQL TYPE |
---|---|
file_id | INT |
key | TEXT |
type | INT |
int_value | INT |
str_value | TEXT |
记录了js内存数据类型,如nodes和edges的字段类型和数据总数。
Columns Name | SQL TYPE |
---|---|
file_id | INT |
object_index | INT |
script_id | INT |
line | INT |
column | INT |
记录了js内存location节点相关数据,此表目前无抓取到的数据。
Columns Name | SQL TYPE |
---|---|
file_id | INT |
node_index | TEXT |
type | INT |
name | INT |
id | TEXT |
self_size | INT |
edge_count | INT |
trace_node_id | INT |
detachedness | INT |
记录了js内存数据中类对象的数据。
Columns Name | SQL TYPE |
---|---|
file_id | INT |
timestamp_us | INT |
last_assigned_id | INT |
记录了timeline模式下的时间轴信息。
Columns Name | SQL TYPE |
---|---|
file_id | INT |
file_index | INT |
string | TEXT |
记录了js内存数据中的字符串。
Columns Name | SQL TYPE |
---|---|
file_id | INT |
function_index | INT |
function_id | INT |
name | INT |
script_name | INT |
script_id | INT |
line | INT |
column | INT |
记录了timeline模式下的调用栈的每个函数信息。
Columns Name | SQL TYPE |
---|---|
file_id | INT |
id | INT |
function_info_index | INT |
count | INT |
size | INT |
parent_id | INT |
记录了timeline模式下的调用栈的信息。
Columns Name | SQL TYPE |
---|---|
call_id | INT |
ipid | INT |
tid | INT |
start_time | INT |
end_time | INT |
start_name | INT |
packed_name | INT |
记录了应用启动的相关信息。
Columns Name | SQL TYPE |
---|---|
call_id | INT |
ipid | INT |
tid | INT |
start_time | INT |
end_time | INT |
so_name | INT |
depth | INT |
记录了so初始化的相关信息。
Columns Name | SQL TYPE |
---|---|
ts | INT |
dur | INT |
cpu_time | INT |
process_id | INT |
process_name | TEXT |
parent_process_id | INT |
uid | INT |
user_name | TEXT |
cpu_usage | REAL |
pss_info | INT |
thread_num | INT |
disk_writes | INT |
disk_reads | INT |
记录了一些实时的进程中(/proc/PID/stat、/proc/stat)执行的一些数据(Monitor)。
Columns Name | SQL TYPE |
---|---|
seq | INT |
ts | INT |
pid | INT |
tid | INT |
level | TEXT |
tag | TEXT |
context | TEXT |
origints | INT |
记录日志信息。
Columns Name | SQL TYPE |
---|---|
type | TEXT |
ts | INT |
dur | INT |
value | INT |
filter_id | INT |
记录所有的计量值。
Columns Name | SQL TYPE |
---|---|
id | INT |
type | TEXT |
name | TEXT |
source_arg_set_id | INT |
记录一个递增的filterid队列,所有其他的filter类型在获取过程中,均从此数据列表中获取下一个可用的filter_id并做记录。
过滤分类(type),过滤名称(key2),数据ID(key1)。
id: 唯一的filterId,与process_measure_filter, sys_event_filter中的id关联。
type:各种类型(cpu_measure_filter,clk_rate_filter,process_measure_filter...)
name: type的子类型。
source_arg_set_id: 同一个source_arg_set_id代表一组数据,一般取得是itid或者cpu编号。
Columns Name | SQL TYPE |
---|---|
name | TEXT |
value | TEXT |
此表记录了数据解析或导出时的一些现场数据,比如使用的TraceStreamer版本, 工具的发布时间,数据解析的时间,数据的持续时长,以及原始数据的格式。
Columns Name | SQL TYPE |
---|---|
id | INT |
callchain_id | INT |
ipid | INT |
itid | INT |
event_type | TEXT |
sub_type_id | NUM |
start_ts | INT |
end_ts | INT |
dur | INT |
addr | INT |
heap_size | INT |
all_heap_size | INT |
current_size_dur | INT |
last_lib_id | INT |
last_symbol_id | INT |
记录native_hook抓取的某个进程的堆内存,内存映射相关数据。
Columns Name | SQL TYPE |
---|---|
id | INT |
callchain_id | INT |
depth | INT |
ip | INT |
symbol_id | INT |
file_id | INT |
offset | INT |
symbol_offset | INT |
vaddr | INT |
记录了内存的申请和释放的堆栈。
Columns Name | SQL TYPE |
---|---|
id | INT |
callchain_id | INT |
ipid | INT |
ts | INT |
type | INT |
sub_type_id | INT |
apply_count | INT |
release_count | INT |
apply_size | INT |
release_size | INT |
last_lib_id | INT |
last_symbol_id | INT |
该表记录了内存申请/释放的统计信息。
Columns Name | SQL TYPE |
---|---|
ts | INT |
dur | INT |
tx | INT |
rx | INT |
tx_speed | REAL |
rx_speed | REAL |
packet_in | INT |
packet_in_sec | REAL |
packet_out | INT |
packet_out_sec | REAL |
net_type | TEXT |
记录了网络数据传输相关的信息。
Columns Name | SQL TYPE |
---|---|
id | INT |
callchain_id | INT |
type | INT |
ipid | INT |
start_ts | INT |
end_ts | INT |
dur | INT |
size | INT |
addr | TEXT |
itid | INT |
记录了网络数据传输相关的信息。
Columns Name | SQL TYPE |
---|---|
id | INT |
callchain_id | INT |
depth | INT |
ip | INT |
vaddr_in_file | INT |
file_id | INT |
symbol_id | INT |
name | TEXT |
记录了Hiperf采样数据的调用栈信息。
Columns Name | SQL TYPE |
---|---|
id | INT |
file_id | INT |
serial_id | INT |
symbol | TEXT |
path | TEXT |
记录Hiperf工具采集到的函数符号表和文件名。
Columns Name | SQL TYPE |
---|---|
id | INT |
report_type | TEXT |
report_value | TEXT |
记录Hiperf工具采集数据时的配置信息。包括:抓取的事件类型,抓取数据的命令, 抓数据时指定的进程名称。
Columns Name | SQL TYPE |
---|---|
id | INT |
callchain_id | INT |
timestamp | INT |
thread_id | INT |
event_count | INT |
event_type_id | INT |
timestamp_trace | INT |
cpu_id | INT |
thread_state | TEXT |
记录Hiperf工具的采样信息。
Columns Name | SQL TYPE |
---|---|
id | INT |
thread_id | INT |
process_id | INT |
thread_name | TEXT |
记录Hiperf工具采集到的进程和线程数据。
Columns Name | SQL TYPE |
---|---|
id | INT |
ipid | INT |
pid | INT |
name | TEXT |
start_ts | INT |
switch_count | INT |
thread_count | INT |
slice_count | INT |
mem_count | INT |
记录了进程相关数据。
Columns Name | SQL TYPE |
---|---|
type | TEXT |
ts | INT |
dur | INT |
value | NUM |
filter_id | INT |
保存进程的内存,堆栈值等所有计量值信息。
Columns Name | SQL TYPE |
---|---|
id | INT |
name | TEXT |
ipid | INT |
将进程ID作为key1,进程的内存,界面刷新,屏幕亮度等信息作为key2,唯一确定一个filter_id, filter_id同时被记录在measure_filter表中。
Columns Name | SQL TYPE |
---|---|
id | INT |
ts | INT |
name | TEXT |
cpu | INT |
itid | INT |
记录了系统中的waking、wakup、cpu_idel、cpu_frequency数据。
Columns Name | SQL TYPE |
---|---|
id | INT |
ts | INT |
dur | INT |
ts_end | INT |
cpu | INT |
itid | INT |
ipid | INT |
end_state | TEXT |
priority | INT |
arg_setid | INT |
此数据结构主要作为ThreadState的上下文使用,这张表是sched_switch事件的原始记录。
Columns Name | SQL TYPE |
---|---|
id | INT |
timestamp | INT |
start_addr | TEXT |
end_addr | TEXT |
dirty | INT |
swapper | INT |
resident_size | INT |
pss | INT |
virtaul_size | INT |
reside | REAL |
protection_id | INT |
path_id | INT |
shared_clean | INT |
shared_dirty | INT |
private_clean | INT |
private_dirty | INT |
swap | INT |
swap_pss | INT |
type | INT |
记录进程的内存消耗的相关信息采样,读取/proc/${pid}/smaps节点。
Columns Name | SQL TYPE |
---|---|
event_name | TEXT |
stat_type | TEXT |
count | INT |
serverity | TEXT |
source | TEXT |
此结果用来统计数据解析中各类数据的数据条数,数据和合法性,数据的匹配程度(begin-end),数据的损失等,查看此结构对应的表,可对数据源有基本的了解。
Columns Name | SQL TYPE |
---|---|
id | INT |
funcname | TEXT |
addr | INT |
此表记录了被调用函数与其地址的映射关系。
Columns Name | SQL TYPE |
---|---|
syscall_num | INT |
type | TEXT |
ipid | INT |
ts | INT |
ret | INT |
记录用户空间函数与内核空间函数相互调用记录。
Columns Name | SQL TYPE |
---|---|
id | INT |
type | TEXT |
name | TEXT |
记录所有的filter。
Columns Name | SQL TYPE |
---|---|
type | TEXT |
ts | INT |
dur | INT |
value | INT |
filter_id | INT |
记录系统内存与系统虚拟内存。
Columns Name | SQL TYPE |
---|---|
id | INT |
itid | INT |
tid | INT |
name | TEXT |
start_ts | INT |
end_ts | INT |
ipid | INT |
is_main_thread | INT |
switch_count | INT |
记录了线程相关数据。
Columns Name | SQL TYPE |
---|---|
id | INT |
ts | INT |
dur | INT |
cpu | INT |
itid | INT |
tid | INT |
pid | INT |
state | TEXT |
argset_id | INT |
记录了线程状态相关的数据。
'R', Runnable状态
"S", interruptible sleep
"D", uninterruptible sleep
"D-IO", uninterruptible io
"D-NIO", uninterruptible nio
"Runing", Runing状态
"T", Task stoped.
"t" Traced.
"X", ExitedDead
"Z", Zombie
"P", Parked
"I", Task_Dead
"DK",
"DK-IO",
"DK-NIO",
"TK", TracedKill
"R+", WakeKill
"R+", TaskNew
"R-B", Task runnable binder.
Columns Name | SQL TYPE |
---|---|
clock_id | INT |
ts | INT |
clock_name | TEXT |
时钟号和时间,时钟名的映射表。
Columns Name | SQL TYPE |
---|---|
data_source_name | TEXT |
clock_id | INT |
数据源和时钟号的映射表。
Columns Name | SQL TYPE |
---|---|
ts | INT |
vsync | INT |
ipid | INT |
itid | INT |
callstack_id | INT |
dur | INT |
src | TEXT |
dst | INT |
type | INT |
type_desc | TEXT |
flag | INT |
depth | INT |
frame_no | INT |
应用的实际渲染帧和期望渲染帧的开始时间,持续时长,以及RenderService和App之间的关联关系。
Columns Name | SQL TYPE |
---|---|
ts | INT |
src_row | INT |
dst_row | INT |
该表记录了app到RenderService的帧的映射关系,同frame_slice表中的src映射到dst的关系。
Columns Name | SQL TYPE |
---|---|
frame_row | INT |
dur | INT |
该表记录了每一帧数据在GPU上的渲染时长。
Columns Name | SQL TYPE |
---|---|
start_ts | INT |
end_ts | INT |
该表记录了解析开始时间以及结束时间。
Columns Name | SQL TYPE |
---|---|
id | INT |
allocation_task_row | INT |
execute_task_row | INT |
return_task_row | INT |
allocation_itid | INT |
execute_itid | INT |
return_itid | INT |
task_id | INT |
priority | INT |
execute_state | INT |
return_state | INT |
timeout_row | INT |
该表记录了任务池相关数据,与callstack表关联。
Columns Name | SQL TYPE |
---|---|
id | INT |
input_time | INT |
start_point | INT |
end_point | INT |
frame_info | TEXT |
name | TEXT |
该表记录动效的响应时延和完成时延等信息。
实际帧个数:实际帧帧率
H:APP_LIST_FLING, com.taobao.taobao
Columns Name | SQL TYPE |
---|---|
id | INT |
x | INT |
y | INT |
width | INT |
height | INT |
alpha | TEXT |
name | INT |
end_time | INT |
该表记录动效帧的坐标、分辨率、结束时间等信息。
Columns Name | SQL TYPE |
---|---|
id | INT |
physical_width | INT |
physical_height | INT |
physical_frame_rate | INT |
该表记录设备分辨率和帧率等信息。
Columns Name | SQL TYPE |
---|---|
id | INT |
brightness | INT |
bt_state | INT |
location | INT |
wifi | INT |
stream_default | INT |
voice_call | INT |
music | INT |
stream_ring | INT |
media | INT |
voice_assistant | INT |
system | INT |
alarm | INT |
notification | INT |
bt_sco | INT |
enforced_audible | INT |
stream_dtmf | INT |
stream_tts | INT |
accessibility | INT |
recording | INT |
stream_all | INT |
该表记录设备屏幕亮度,蓝牙,位置,wifi,音乐,媒体等信息。该表目前暂未被使用。
Columns Name | SQL TYPE |
---|---|
id | INT |
trace_source | INT |
key | INT |
value | INT |
该表记录trace数据源,proto的事件-plugin与其process_name(目前只有HisysEvent事件在用)。
Columns Name | SQL TYPE |
---|---|
id | INT |
ts | INT |
ipid | INT |
adj | INT |
fd | INT |
ashmem_name_id | INT |
size | INT |
pss | INT |
ashmem_id | INT |
time | INT |
ref_count | INT |
purged | INT |
flag | INT |
该表记录trace数据源/proc/purgeable_ashmem_trigger,proto的事件-plugin与其process_name(目前只有HisysEvent事件在用)。
Columns Name | SQL TYPE |
---|---|
id | INT |
ts | INT |
ipid | INT |
fd | INT |
size | INT |
ino | INT |
exp_pid | INT |
exp_task_comm_id | INT |
buf_name_id | INT |
exp_name_id | INT |
flag | INT |
该表记录trace数据源取/proc/process_dmabuf_info节点,proto的事件-plugin与其process_name(目前只有HisysEvent事件在用)。
Columns Name | SQL TYPE |
---|---|
id | INT |
ts | INT |
gpu_name_id | INT |
all_gpu_size | INT |
addr | TEXT |
ipid | INT |
itid | INT |
used_gpu_size | INT |
该表记录trace数据源读取/proc/gpu_memory节点
Columns Name | SQL TYPE |
---|---|
id | INT |
ts | INT |
window_name_id | INT |
window_id | INT |
module_name_id | INT |
category_name_id | INT |
size | INT |
count | INT |
purgeable_size | INT |
ipid | INT |
该表记录trace数据源/sys/kernel/debug/mali0/ctx/$(pidof xxx)_0/mem_profile
Columns Name | SQL TYPE |
---|---|
id | INT |
ipid | INT |
tid | INT |
call_id | INT |
start_time | INT |
end_time | INT |
so_name | TEXT |
depth | INT |
该表记录了so初始化相关数据。
Columns Name | SQL TYPE |
---|---|
id | INT |
ts | INT |
total_size | INT |
该表记录了hidumper抓取的cpu的内存大小的相关数据。
Columns Name | SQL TYPE |
---|---|
id | INT |
ts | INT |
channel_id | INT |
total_size | INT |
该表记录了读取/sys/kernel/debug/mali0/ctx/$(pidof xxx)_0/mem_profile节点相关数据。
Columns Name | SQL TYPE |
---|---|
id | INT |
ts | INT |
ipid | INT |
mem_size | INT |
type_id | INT |
surface_name_id | INT |
该表记录了hidumper抓取的界面的内存大小的相关数据。
Columns Name | SQL TYPE |
---|---|
id | INT |
domain_id | INT |
event_name_id | INT |
ts | INT |
type | INT |
time_zone | TEXT |
pid | INT |
tid | INT |
uid | INT |
level | TEXT |
tag | TEXT |
event_id | INT |
seq | INT |
info | TEXT |
contents | TEXT |
该表记录所有hisysevent采集到的原始数据。