Log metrics for RKP fallback event.
This CL adds metrics logging for fallback during RKP hybrid mode.
Test: atest com.android.remoteprovisioner.unittest.ServerToSystemTest#testFallback
on cuttlefish, followed by ./statsd_testdrive 10124
Bug: 194510784
Change-Id: I3d6184df02828fef1d0110688afe1ba2db10eae9
(cherry picked from commit 400b225c94329c5192695c15bd2f81568fc92f5e)
diff --git a/keystore2/src/remote_provisioning.rs b/keystore2/src/remote_provisioning.rs
index 40c06e5..a19462b 100644
--- a/keystore2/src/remote_provisioning.rs
+++ b/keystore2/src/remote_provisioning.rs
@@ -43,7 +43,9 @@
use crate::database::{CertificateChain, KeystoreDB, Uuid};
use crate::error::{self, map_or_log_err, map_rem_prov_error, Error};
use crate::globals::{get_keymint_device, get_remotely_provisioned_component, DB};
+use crate::metrics_store::log_rkp_error_stats;
use crate::utils::watchdog as wd;
+use android_security_metrics::aidl::android::security::metrics::RkpError::RkpError as MetricsRkpError;
/// Contains helper functions to check if remote provisioning is enabled on the system and, if so,
/// to assign and retrieve attestation keys and certificate chains.
@@ -189,6 +191,7 @@
),
e
);
+ log_rkp_error_stats(MetricsRkpError::FALL_BACK_DURING_HYBRID);
Ok(None)
}
Ok(v) => match v {