Documentation ¶
Overview ¶
Package resource provides functionality for resource, which capture identifying information about the entities for which signals are exported.
Index ¶
- type Resource
- func (r *Resource) Attributes() []kv.KeyValue
- func (r *Resource) Encoded(enc label.Encoder) string
- func (r *Resource) Equal(eq *Resource) bool
- func (r *Resource) Equivalent() label.Distinct
- func (r *Resource) Iter() label.Iterator
- func (r *Resource) LabelSet() *label.Set
- func (r *Resource) Len() int
- func (r *Resource) MarshalJSON() ([]byte, error)
- func (r *Resource) String() string
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Resource ¶
type Resource struct {
// contains filtered or unexported fields
}
Resource describes an entity about which identifying information and metadata is exposed. Resource is an immutable object, equivalent to a map from key to unique value.
Resources should be passed and stored as pointers (`*resource.Resource`). The `nil` value is equivalent to an empty Resource.
func Empty ¶
func Empty() *Resource
Empty returns an instance of Resource with no attributes. It is equivalent to a `nil` Resource.
func Merge ¶
Merge creates a new resource by combining resource a and b.
If there are common keys between resource a and b, then the value from resource a is preserved.
func New ¶
Key creates a resource from a set of attributes. If there are duplicate keys present in the list of attributes, then the last value found for the key is preserved.
func (*Resource) Attributes ¶
Attributes returns a copy of attributes from the resource in a sorted order. To avoid allocating a new slice, use an iterator.
func (*Resource) Encoded ¶
Encoded returns an encoded representation of the resource by applying a label encoder. The result is cached by the underlying label set.
func (*Resource) Equivalent ¶
Equivalent returns an object that can be compared for equality between two resources. This value is suitable for use as a key in a map.
func (*Resource) Iter ¶
Iter returns an interator of the Resource attributes. This is ideal to use if you do not want a copy of the attributes.
func (*Resource) MarshalJSON ¶
MarshalJSON encodes labels as a JSON list of { "Key": "...", "Value": ... } pairs in order sorted by key.