summaryrefslogtreecommitdiff
path: root/odrefresh/odr_statslog_android.cc
AgeCommit message (Collapse)Author
2023-04-26Report Odrefresh BCP compilation type to StatsD Stefano Cianciulli
Bug: 279004055 Test: atest art_standalone_odrefresh_tests Change-Id: If563943ddbce706dc81fda7a11c78ac4c067fa9a
2023-04-24Report BCP compilation type. Jiakai Zhang
The compilation of BCP now have two cases, and their compilation time will be very different from each other. This CL adds an enum to distinguish them. The enum will be used as a dimension in WW and as a filter on Pitot. Bug: 269230245 Bug: 279004055 Test: atest art_standalone_odrefresh_tests Test: - 1. adb shell rm -rf /data/misc/apexdata/com.android.art/dalvik-cache 2. adb shell odrefresh --compile 3. adb shell cat /data/misc/odrefresh/odrefresh-metrics.xml Change-Id: I142784ec96fdf9855c44d40d7d2bf7ce75443b7f
2022-10-18Report Odrefresh compilation status, exit code and signal to statsd Stefano Cianciulli
As part of the changes done in aosp/2223024, we are now collecting some additional information about the compilation for primary/secondary architecture and system_server in dex2oat: - result status - exit code (if status is Exited) - signal (if status is Signaled) This CL reports this new data points to statsd as part of the already existing OdrefreshReported atom, so that this new information can be extracted and analysed. Bug: 246534524 Test: atest ArtGtestsTargetChroot (in particular art_standalone_odrefresh_tests) Change-Id: I9705845a6bae0716d091400adde6415c20eda3de
2022-09-26Deprecate OdrefreshReported::Status::kTimeLimitExceeded Stefano Cianciulli
As part of the changes done in aosp/2219943, the condition for which the time limit for the odrefresh compilation has been reached is now encoded within the Dex2OatResult value, making this enum value for Status redundant. Bug: 247070182 Test: m com.android.art Change-Id: Ib90e33317a721431839f690e5e01f7e0ee6b8887
2022-09-22Improve odrefresh metrics collection. Jiakai Zhang
- Add an explicit switch to OdrMetrics to make the logic more straightforward, and only enable it when compilation was done or an error occurred. - Initialize status to kUnknown instead of kOK so that the status doesn't show "OK" when an unexpected error occurs. - Explicitly set status to kOK if compilation succeeds. - Add a new status: kDalvikCachePermissionDenied, to indicate that odrefresh Failed to access the dalvik-cache directory due to lack of permission. - Set the status in many places where the status is missing. - Before this change, odrefresh fails on the "kCheck" stage when trying to clean up the dalvik-cache directory if it doesn't have the permission to create the directory. This is weird. After this change, odrefresh will fail on the "kPreparation" stage instead. Bug: 246534524 Test: atest ArtGtestsTargetChroot:OdrMetricsTest Test: - 1. Run `odrefresh --compile`. 2. See `<stage_reached>60</stage_reached><status>1</status>`. Test: - 1. Make the SELinux context of the dalvik-cache directory wrong. 2. Run `odrefresh --compile`. 3. See `<stage_reached>20</stage_reached><status>8</status>`. Test: - 1. Run `odrefresh --compile`. 2. Kill dex2oat. 3. See `<stage_reached>40</stage_reached><status>4</status>`. Change-Id: I1a239f7d59668fa763934c074e4bfc5ebcc3ee42
2022-08-22Report Odrefresh compilation times in milliseconds Stefano Cianciulli
Currently we are reporting the compilation times for the boot classpath for primary/secondary architecture and system server in seconds, but since the values we have observed so far are 4~8 seconds for the former and 8~16 for the latter, we might benefit from having a finer granularity. Hence, this commit is producing the compilation time in milliseconds (alongside the previous values in seconds, for a transition period). Bug: 243009337 Test: atest ArtGtestTargetChroot (especially art_odrefresh_tests) Change-Id: Ib78a2e778d364653a5c29dd3430bf99274ca9a5a
2022-06-13Read/write Odrefresh metrics in XML format Stefano Cianciulli
Test: atest ArtGtestsTargetChroot Bug: 175048705 Change-Id: Ie921dbe362b8caeef406277c0eb44497bb864391
2021-04-28odrefresh: Add support for uploading stats Orion Hodson
Adds support for loading odrefresh metrics saved to file and uploading them when system_server starts. Bug: 169925964 Test: manual module update with instrumentation showing statsd got data (cherry picked from commit 55ca8ab5216e4c20638f34b44c6bc53866b991ce) Merged-In: Iccc6ede1583235d09dbfd42996eb4ba118b700f8 Change-Id: Iad588f05622864b37d40333d081bd89fbf76051c