Google Celebrates Black History Month. See how.

fuchsia.tracing

Added: 11

STRUCTS

KnownCategory

Defined in fuchsia.tracing/tracing.fidl

The value returned by GetKnownCategories.

FieldTypeDescriptionDefault
name string[100] No default
description string[400] No default

ENUMS

BufferDisposition strict

Type: uint8

Defined in fuchsia.tracing/tracing.fidl

Choices for clearing/retaining trace buffer contents at Start. A brief summary of buffer contents: The trace buffer is divided into two main pieces: durable and non-durable. The durable portion contains things like the string and thread data for their respective references (trace_encoded_string_ref_t and trace_encoded_thread_ref_t). The non-durable portion contains the rest of the trace data like events); this is the portion that, for example, is discarded in circular buffering mode when the (non-durable) buffer fills.

NameValueDescription
1

Clear the entire buffer, including durable buffer contents. N.B. If this is done mid-session, then string and thread references from prior to this point will become invalid - the underlying data will be gone. To prevent this save buffer contents before clearing.

This is typically used when buffer contents were saved after the preceding Stop.

2

Clear the non-durable portion of the buffer, retaining the durable portion.

This is typically used when buffer contents were not saved after the preceding Stop and the current contents are to be discarded.

3

Retain buffer contents. New trace data is added where the previous trace run left off.

This is typically used when buffer contents were not saved after the preceding Stop and the current contents are to be retained.

BufferingMode strict

Type: uint8

Defined in fuchsia.tracing/tracing.fidl

The trace buffering mode.

NameValueDescription
1

In oneshot mode there is only one buffer that is not reused. When the buffer fills the provider just keeps dropping records, keeping a count, and then when tracing stops the header is updated to record final state.

2

In circular mode, the buffer is continually written to until tracing stops. When the buffer fills older records are discarded as needed.

3

In streaming mode, the buffer is effectively split into two pieces. When one half of the buffer fills the provider notifies the trace manager via the provided fifo, and then starts filling the other half of the buffer. When the buffer is saved, the manager responds via the provided fifo. If trace manager hasn't saved the buffer in time, and the other buffer fills, then the provider is required to drop records until space becomes available.

CONSTANTS

NameValueTypeDescription
MAX_CATEGORY_DESCRIPTION_LENGTH 400 uint32

The maximum length of a category description.

MAX_CATEGORY_NAME_LENGTH 100 uint32

The maximum length of a category name.

MAX_NUM_ENABLED_CATEGORIES 5000 uint32

The maximum number of categories supported.

MAX_NUM_KNOWN_CATEGORIES 5000 uint32

The maximum number of categories supported.

MAX_PROVIDER_NAME_LENGTH 100 uint32

The maximum length of a provider's name.