Starting March 27, 2025, we recommend using android-latest-release
instead of aosp-main
to build and contribute to AOSP. For more information, see Changes to AOSP.
UprobeStats
Stay organized with collections
Save and categorize content based on your preferences.
The UprobeStats module was introduced in Android 16. This module enables a
dynamic instrumentation infrastructure that:
- Uses uprobe and eBPF to enable rapid deployment of new telemetry to field
devices.
- Inspects user space processes using BPF programs.
- Uses config push to control client behavior.
- Manages BPF program attachment, data reading, and writing to logs.
This module addresses the need for faster telemetry deployment, especially for
issues such as unexpected phone reboots and fighting abusive apps. This module
enables OEMs to respond faster to concerns (such as virtual display abuse) and
production incidents. It enables dynamic instrumentation capability that is
crucial for combating app abuse.
Dependencies
The module depends on a platform API to look up executable offsets and paths,
and a Statsd API for writing logs to Statsd.
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2025-08-29 UTC.
[null,null,["Last updated 2025-08-29 UTC."],[],[],null,["# UprobeStats\n\nThe UprobeStats module was introduced in Android 16. This module enables a\ndynamic instrumentation infrastructure that:\n\n- Uses uprobe and eBPF to enable rapid deployment of new telemetry to field devices.\n- Inspects user space processes using BPF programs.\n- Uses config push to control client behavior.\n- Manages BPF program attachment, data reading, and writing to logs.\n\nThis module addresses the need for faster telemetry deployment, especially for\nissues such as unexpected phone reboots and fighting abusive apps. This module\nenables OEMs to respond faster to concerns (such as virtual display abuse) and\nproduction incidents. It enables dynamic instrumentation capability that is\ncrucial for combating app abuse.\n\nDependencies\n------------\n\nThe module depends on a platform API to look up executable offsets and paths,\nand a Statsd API for writing logs to Statsd."]]