Atom - IkeLivenessCheckSessionValidated atom to log liveness stats
This atom is called when the liveness check of the IKE library is
completed and records various statistical information at that time.
Eldar: eldar/504706225
Bug: 305683616
Test: Verified creating atoms from the IKE library
Merged-In: I2fbc3cde002de640f404fef07f76529243ea1fbd
Change-Id: I2fbc3cde002de640f404fef07f76529243ea1fbd
diff --git a/stats/atoms.proto b/stats/atoms.proto
index f015d74..d920b85 100644
--- a/stats/atoms.proto
+++ b/stats/atoms.proto
@@ -1046,7 +1046,7 @@
extensions 739; // ThreadnetworkTopoEntryRepeated threadnetwork_topo_entry_repeated
extensions 740; // ThreadnetworkDeviceInfoReported threadnetwork_device_info_reported
extensions 752; // StatsSocketLossReported stats_socket_loss_reported
-
+ extensions 760; // IkeLivenessCheckSessionValidated ike_liveness_check_session_validated
extensions 9999; // Atom9999 atom_9999
// StatsdStats tracks platform atoms with ids up to 900.
// Update StatsdStats::kMaxPushedAtomId when atom ids here approach that value.
diff --git a/stats/atoms/ike/ike_extension_atoms.proto b/stats/atoms/ike/ike_extension_atoms.proto
index 3964167..2661276 100644
--- a/stats/atoms/ike/ike_extension_atoms.proto
+++ b/stats/atoms/ike/ike_extension_atoms.proto
@@ -27,6 +27,8 @@
extend Atom {
optional IkeSessionTerminated ike_session_terminated = 678 [(module) = "ike"];
+ optional IkeLivenessCheckSessionValidated ike_liveness_check_session_validated =
+ 760 [(module) = "ike"];
}
/**
@@ -48,3 +50,26 @@
// no error has occurred
optional android.stats.ike.IkeError ike_error = 4;
}
+
+message IkeLivenessCheckSessionValidated {
+
+ // Identity of system callers.
+ optional android.stats.ike.IkeCaller ike_caller = 1;
+
+ // To determine task at which liveness check was initiated.
+ optional android.stats.ike.IkeTask ike_task = 2;
+
+ // Underlying network type that checked the Liveness.
+ optional android.stats.ike.IkeUnderlyingNetworkType ike_underlying_network_type = 3;
+
+ // Elapsed time in milliseconds from Started to end of liveness check
+ // (From Started to Success or Failure)
+ optional int32 elapsed_time_in_millis = 4;
+
+ // Number of times client invoked liveness check api during ongoing task.
+ optional int32 number_of_on_going_status = 5;
+
+ // True if the Liveness check is successful. False if the Liveness check is failed.
+ optional bool result_success = 6;
+}
+
diff --git a/stats/enums/stats/ike/ike.proto b/stats/enums/stats/ike/ike.proto
index 761d2b8..69273fc 100644
--- a/stats/enums/stats/ike/ike.proto
+++ b/stats/enums/stats/ike/ike.proto
@@ -101,4 +101,21 @@
ERROR_PROTOCOL_INVALID_SELECTORS= 0x00040027;
ERROR_PROTOCOL_TEMPORARY_FAILURE= 0x0004002B;
ERROR_PROTOCOL_CHILD_SA_NOT_FOUND= 0x0004002C;
-}
\ No newline at end of file
+}
+
+enum IkeTask {
+ IKE_TASK_UNSPECIFIED = 0;
+ IKE_TASK_ON_DEMAND_DPD = 1;
+ IKE_TASK_UNKNOWN_BUSY = 2;
+ IKE_TASK_PERIODIC_DPD = 3;
+ IKE_TASK_REKEY_IKE = 4;
+ IKE_TASK_REKEY_CHILD = 5;
+ IKE_TASK_MOBIKE = 6;
+}
+
+enum IkeUnderlyingNetworkType {
+ NETWORK_UNSPECIFIED = 0;
+ NETWORK_WIFI = 1;
+ NETWORK_CELLULAR = 2;
+}
+