Files
frameworks_base/core/tests/SvcMonitor
Sasha Smundak 599404d2ed Convert core/tests/**/Android.mk file to Android.bp
See build/soong/README.md for more information.

Bug: 122332340
Test: treehugger
Change-Id: I368327d0f3b4bd3068e10c8750ece45e227531cf
2019-03-27 20:11:41 -07:00
..

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This Android service measures CPU usage of a program and an underlying system service it relies on.
An example of this would be an android app XYZ communicates to some other device via Bluetooth. The
SvcMonitor service can monitor the CPU usage of XYZ and com.android.bluetooth.

Usage:

To start the service:
$ adb shell am startservice -a start \
-e java XYZ -e hal com.android.bluetooth \
com.google.android.experimental.svcmonitor/.SvcMonitor

To stop the service:
$ adb shell am startservice -a stop \
com.google.android.experimental.svcmonitor/.SvcMonitor

To stop the service config:
$ adb shell am startservice -a change \
-e java NewName -e hal NewService \
com.google.android.experimental.svcmonitor/.SvcMonitor

To monitor the data:
$ adb logcat | grep XYZ

Options:
-e java NameOfProgram: any running processs name.
-e hal NameOfSysService: name of the system service the previous process relies on.
--ei period: period between each measurement (frequency). Unit: ms, Default:1000, Min: 100