Merge "Telephony statsd atoms."
This commit is contained in:
@@ -363,7 +363,7 @@ message Atom {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Pulled events will start at field 10000.
|
// Pulled events will start at field 10000.
|
||||||
// Next: 10067
|
// Next: 10080
|
||||||
oneof pulled {
|
oneof pulled {
|
||||||
WifiBytesTransfer wifi_bytes_transfer = 10000;
|
WifiBytesTransfer wifi_bytes_transfer = 10000;
|
||||||
WifiBytesTransferByFgBg wifi_bytes_transfer_by_fg_bg = 10001;
|
WifiBytesTransferByFgBg wifi_bytes_transfer_by_fg_bg = 10001;
|
||||||
@@ -429,6 +429,11 @@ message Atom {
|
|||||||
ProcessSystemIonHeapSize process_system_ion_heap_size = 10061;
|
ProcessSystemIonHeapSize process_system_ion_heap_size = 10061;
|
||||||
VmsClientStats vms_client_stats = 10065;
|
VmsClientStats vms_client_stats = 10065;
|
||||||
NotificationRemoteViews notification_remote_views = 10066;
|
NotificationRemoteViews notification_remote_views = 10066;
|
||||||
|
VoiceCallSession voice_call_session = 10076 [(log_from_module) = "telephony"];
|
||||||
|
VoiceCallRatUsage voice_call_rat_usage = 10077 [(log_from_module) = "telephony"];
|
||||||
|
SimSlotState sim_slot_state = 10078 [(log_from_module) = "telephony"];
|
||||||
|
SupportedRadioAccessFamily supported_radio_access_family =
|
||||||
|
10079 [(log_from_module) = "telephony"];
|
||||||
}
|
}
|
||||||
|
|
||||||
// DO NOT USE field numbers above 100,000 in AOSP.
|
// DO NOT USE field numbers above 100,000 in AOSP.
|
||||||
@@ -7558,3 +7563,153 @@ message UserspaceRebootReported {
|
|||||||
// State of primary user's encryption storage at the moment boot completed. Always set.
|
// State of primary user's encryption storage at the moment boot completed. Always set.
|
||||||
optional UserEncryptionState user_encryption_state = 3;
|
optional UserEncryptionState user_encryption_state = 3;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Pulls information for a single voice call.
|
||||||
|
*
|
||||||
|
* Each pull creates multiple atoms, one for each call. The sequence is randomized when pulled.
|
||||||
|
*
|
||||||
|
* Pulled from:
|
||||||
|
* frameworks/opt/telephony/src/java/com/android/internal/telephony/metrics/MetricsCollector.java
|
||||||
|
*/
|
||||||
|
message VoiceCallSession {
|
||||||
|
// Bearer (IMS or CS) when the call started.
|
||||||
|
optional android.telephony.CallBearerEnum bearer_at_start = 1;
|
||||||
|
|
||||||
|
// Bearer (IMS or CS) when the call ended.
|
||||||
|
// The bearer may change during the call, e.g. due to SRVCC.
|
||||||
|
optional android.telephony.CallBearerEnum bearer_at_end = 2;
|
||||||
|
|
||||||
|
// Direction of the call (incoming or outgoing).
|
||||||
|
optional android.telephony.CallDirectionEnum direction = 3;
|
||||||
|
|
||||||
|
// Time spent setting up the call.
|
||||||
|
optional android.telephony.CallSetupDurationEnum setup_duration = 4;
|
||||||
|
|
||||||
|
// Whether the call ended before the setup was completed.
|
||||||
|
optional bool setup_failed = 5;
|
||||||
|
|
||||||
|
// IMS reason code or CS disconnect cause.
|
||||||
|
// For IMS, see: frameworks/base/telephony/java/android/telephony/ims/ImsReasonInfo.java
|
||||||
|
// For CS, see: frameworks/base/telephony/java/android/telephony/DisconnectCause.java
|
||||||
|
optional int32 disconnect_reason_code = 6;
|
||||||
|
|
||||||
|
// IMS extra code or CS precise disconnect cause.
|
||||||
|
// For IMS, this code is vendor-specific
|
||||||
|
// For CS, see: frameworks/base/telephony/java/android/telephony/PreciseDisconnectCause.java
|
||||||
|
optional int32 disconnect_extra_code = 7;
|
||||||
|
|
||||||
|
// IMS extra message or CS vendor cause.
|
||||||
|
optional string disconnect_extra_message = 8;
|
||||||
|
|
||||||
|
// Radio access technology (RAT) used when call started.
|
||||||
|
optional android.telephony.NetworkTypeEnum rat_at_start = 9;
|
||||||
|
|
||||||
|
// Radio access technology (RAT) used when call terminated.
|
||||||
|
optional android.telephony.NetworkTypeEnum rat_at_end = 10;
|
||||||
|
|
||||||
|
// Number of times RAT changed during the call.
|
||||||
|
optional int64 rat_switch_count = 11;
|
||||||
|
|
||||||
|
// A bitmask of all codecs used during the call.
|
||||||
|
// See: frameworks/opt/telephony/src/java/com/android/internal/telephony/metrics/VoiceCallSessionStats.java
|
||||||
|
optional int64 codec_bitmask = 12;
|
||||||
|
|
||||||
|
// Number of other calls going on during call setup, for the same SIM slot.
|
||||||
|
optional int32 concurrent_call_count_at_start = 13;
|
||||||
|
|
||||||
|
// Number of other calls going on during call termination, for the same SIM slot.
|
||||||
|
optional int32 concurrent_call_count_at_end = 14;
|
||||||
|
|
||||||
|
// Index of the SIM is used, 0 for single-SIM devices.
|
||||||
|
optional int32 sim_slot_index = 15;
|
||||||
|
|
||||||
|
// Whether the device was in multi-SIM mode (with multiple active SIM profiles).
|
||||||
|
optional bool is_multi_sim = 16;
|
||||||
|
|
||||||
|
// Whether the call was made with an eSIM profile.
|
||||||
|
optional bool is_esim = 17;
|
||||||
|
|
||||||
|
// Carrier ID of the SIM card.
|
||||||
|
// See https://source.android.com/devices/tech/config/carrierid.
|
||||||
|
optional int32 carrier_id = 18;
|
||||||
|
|
||||||
|
// Whether an SRVCC has been completed successfully for this call.
|
||||||
|
optional bool srvcc_completed = 19;
|
||||||
|
|
||||||
|
// Number of SRVCC failures.
|
||||||
|
optional int64 srvcc_failure_count = 20;
|
||||||
|
|
||||||
|
// Number of SRVCC cancellations.
|
||||||
|
optional int64 srvcc_cancellation_count = 21;
|
||||||
|
|
||||||
|
// Whether the Real-Time Text (RTT) was ever used in the call (rather than whether RTT was
|
||||||
|
// enabled in the dialer's settings).
|
||||||
|
optional bool rtt_enabled = 22;
|
||||||
|
|
||||||
|
// Whether this was an emergency call.
|
||||||
|
optional bool is_emergency = 23;
|
||||||
|
|
||||||
|
// Whether the call was performed while roaming.
|
||||||
|
optional bool is_roaming = 24;
|
||||||
|
|
||||||
|
// A random number used as the dimension field to pull multiple atoms.
|
||||||
|
optional int32 dimension = 25;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Pulls voice call radio access technology (RAT) usage.
|
||||||
|
*
|
||||||
|
* Each pull creates multiple atoms, one for each carrier/RAT, the order of which is irrelevant to
|
||||||
|
* time. The atom will be skipped if not enough data is available.
|
||||||
|
*
|
||||||
|
* Pulled from:
|
||||||
|
* frameworks/opt/telephony/src/java/com/android/internal/telephony/metrics/MetricsCollector.java
|
||||||
|
*/
|
||||||
|
message VoiceCallRatUsage {
|
||||||
|
// Carrier ID (https://source.android.com/devices/tech/config/carrierid).
|
||||||
|
optional int32 carrier_id = 1;
|
||||||
|
|
||||||
|
// Radio access technology.
|
||||||
|
optional android.telephony.NetworkTypeEnum rat = 2;
|
||||||
|
|
||||||
|
// Total duration that voice calls spent on this carrier and RAT.
|
||||||
|
optional int64 total_duration_seconds = 3;
|
||||||
|
|
||||||
|
// Total number of calls using this carrier and RAT.
|
||||||
|
// A call is counted once even if it used the RAT multiple times.
|
||||||
|
optional int64 call_count = 4;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Pulls the number of active SIM slots and SIMs/eSIM profiles.
|
||||||
|
*
|
||||||
|
* Pulled from:
|
||||||
|
* frameworks/opt/telephony/src/java/com/android/internal/telephony/metrics/MetricsCollector.java
|
||||||
|
*/
|
||||||
|
message SimSlotState {
|
||||||
|
// Number of active SIM slots (both physical and eSIM profiles) in the device.
|
||||||
|
optional int32 active_slot_count = 1;
|
||||||
|
|
||||||
|
// Number of SIM cards (both physical and active eSIM profiles).
|
||||||
|
// This number is always equal to or less than the number of active SIM slots.
|
||||||
|
optional int32 sim_count = 2;
|
||||||
|
|
||||||
|
// Number of active eSIM profiles.
|
||||||
|
// This number is always equal to or less than the number of SIMs.
|
||||||
|
optional int32 esim_count = 3;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Pulls supported cellular radio access technologies.
|
||||||
|
*
|
||||||
|
* This atom reports the capabilities of the device, rather than the network it has access to.
|
||||||
|
*
|
||||||
|
* Pulled from:
|
||||||
|
* frameworks/opt/telephony/src/java/com/android/internal/telephony/metrics/MetricsCollector.java
|
||||||
|
*/
|
||||||
|
message SupportedRadioAccessFamily {
|
||||||
|
// A bitmask of supported radio technologies.
|
||||||
|
// See android.telephony.TelephonyManager.NetworkTypeBitMask.
|
||||||
|
optional int64 network_type_bitmask = 1;
|
||||||
|
}
|
||||||
|
|||||||
@@ -20,6 +20,43 @@ package android.telephony;
|
|||||||
option java_outer_classname = "TelephonyProtoEnums";
|
option java_outer_classname = "TelephonyProtoEnums";
|
||||||
option java_multiple_files = true;
|
option java_multiple_files = true;
|
||||||
|
|
||||||
|
enum CallBearerEnum {
|
||||||
|
/** Call bearer is unknown or invalid */
|
||||||
|
CALL_BEARER_UNKNOWN = 0;
|
||||||
|
|
||||||
|
/** Call bearer is legacy CS */
|
||||||
|
CALL_BEARER_CS = 1;
|
||||||
|
|
||||||
|
/** Call bearer is IMS */
|
||||||
|
CALL_BEARER_IMS = 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum CallDirectionEnum {
|
||||||
|
/** Call direction: unknown or invalid */
|
||||||
|
CALL_DIRECTION_UNKNOWN = 0;
|
||||||
|
|
||||||
|
/** Call direction: mobile originated (outgoing for this device) */
|
||||||
|
CALL_DIRECTION_MO = 1;
|
||||||
|
|
||||||
|
/** Call direction: mobile terminated (incoming for this device) */
|
||||||
|
CALL_DIRECTION_MT = 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Call setup duration buckets.
|
||||||
|
// See com.android.internal.telephony.metrics.VoiceCallSessionStats for definition.
|
||||||
|
enum CallSetupDurationEnum {
|
||||||
|
CALL_SETUP_DURATION_UNKNOWN = 0;
|
||||||
|
CALL_SETUP_DURATION_EXTREMELY_FAST = 1;
|
||||||
|
CALL_SETUP_DURATION_ULTRA_FAST = 2;
|
||||||
|
CALL_SETUP_DURATION_VERY_FAST = 3;
|
||||||
|
CALL_SETUP_DURATION_FAST = 4;
|
||||||
|
CALL_SETUP_DURATION_NORMAL = 5;
|
||||||
|
CALL_SETUP_DURATION_SLOW = 6;
|
||||||
|
CALL_SETUP_DURATION_VERY_SLOW = 7;
|
||||||
|
CALL_SETUP_DURATION_ULTRA_SLOW = 8;
|
||||||
|
CALL_SETUP_DURATION_EXTREMELY_SLOW = 9;
|
||||||
|
}
|
||||||
|
|
||||||
// Data conn. power states, primarily used by android/telephony/DataConnectionRealTimeInfo.java.
|
// Data conn. power states, primarily used by android/telephony/DataConnectionRealTimeInfo.java.
|
||||||
enum DataConnectionPowerStateEnum {
|
enum DataConnectionPowerStateEnum {
|
||||||
DATA_CONNECTION_POWER_STATE_LOW = 1;
|
DATA_CONNECTION_POWER_STATE_LOW = 1;
|
||||||
@@ -63,7 +100,6 @@ enum SignalStrengthEnum {
|
|||||||
SIGNAL_STRENGTH_GREAT = 4;
|
SIGNAL_STRENGTH_GREAT = 4;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
enum ServiceStateEnum {
|
enum ServiceStateEnum {
|
||||||
/**
|
/**
|
||||||
* Normal operation condition, the phone is registered
|
* Normal operation condition, the phone is registered
|
||||||
|
|||||||
Reference in New Issue
Block a user