[][src]Struct pprof::protos::Profile

pub struct Profile {
    pub sample_type: Vec<ValueType>,
    pub sample: Vec<Sample>,
    pub mapping: Vec<Mapping>,
    pub location: Vec<Location>,
    pub function: Vec<Function>,
    pub string_table: Vec<String>,
    pub drop_frames: i64,
    pub keep_frames: i64,
    pub time_nanos: i64,
    pub duration_nanos: i64,
    pub period_type: Option<ValueType>,
    pub period: i64,
    pub comment: Vec<i64>,
    pub default_sample_type: i64,
}

Fields

sample_type: Vec<ValueType>

A description of the samples associated with each Sample.value. For a cpu profile this might be: [["cpu","nanoseconds"]] or [["wall","seconds"]] or [["syscall","count"]] For a heap profile, this might be: [["allocations","count"], ["space","bytes"]], If one of the values represents the number of events represented by the sample, by convention it should be at index 0 and use sample_type.unit == "count".

sample: Vec<Sample>

The set of samples recorded in this profile.

mapping: Vec<Mapping>

Mapping from address ranges to the image/binary/library mapped into that address range. mapping[0] will be the main binary.

location: Vec<Location>

Useful program location

function: Vec<Function>

Functions referenced by locations

string_table: Vec<String>

A common table for strings referenced by various messages. string_table[0] must always be "".

drop_frames: i64

frames with Function.function_name fully matching the following regexp will be dropped from the samples, along with their successors.

Index into string table.

keep_frames: i64

frames with Function.function_name fully matching the following regexp will be kept, even if it matches drop_functions.

Index into string table.

time_nanos: i64

Time of collection (UTC) represented as nanoseconds past the epoch.

duration_nanos: i64

Duration of the profile, if a duration makes sense.

period_type: Option<ValueType>

The kind of events between sampled ocurrences. e.g [ "cpu","cycles" ] or [ "heap","bytes" ]

period: i64

The number of events between sampled occurrences.

comment: Vec<i64>

Freeform text associated to the profile.

Indices into string table.

default_sample_type: i64

Index into the string table of the type of the preferred sample value. If unset, clients should default to the last sample value.

Trait Implementations

impl Clone for Profile[src]

impl Debug for Profile[src]

impl Default for Profile[src]

impl Message for Profile[src]

impl PartialEq<Profile> for Profile[src]

impl StructuralPartialEq for Profile[src]

Auto Trait Implementations

impl RefUnwindSafe for Profile

impl Send for Profile

impl Sync for Profile

impl Unpin for Profile

impl UnwindSafe for Profile

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

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