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

* a key is reserved for use by Feedback:

* annotations.json

* minidump.dmp

* snapshot_uuid.txt

* snapshot.zip

* uploadFileMinidump

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

bool has_attachments ()

Defined at line 1712 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

* a key is reserved for use by Feedback:

* annotations.json

* minidump.dmp

* snapshot_uuid.txt

* snapshot.zip

* uploadFileMinidump

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

void clear_attachments ()

Defined at line 1743 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 1757 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

bool has_event_id ()

Defined at line 1761 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 1771 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

void clear_event_id ()

Defined at line 1779 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 1788 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

bool has_program_uptime ()

Defined at line 1792 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 1797 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

void clear_program_uptime ()

Defined at line 1805 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 1823 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

bool has_crash_signature ()

Defined at line 1827 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 1841 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

void clear_crash_signature ()

Defined at line 1849 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 1875 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

bool has_is_fatal ()

Defined at line 1879 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 1901 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

void clear_is_fatal ()

Defined at line 1909 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 1923 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

bool has_weight ()

Defined at line 1927 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 1937 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/hlcpp/fuchsia/feedback/cpp/fidl.h

void clear_weight ()

Defined at line 1945 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)