Is there a recommended way to display OEM statsd atoms in the UI? #4323
-
|
AOSP reserves statsd atoms > 100k for OEMS to use: https://cs.android.com/android/platform/superproject/main/+/main:frameworks/proto_logging/stats/atoms.proto;l=1614?q=f:stats%2Fatoms.proto$%20message%5C%20Atom Since these are different per-device it makes sense that the perfetto UI itself does not contain proto descriptors to understand them. Is the a recommended way to display these properly in the UI? For reference here is what some of the OEM atoms from Pixel 7 Pro look like when collected: |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 7 replies
-
|
Very funny you should ask this. The answer to this question can actually be found in #3227 which I'm literally implementing right now in The basic premise here is that we're going to expose a bunch of endpoints where people can "extend" the UI to give it knowledge of things that we don't know and cannot bake into the Perfetto tree itself (i.e. vendor specific things Google doesn't know about, confidental/proprietary information etc). The idea will be you can (fully optional, disabled by default) "point" the UI at some Github repo, GCS/S3 bucket or any HTTPS URL (where you can have a fully hosted server) to allow it to fetch extra information. Specifically to start with we are planning on exposing:
For statsd atoms, 3) is what is relevant: inside Google we have exactly the same problem where we have a bunch of atoms which have schemas specific to us and we cannot bake into the open source code. We have a "backchannel" mechanism which only works for Googlers atm but it's extremely fragile and not at all scalable. Server extensions (which I think should be landing very shortly) are the way we can let anyone make use of the same mechainsm. In the future we'll also extend this to:
But that requires some more design work as unlike the above, we'll need dynamic lookup, not just static GET requests. |
Beta Was this translation helpful? Give feedback.

Very funny you should ask this. The answer to this question can actually be found in #3227 which I'm literally implementing right now in
#4192.
The basic premise here is that we're going to expose a bunch of endpoints where people can "extend" the UI to give it knowledge of things that we don't know and cannot bake into the Perfetto tree itself (i.e. vendor specific things Google doesn't know about, confidental/proprietary information etc). The idea will be you can (fully optional, disabled by default) "point" the UI at some Github repo, GCS/S3 bucket or any HTTPS URL (where you can have a fully hosted server) to allow it to fetch extra information.
Specifically to start with we are plann…