Struct pprof::protos::Profile [−][src]
pub struct Profile {}Show fields
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
fn merge_field<B>(
&mut self,
tag: u32,
wire_type: WireType,
buf: &mut B,
ctx: DecodeContext
) -> Result<(), DecodeError> where
B: Buf,
Returns the encoded length of the message without a length delimiter.
Encodes the message to a buffer. Read more
Encodes the message with a length-delimiter to a buffer. Read more
Decodes an instance of the message from a buffer. Read more
fn decode_length_delimited<B>(buf: B) -> Result<Self, DecodeError> where
Self: Default,
B: Buf,
fn decode_length_delimited<B>(buf: B) -> Result<Self, DecodeError> where
Self: Default,
B: Buf,
Decodes a length-delimited instance of the message from the buffer.
Decodes an instance of the message from a buffer, and merges it into self
. Read more
Decodes a length-delimited instance of the message from buffer, and
merges it into self
. Read more
Auto Trait Implementations
impl RefUnwindSafe for Profile
impl UnwindSafe for Profile
Blanket Implementations
Mutably borrows from an owned value. Read more
pub fn vzip(self) -> V