Android Log
此数据源仅在 Android userdebug 构建上受支持。
"android.log" 数据源记录来自 Android Log 守护程序(logd)的 Log event。这些是通过 adb logcat 可用的相同 Log message。
支持来自 EventLog 的文本格式事件和二进制格式事件。
这允许你查看与 trace 的其余部分时间同步的 Log event。当采集[长 trace](/docs/concepts/config#long-traces)时,它允许你无限期地采集 Event log,而不管 Android Log 守护程序缓冲区大小如何(即,Log event 定期获取并复制到 trace 缓冲区中)。
数据源可以配置为过滤来自特定 Log buffer 的事件,并仅保留匹配特定标签或优先级的事件。
UI
在 UI 级别,Log event 在两个小部件中显示:
一个摘要 track,允许快速查看事件的分布及其在 Timeline 上的严重性。
一个与视口时间同步的表格,允许在选定的时间范围内查看事件。

SQL
select l.ts, t.tid, p.pid, p.name as process, l.prio, l.tag, l.msg
from android_logs as l left join thread as t using(utid) left join process as p using(upid)| ts | tid | pid | process | prio | tag | msg |
|---|---|---|---|---|---|---|
| 291474737298264 | 29128 | 29128 | traced_probes | 4 | perfetto | probes_producer.cc:231 Ftrace setup (target_buf=1) |
| 291474852699265 | 625 | 625 | surfaceflinger | 3 | SurfaceFlinger | Finished setting power mode 1 on display 0 |
| 291474853274109 | 1818 | 1228 | system_server | 3 | SurfaceControl | Excessive delay in setPowerMode() |
| 291474882474841 | 1292 | 1228 | system_server | 4 | DisplayPowerController | Unblocked screen on after 242 ms |
| 291474918246615 | 1279 | 1228 | system_server | 4 | am_pss | Pid=28568 UID=10194 Process Name="com.google.android.apps.fitness" Pss=12077056 Uss=10723328 SwapPss=183296 Rss=55021568 StatType=0 ProcState=18 TimeToCollect=51 |
TraceConfig
Trace proto: AndroidLogPacket
Config proto: AndroidLogConfig
示例配置:
data_sources: {
config {
name: "android.log"
android_log_config {
min_prio: PRIO_VERBOSE
filter_tags: "perfetto"
filter_tags: "my_tag_2"
log_ids: LID_DEFAULT
log_ids: LID_RADIO
log_ids: LID_EVENTS
log_ids: LID_SYSTEM
log_ids: LID_CRASH
log_ids: LID_KERNEL
}
}
}