Process

Struct Process 

Source
pub struct Process {
Show 23 fields pub pid: Option<i32>, pub threads: Vec<Thread>, pub vm_size_kb: Option<u64>, pub vm_rss_kb: Option<u64>, pub rss_anon_kb: Option<u64>, pub rss_file_kb: Option<u64>, pub rss_shmem_kb: Option<u64>, pub vm_swap_kb: Option<u64>, pub vm_locked_kb: Option<u64>, pub vm_hwm_kb: Option<u64>, pub oom_score_adj: Option<i64>, pub is_peak_rss_resettable: Option<bool>, pub chrome_private_footprint_kb: Option<u32>, pub chrome_peak_resident_set_kb: Option<u32>, pub fds: Vec<FdInfo>, pub smr_rss_kb: Option<u64>, pub smr_pss_kb: Option<u64>, pub smr_pss_anon_kb: Option<u64>, pub smr_pss_file_kb: Option<u64>, pub smr_pss_shmem_kb: Option<u64>, pub smr_swap_pss_kb: Option<u64>, pub runtime_user_mode: Option<u64>, pub runtime_kernel_mode: Option<u64>,
}

Fields§

§pid: Option<i32>§threads: Vec<Thread>§vm_size_kb: Option<u64>

See /proc/[pid]/status in man 5 proc for a description of these fields.

§vm_rss_kb: Option<u64>§rss_anon_kb: Option<u64>§rss_file_kb: Option<u64>§rss_shmem_kb: Option<u64>§vm_swap_kb: Option<u64>§vm_locked_kb: Option<u64>§vm_hwm_kb: Option<u64>

When adding a new field remember to update kProcMemCounterSize in the trace processor.

§oom_score_adj: Option<i64>§is_peak_rss_resettable: Option<bool>

The peak resident set size is resettable in newer Posix kernels. This field specifies if reset is supported and if the writer had reset the peaks after each process stats recording.

§chrome_private_footprint_kb: Option<u32>

Private, shared and swap footprint of the process as measured by Chrome. To know more about these metrics refer to: https://docs.google.com/document/d/1_WmgE1F5WUrhwkPqJis3dWyOiUmQKvpXp5cd4w86TvA

§chrome_peak_resident_set_kb: Option<u32>§fds: Vec<FdInfo>§smr_rss_kb: Option<u64>

These fields are set only when scan_smaps_rollup=true

§smr_pss_kb: Option<u64>§smr_pss_anon_kb: Option<u64>§smr_pss_file_kb: Option<u64>§smr_pss_shmem_kb: Option<u64>§smr_swap_pss_kb: Option<u64>§runtime_user_mode: Option<u64>

Time spent scheduled in user mode in nanoseconds. Parsed from utime in /proc/pid/stat. Recorded if record_process_runtime config option is set. Resolution of “clock ticks”, usually 10ms.

§runtime_kernel_mode: Option<u64>

Time spent scheduled in kernel mode in nanoseconds. Parsed from stime in /proc/pid/stat. Recorded if record_process_runtime config option is set. Resolution of “clock ticks”, usually 10ms.

Implementations§

Source§

impl Process

Source

pub fn pid(&self) -> i32

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

Source

pub fn vm_size_kb(&self) -> u64

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

Source

pub fn vm_rss_kb(&self) -> u64

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

Source

pub fn rss_anon_kb(&self) -> u64

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

Source

pub fn rss_file_kb(&self) -> u64

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

Source

pub fn rss_shmem_kb(&self) -> u64

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

Source

pub fn vm_swap_kb(&self) -> u64

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

Source

pub fn vm_locked_kb(&self) -> u64

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

Source

pub fn vm_hwm_kb(&self) -> u64

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

Source

pub fn oom_score_adj(&self) -> i64

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

Source

pub fn is_peak_rss_resettable(&self) -> bool

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

Source

pub fn chrome_private_footprint_kb(&self) -> u32

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

Source

pub fn chrome_peak_resident_set_kb(&self) -> u32

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

Source

pub fn smr_rss_kb(&self) -> u64

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

Source

pub fn smr_pss_kb(&self) -> u64

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

Source

pub fn smr_pss_anon_kb(&self) -> u64

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

Source

pub fn smr_pss_file_kb(&self) -> u64

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

Source

pub fn smr_pss_shmem_kb(&self) -> u64

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

Source

pub fn runtime_user_mode(&self) -> u64

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

Source

pub fn runtime_kernel_mode(&self) -> u64

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

Source

pub fn smr_swap_pss_kb(&self) -> u64

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

Trait Implementations§

Source§

impl Clone for Process

Source§

fn clone(&self) -> Process

Returns a duplicate of the value. Read more
1.0.0 · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Debug for Process

Source§

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

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

impl Default for Process

Source§

fn default() -> Process

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

impl Message for Process

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 Process

Source§

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

Tests for self and other values to be equal, and is used by ==.
1.0.0 · 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 StructuralPartialEq for Process

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> DynClone for T
where T: Clone,

Source§

fn __clone_box(&self, _: Private) -> *mut ()

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

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

§

fn from_ref(input: &T) -> T

Converts to this type from a reference to the input type.
§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
§

impl<T> IntoRequest<T> for T

§

fn into_request(self) -> Request<T>

Wrap the input message T in a tonic::Request
§

impl<L> LayerExt<L> for L

§

fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>
where L: Layer<S>,

Applies the layer to a service and wraps it in [Layered].
§

impl<T> Pointable for T

§

const ALIGN: usize

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
§

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

§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns [Action::Follow] only if self and other return Action::Follow. Read more
§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns [Action::Follow] if either self or other returns Action::Follow. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
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.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

impl<T> Allocation for T
where T: RefUnwindSafe + Send + Sync,