Skip to main content

SystemInfo

Struct SystemInfo 

Source
pub struct SystemInfo {
Show 17 fields pub utsname: Option<Utsname>, pub android_build_fingerprint: Option<String>, pub android_device_manufacturer: Option<String>, pub android_soc_model: Option<String>, pub android_guest_soc_model: Option<String>, pub android_hardware_revision: Option<String>, pub android_storage_model: Option<String>, pub android_ram_model: Option<String>, pub android_serial_console: Option<String>, pub tracing_service_version: Option<String>, pub android_sdk_version: Option<u64>, pub page_size: Option<u32>, pub num_cpus: Option<u32>, pub timezone_off_mins: Option<i32>, pub hz: Option<i64>, pub system_ram_bytes: Option<u64>, pub machine_name: Option<String>,
}
Expand description

Next id: 18

Fields§

§utsname: Option<Utsname>§android_build_fingerprint: Option<String>§android_device_manufacturer: Option<String>

The manufacturer of the product/hardware. Source : “ro.product.manufacturer” Introduced after Android W in Nov 2024 and is not supported on older versions.

§android_soc_model: Option<String>

The SoC model from which trace is collected

§android_guest_soc_model: Option<String>

The guest SoC model from which trace is collected in case of VMs

§android_hardware_revision: Option<String>

The hardware reversion from android device

§android_storage_model: Option<String>

The storage component from android_device. This field has been introduced after Android W in Aug 2024 and is not supported on older versions.

§android_ram_model: Option<String>

The RAM component information from android device. This field has been introduced after Android W in Aug 2024 and is not supported on older versions.

§android_serial_console: Option<String>

The serial console information from android device.

§tracing_service_version: Option<String>

The version of traced (the same returned by traced --version). This is a human readable string with and its format varies depending on the build system and the repo (standalone vs AOSP). This is intended for human debugging only.

§android_sdk_version: Option<u64>

The Android SDK vesion (e.g. 21 for L, 31 for S etc). Introduced in Android T.

§page_size: Option<u32>

Kernel page size - sysconf(_SC_PAGESIZE).

§num_cpus: Option<u32>

Number of cpus - sysconf(_SC_NPROCESSORS_CONF). Might be different to the number of online cpus. Introduced in perfetto v44.

§timezone_off_mins: Option<i32>

The timezone offset from UTC, as per strftime(“%z”), in minutes. Introduced in v38 / Android V.

§hz: Option<i64>

Ticks per second - sysconf(_SC_CLK_TCK). Not serialised as of perfetto v44.

§system_ram_bytes: Option<u64>

The size of the system RAM in bytes.

On Linux/Android: sysinfo.totalram * sysinfo.mem_unit. Other POSIX (e.g. Mac): sysconf(_SC_PHYS_PAGES) * sysconf(_SC_PAGESIZE).

Introduced in perfetto v54 / Android 26Q1+.

§machine_name: Option<String>

Human-readable name of the machine this SystemInfo describes, used as the machine’s label in the UI (falling back to “machine ” when unset).

A producer attributing its data to a non-host machine can set this by emitting a SystemInfo packet to give that machine a name. Only meaningful when the packet carries a non-zero machine_id.

Implementations§

Source§

impl SystemInfo

Source

pub fn android_build_fingerprint(&self) -> &str

Returns the value of android_build_fingerprint, or the default value if android_build_fingerprint is unset.

Source

pub fn hz(&self) -> i64

Returns the value of hz, or the default value if hz is unset.

Source

pub fn tracing_service_version(&self) -> &str

Returns the value of tracing_service_version, or the default value if tracing_service_version is unset.

Source

pub fn android_sdk_version(&self) -> u64

Returns the value of android_sdk_version, or the default value if android_sdk_version is unset.

Source

pub fn page_size(&self) -> u32

Returns the value of page_size, or the default value if page_size is unset.

Source

pub fn timezone_off_mins(&self) -> i32

Returns the value of timezone_off_mins, or the default value if timezone_off_mins is unset.

Source

pub fn num_cpus(&self) -> u32

Returns the value of num_cpus, or the default value if num_cpus is unset.

Source

pub fn android_soc_model(&self) -> &str

Returns the value of android_soc_model, or the default value if android_soc_model is unset.

Source

pub fn android_hardware_revision(&self) -> &str

Returns the value of android_hardware_revision, or the default value if android_hardware_revision is unset.

Source

pub fn android_storage_model(&self) -> &str

Returns the value of android_storage_model, or the default value if android_storage_model is unset.

Source

pub fn android_ram_model(&self) -> &str

Returns the value of android_ram_model, or the default value if android_ram_model is unset.

Source

pub fn android_guest_soc_model(&self) -> &str

Returns the value of android_guest_soc_model, or the default value if android_guest_soc_model is unset.

Source

pub fn android_device_manufacturer(&self) -> &str

Returns the value of android_device_manufacturer, or the default value if android_device_manufacturer is unset.

Source

pub fn android_serial_console(&self) -> &str

Returns the value of android_serial_console, or the default value if android_serial_console is unset.

Source

pub fn system_ram_bytes(&self) -> u64

Returns the value of system_ram_bytes, or the default value if system_ram_bytes is unset.

Source

pub fn machine_name(&self) -> &str

Returns the value of machine_name, or the default value if machine_name is unset.

Trait Implementations§

Source§

impl Clone for SystemInfo

Source§

fn clone(&self) -> SystemInfo

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for SystemInfo

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for SystemInfo

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl Hash for SystemInfo

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl Message for SystemInfo

Source§

fn encoded_len(&self) -> usize

Returns the encoded length of the message without a length delimiter.
Source§

fn clear(&mut self)

Clears the message, resetting all fields to their default.
Source§

fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>
where Self: Sized,

Encodes the message to a buffer. Read more
Source§

fn encode_to_vec(&self) -> Vec<u8>
where Self: Sized,

Encodes the message to a newly allocated buffer.
Source§

fn encode_length_delimited( &self, buf: &mut impl BufMut, ) -> Result<(), EncodeError>
where Self: Sized,

Encodes the message with a length-delimiter to a buffer. Read more
Source§

fn encode_length_delimited_to_vec(&self) -> Vec<u8>
where Self: Sized,

Encodes the message with a length-delimiter to a newly allocated buffer.
Source§

fn decode(buf: impl Buf) -> Result<Self, DecodeError>
where Self: Default,

Decodes an instance of the message from a buffer. Read more
Source§

fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>
where Self: Default,

Decodes a length-delimited instance of the message from the buffer.
Source§

fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>
where Self: Sized,

Decodes an instance of the message from a buffer, and merges it into self. Read more
Source§

fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>
where Self: Sized,

Decodes a length-delimited instance of the message from buffer, and merges it into self.
Source§

impl PartialEq for SystemInfo

Source§

fn eq(&self, other: &SystemInfo) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for SystemInfo

Source§

impl StructuralPartialEq for SystemInfo

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.