class CrashReport

Defined at line 1575 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

Represents a crash report.

Public Members

static const fidl_type_t * FidlType

Public Methods

bool IsEmpty ()

Returns whether no field is set.

void CrashReport ()
void CrashReport (CrashReport && other)
const ::std::string & program_name ()

The name of the program that crashed, e.g., the process or component's name.

Internally, the program name is used to persist the report in case it can't be uploaded

immediately. As a result, it's sanitized when used as a filesystem path, e.g., stripped of

any fuchsia-pkg:// prefix. ZX_ERR_INVALID_ARGS will be returned if the sanitized program

name is any of the following:

* ""

* "."

* ".."

Defined at line 1590 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

bool has_program_name ()

Defined at line 1594 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

::std::string * mutable_program_name ()

The name of the program that crashed, e.g., the process or component's name.

Internally, the program name is used to persist the report in case it can't be uploaded

immediately. As a result, it's sanitized when used as a filesystem path, e.g., stripped of

any fuchsia-pkg:// prefix. ZX_ERR_INVALID_ARGS will be returned if the sanitized program

name is any of the following:

* ""

* "."

* ".."

Defined at line 1607 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

void clear_program_name ()

Defined at line 1615 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

::std::vector< ::fuchsia::feedback::Annotation> * mutable_annotations ()

A vector of key-value string pairs representing arbitrary data that should be attached to a

crash report.

Keys should be unique as only the latest value for a given key in the vector will be

considered.

Defined at line 1673 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

void clear_annotations ()

Defined at line 1681 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

const ::std::vector< ::fuchsia::feedback::Attachment> & attachments ()

A vector of key-value string-to-VMO pairs representing arbitrary data that should be

attached to a crash report.

Keys should be unique as only the latest value for a given key in the vector will be

considered.

ZX_ERR_INVALID_ARGS will be returned if any of the following is true:

* a key is ""

* a key is "."

* a key is ".."

* a key contains a forward slash "/"

* a key contains a space " "

* a key contains characters other than printable ASCII

Defined at line 1702 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

bool has_attachments ()

Defined at line 1706 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

::std::vector< ::fuchsia::feedback::Attachment> * mutable_attachments ()

A vector of key-value string-to-VMO pairs representing arbitrary data that should be

attached to a crash report.

Keys should be unique as only the latest value for a given key in the vector will be

considered.

ZX_ERR_INVALID_ARGS will be returned if any of the following is true:

* a key is ""

* a key is "."

* a key is ".."

* a key contains a forward slash "/"

* a key contains a space " "

* a key contains characters other than printable ASCII

Defined at line 1723 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

void clear_attachments ()

Defined at line 1731 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

const ::std::string & event_id ()

A text ID that the crash server can use to group multiple crash reports related to the

same event.

Unlike the crash signature, crash reports sharing the same ID correspond to different

crashes, but can be considered as belonging to the same event, e.g., a crash in a low-level

server causing a crash in a high-level UI widget.

Defined at line 1745 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

bool has_event_id ()

Defined at line 1749 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

::std::string * mutable_event_id ()

A text ID that the crash server can use to group multiple crash reports related to the

same event.

Unlike the crash signature, crash reports sharing the same ID correspond to different

crashes, but can be considered as belonging to the same event, e.g., a crash in a low-level

server causing a crash in a high-level UI widget.

Defined at line 1759 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

void clear_event_id ()

Defined at line 1767 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

const int64_t & program_uptime ()

How long the program was running before it crashed.

Defined at line 1776 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

bool has_program_uptime ()

Defined at line 1780 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

int64_t * mutable_program_uptime ()

How long the program was running before it crashed.

Defined at line 1785 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

void clear_program_uptime ()

Defined at line 1793 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

const ::std::string & crash_signature ()

A text signature that the crash server can use to track the same crash over time, e.g.,

"kernel-panic" or "oom". This signature will take precedence over any automated signature

derived from the rest of the data.

Unlike the event ID, crash reports sharing the same signature correspond to the same crash,

but happening over multiple events, e.g., a null pointer exception in a server whenever

asked the same request.

Must match [a-z][a-z

\

-]* i.e. only lowercase letters and hyphens or this will result in a

ZX_ERR_INVALID_ARGS epitaph.

Defined at line 1811 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

bool has_crash_signature ()

Defined at line 1815 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

::std::string * mutable_crash_signature ()

A text signature that the crash server can use to track the same crash over time, e.g.,

"kernel-panic" or "oom". This signature will take precedence over any automated signature

derived from the rest of the data.

Unlike the event ID, crash reports sharing the same signature correspond to the same crash,

but happening over multiple events, e.g., a null pointer exception in a server whenever

asked the same request.

Must match [a-z][a-z

\

-]* i.e. only lowercase letters and hyphens or this will result in a

ZX_ERR_INVALID_ARGS epitaph.

Defined at line 1829 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

void clear_crash_signature ()

Defined at line 1837 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

const bool & is_fatal ()

Indicates whether the crash report is for the atypical stop of a running process, component,

or the system itself.

Examples of events that result in fatal crash reports are:

* an ELF process crashing

* the system rebooting because it ran out of memory.

* the system rebooting because a critical component crashed.

* the system rebooting because the device was too hot.

Examples of events that result in non-fatal crash reports are:

* an uncaught exception in a Dart program with many execution contexts. The runtime may

chose to terminate that specific execution context and file a crash report for it instead

of the whole program.

* a component detecting a fatal event (like an OOM) may occur soon, but isn't guaranteed to

occur.

This field is primarily used for grouping crashes by fatal, not fatal, and unknown,

each corresponding to the field being set to true, set to false, or not set respectively.

Defined at line 1863 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

bool has_is_fatal ()

Defined at line 1867 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

bool * mutable_is_fatal ()

Indicates whether the crash report is for the atypical stop of a running process, component,

or the system itself.

Examples of events that result in fatal crash reports are:

* an ELF process crashing

* the system rebooting because it ran out of memory.

* the system rebooting because a critical component crashed.

* the system rebooting because the device was too hot.

Examples of events that result in non-fatal crash reports are:

* an uncaught exception in a Dart program with many execution contexts. The runtime may

chose to terminate that specific execution context and file a crash report for it instead

of the whole program.

* a component detecting a fatal event (like an OOM) may occur soon, but isn't guaranteed to

occur.

This field is primarily used for grouping crashes by fatal, not fatal, and unknown,

each corresponding to the field being set to true, set to false, or not set respectively.

Defined at line 1889 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

void clear_is_fatal ()

Defined at line 1897 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

CrashReport & set_program_name (::std::string _value)
CrashReport & set_annotations (::std::vector< ::fuchsia::feedback::Annotation> _value)
CrashReport & set_attachments (::std::vector< ::fuchsia::feedback::Attachment> _value)
CrashReport & set_event_id (::std::string _value)
CrashReport & set_program_uptime (int64_t _value)
CrashReport & set_crash_signature (::std::string _value)
CrashReport & set_is_fatal (bool _value)
const ::fuchsia::feedback::SpecificCrashReport & specific_report ()

The specific report that depends on the type of crashes.

This field should be set if additional information about the crashing program needs to be

sent, e.g., a minidump.

Defined at line 1627 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

bool has_specific_report ()

Defined at line 1631 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

::fuchsia::feedback::SpecificCrashReport * mutable_specific_report ()

The specific report that depends on the type of crashes.

This field should be set if additional information about the crashing program needs to be

sent, e.g., a minidump.

Defined at line 1639 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

void clear_specific_report ()

Defined at line 1647 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

const ::std::vector< ::fuchsia::feedback::Annotation> & annotations ()

A vector of key-value string pairs representing arbitrary data that should be attached to a

crash report.

Keys should be unique as only the latest value for a given key in the vector will be

considered.

Defined at line 1660 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

bool has_annotations ()

Defined at line 1664 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

CrashReport & set_specific_report (::fuchsia::feedback::SpecificCrashReport _value)
const uint32_t & weight ()

Optional. Used to indicate that this report represents more than just this instance of the

crash. For example, this field should be set to 10 if choosing to only file 1 out of every

10 instances of this crash type.

A weight of 1 is used if the field is not set. An explicitly set value of 0 is invalid and

will be rejected.

Defined at line 1911 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

bool has_weight ()

Defined at line 1915 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

uint32_t * mutable_weight ()

Optional. Used to indicate that this report represents more than just this instance of the

crash. For example, this field should be set to 10 if choosing to only file 1 out of every

10 instances of this crash type.

A weight of 1 is used if the field is not set. An explicitly set value of 0 is invalid and

will be rejected.

Defined at line 1925 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

void clear_weight ()

Defined at line 1933 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

CrashReport & set_weight (uint32_t _value)
void ~CrashReport ()
CrashReport & operator= (CrashReport && other)
::std::unique_ptr<CrashReport> New ()
void Encode (::fidl::Encoder * _encoder, size_t _offset, std::optional< ::fidl::HandleInformation> maybe_handle_info)
void Decode (::fidl::Decoder * _decoder, CrashReport * _value, size_t _offset)
zx_status_t Clone (CrashReport * _result)