Get desktop application:
View/edit binary Protocol Buffers messages
AnyValue is used to represent any type of attribute value. AnyValue may contain a primitive value such as a string or integer or it may contain an arbitrary nested object containing arrays, key-value lists and primitives.
Used in:
, ,The value is one of the listed fields. It is valid for all values to be unspecified in which case this AnyValue is considered to be "empty".
ArrayValue is a list of AnyValue messages. We need ArrayValue as a message since oneof in AnyValue does not allow repeated fields.
Used in:
Array of values. The array may be empty (contain 0 elements).
InstrumentationScope is a message representing the instrumentation scope information such as the fully qualified name and version.
Used in:
, , ,An empty instrumentation scope name means the name is unknown.
Additional attributes that describe the scope. [Optional]. Attribute keys MUST be unique (it is not allowed to have more than one attribute with the same key).
KeyValue is a key-value pair that is used to store Span attributes, Link attributes, etc.
Used in:
, , , , , , , , , , , , , ,KeyValueList is a list of KeyValue messages. We need KeyValueList as a message since `oneof` in AnyValue does not allow repeated fields. Everywhere else where we need a list of KeyValue messages (e.g. in Span) we use `repeated KeyValue` directly to avoid unnecessary extra wrapping (which slows down the protocol). The 2 approaches are semantically equivalent.
Used in:
A collection of key/value pairs of key-value pairs. The list may be empty (may contain 0 elements). The keys MUST be unique (it is not allowed to have more than one value with the same key).