class CrashReport

Defined at line 1065 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/cpp/fidl/fuchsia.feedback/cpp/wire_types.h

Represents a crash report.

Public Methods

void CrashReport ()

Defined at line 1067 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/cpp/fidl/fuchsia.feedback/cpp/wire_types.h

void CrashReport (const CrashReport & other)

Defined at line 1068 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/cpp/fidl/fuchsia.feedback/cpp/wire_types.h

bool has_is_fatal ()
CrashReport & operator= (const CrashReport & other)

Defined at line 1069 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/cpp/fidl/fuchsia.feedback/cpp/wire_types.h

void CrashReport (CrashReport && other)

Defined at line 1070 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/cpp/fidl/fuchsia.feedback/cpp/wire_types.h

bool IsEmpty ()

Returns whether no field is set.

bool HasUnknownData ()

Returns whether the table references unknown fields.

void _CloseHandles ()
::fidl::WireTableBuilder< ::fuchsia_feedback::wire::CrashReport> Builder (::fidl::AnyArena & arena)

Return a builder that by defaults allocates of an arena.

::fidl::WireTableExternalBuilder< ::fuchsia_feedback::wire::CrashReport> ExternalBuilder (::fidl::ObjectView< ::fidl::WireTableFrame< ::fuchsia_feedback::wire::CrashReport>> frame)

Return a builder that relies on explicitly allocating |fidl::ObjectView|s.

CrashReport & operator= (CrashReport && other)

Defined at line 1071 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/cpp/fidl/fuchsia.feedback/cpp/wire_types.h

::fidl::StringView & program_name ()

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

bool has_program_name ()
::fuchsia_feedback::wire::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.

bool has_specific_report ()
::fidl::VectorView< ::fuchsia_feedback::wire::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.

bool has_annotations ()
::fidl::VectorView< ::fuchsia_feedback::wire::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.

bool has_attachments ()
::fidl::StringView & 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.

bool has_event_id ()
int64_t & program_uptime ()

How long the program was running before it crashed.

bool has_program_uptime ()
::fidl::StringView & 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.

bool has_crash_signature ()
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.

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.

bool has_weight ()
CrashReport & set_program_name (::fidl::ObjectView< ::fidl::StringView> elem)
CrashReport & set_program_name (std::nullptr_t )
CrashReport & clear_program_name ()
CrashReport & set_specific_report (::fidl::ObjectView< ::fuchsia_feedback::wire::SpecificCrashReport> elem)
CrashReport & set_specific_report (std::nullptr_t )
CrashReport & clear_specific_report ()
CrashReport & set_annotations (::fidl::ObjectView< ::fidl::VectorView< ::fuchsia_feedback::wire::Annotation>> elem)
CrashReport & set_annotations (std::nullptr_t )
CrashReport & clear_annotations ()
CrashReport & set_attachments (::fidl::ObjectView< ::fidl::VectorView< ::fuchsia_feedback::wire::Attachment>> elem)
CrashReport & set_attachments (std::nullptr_t )
CrashReport & clear_attachments ()
CrashReport & set_event_id (::fidl::ObjectView< ::fidl::StringView> elem)
CrashReport & set_event_id (std::nullptr_t )
CrashReport & clear_event_id ()
CrashReport & set_program_uptime (::fidl::ObjectView<int64_t> elem)
CrashReport & set_program_uptime (std::nullptr_t )
CrashReport & clear_program_uptime ()
CrashReport & set_crash_signature (::fidl::ObjectView< ::fidl::StringView> elem)
CrashReport & set_crash_signature (std::nullptr_t )
CrashReport & clear_crash_signature ()
CrashReport & set_is_fatal (bool elem)
CrashReport & clear_is_fatal ()
CrashReport & set_weight (uint32_t elem)
CrashReport & clear_weight ()
void CrashReport (::fidl::AnyArena & allocator)
void CrashReport (::fidl::ObjectView< ::fidl::WireTableFrame< ::fuchsia_feedback::wire::CrashReport>> && frame)

This constructor allows a user controlled allocation (not using a Arena).

It should only be used when performance is key.

As soon as the frame is given to the table, it must not be used directly or for another table.

void Allocate (::fidl::AnyArena & allocator)
void Init (::fidl::ObjectView< ::fidl::WireTableFrame< ::fuchsia_feedback::wire::CrashReport>> && frame_ptr)
void ~CrashReport ()

Defined at line 1073 of file fidling/gen/sdk/fidl/fuchsia.feedback/fuchsia.feedback/cpp/fidl/fuchsia.feedback/cpp/wire_types.h

Friends

class WireTableBaseBuilder
class WireTableBaseBuilder