Documentation ¶
Index ¶
- type Aggregation
- type DataPoint
- type Exemplar
- type ExponentialBucket
- type ExponentialHistogram
- type ExponentialHistogramDataPoint
- type Extrema
- type Gauge
- type Histogram
- type HistogramDataPoint
- type Metrics
- type QuantileValue
- type ResourceMetrics
- type ScopeMetrics
- type Sum
- type Summary
- type SummaryDataPoint
- type Temporality
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Aggregation ¶
type Aggregation interface {
// contains filtered or unexported methods
}
Aggregation is the store of data reported by an Instrument. It will be one of: Gauge, Sum, Histogram.
type DataPoint ¶
type DataPoint[N int64 | float64] struct { // Attributes is the set of key value pairs that uniquely identify the // timeseries. Attributes attribute.Set // StartTime is when the timeseries was started. (optional) StartTime time.Time `json:",omitempty"` // Time is the time when the timeseries was recorded. (optional) Time time.Time `json:",omitempty"` // Value is the value of this data point. Value N // Exemplars is the sampled Exemplars collected during the timeseries. Exemplars []Exemplar[N] `json:",omitempty"` }
DataPoint is a single data point in a timeseries.
type Exemplar ¶ added in v0.38.0
type Exemplar[N int64 | float64] struct { // FilteredAttributes are the attributes recorded with the measurement but // filtered out of the timeseries' aggregated data. FilteredAttributes []attribute.KeyValue // Time is the time when the measurement was recorded. Time time.Time // Value is the measured value. Value N // SpanID is the ID of the span that was active during the measurement. If // no span was active or the span was not sampled this will be empty. SpanID []byte `json:",omitempty"` // TraceID is the ID of the trace the active span belonged to during the // measurement. If no span was active or the span was not sampled this will // be empty. TraceID []byte `json:",omitempty"` }
Exemplar is a measurement sampled from a timeseries providing a typical example.
type ExponentialBucket ¶ added in v0.40.0
type ExponentialBucket struct { // Offset is the bucket index of the first entry in the Counts slice. Offset int32 // Counts is an slice where Counts[i] carries the count of the bucket at // index (Offset+i). Counts[i] is the count of values greater than // base^(Offset+i) and less than or equal to base^(Offset+i+1). Counts []uint64 }
ExponentialBucket are a set of bucket counts, encoded in a contiguous array of counts.
type ExponentialHistogram ¶ added in v0.40.0
type ExponentialHistogram[N int64 | float64] struct { // DataPoints are the individual aggregated measurements with unique // attributes. DataPoints []ExponentialHistogramDataPoint[N] // Temporality describes if the aggregation is reported as the change from the // last report time, or the cumulative changes since a fixed start time. Temporality Temporality }
ExponentialHistogram represents the histogram of all measurements of values from an instrument.
type ExponentialHistogramDataPoint ¶ added in v0.40.0
type ExponentialHistogramDataPoint[N int64 | float64] struct { // Attributes is the set of key value pairs that uniquely identify the // timeseries. Attributes attribute.Set // StartTime is when the timeseries was started. StartTime time.Time // Time is the time when the timeseries was recorded. Time time.Time // Count is the number of updates this histogram has been calculated with. Count uint64 // Min is the minimum value recorded. (optional) Min Extrema[N] // Max is the maximum value recorded. (optional) Max Extrema[N] // Sum is the sum of the values recorded. Sum N // Scale describes the resolution of the histogram. Boundaries are // located at powers of the base, where: // // base = 2 ^ (2 ^ -Scale) Scale int32 // ZeroCount is the number of values whose absolute value // is less than or equal to [ZeroThreshold]. // When ZeroThreshold is 0, this is the number of values that // cannot be expressed using the standard exponential formula // as well as values that have been rounded to zero. // ZeroCount represents the special zero count bucket. ZeroCount uint64 // PositiveBucket is range of positive value bucket counts. PositiveBucket ExponentialBucket // NegativeBucket is range of negative value bucket counts. NegativeBucket ExponentialBucket // ZeroThreshold is the width of the zero region. Where the zero region is // defined as the closed interval [-ZeroThreshold, ZeroThreshold]. ZeroThreshold float64 // Exemplars is the sampled Exemplars collected during the timeseries. Exemplars []Exemplar[N] `json:",omitempty"` }
ExponentialHistogramDataPoint is a single exponential histogram data point in a timeseries.
type Extrema ¶ added in v0.35.0
Extrema is the minimum or maximum value of a dataset.
func NewExtrema ¶ added in v0.35.0
NewExtrema returns an Extrema set to v.
func (*Extrema[N]) MarshalJSON ¶ added in v1.23.0
MarshalJSON converts the Extrema value to JSON number.
func (Extrema[N]) MarshalText ¶ added in v1.23.0
MarshalText converts the Extrema value to text.
type Gauge ¶
type Gauge[N int64 | float64] struct { // DataPoints are the individual aggregated measurements with unique // Attributes. DataPoints []DataPoint[N] }
Gauge represents a measurement of the current value of an instrument.
type Histogram ¶
type Histogram[N int64 | float64] struct { // DataPoints are the individual aggregated measurements with unique // Attributes. DataPoints []HistogramDataPoint[N] // Temporality describes if the aggregation is reported as the change from the // last report time, or the cumulative changes since a fixed start time. Temporality Temporality }
Histogram represents the histogram of all measurements of values from an instrument.
type HistogramDataPoint ¶
type HistogramDataPoint[N int64 | float64] struct { // Attributes is the set of key value pairs that uniquely identify the // timeseries. Attributes attribute.Set // StartTime is when the timeseries was started. StartTime time.Time // Time is the time when the timeseries was recorded. Time time.Time // Count is the number of updates this histogram has been calculated with. Count uint64 // Bounds are the upper bounds of the buckets of the histogram. Because the // last boundary is +infinity this one is implied. Bounds []float64 // BucketCounts is the count of each of the buckets. BucketCounts []uint64 // Min is the minimum value recorded. (optional) Min Extrema[N] // Max is the maximum value recorded. (optional) Max Extrema[N] // Sum is the sum of the values recorded. Sum N // Exemplars is the sampled Exemplars collected during the timeseries. Exemplars []Exemplar[N] `json:",omitempty"` }
HistogramDataPoint is a single histogram data point in a timeseries.
type Metrics ¶
type Metrics struct { // Name is the name of the Instrument that created this data. Name string // Description is the description of the Instrument, which can be used in documentation. Description string // Unit is the unit in which the Instrument reports. Unit string // Data is the aggregated data from an Instrument. Data Aggregation }
Metrics is a collection of one or more aggregated timeseries from an Instrument.
type QuantileValue ¶ added in v1.20.0
type QuantileValue struct { // Quantile is the quantile of this value. // // Must be in the interval [0.0, 1.0]. Quantile float64 // Value is the value at the given quantile of a summary. // // Quantile values must NOT be negative. Value float64 }
QuantileValue is the value at a given quantile of a summary.
type ResourceMetrics ¶
type ResourceMetrics struct { // Resource represents the entity that collected the metrics. Resource *resource.Resource // ScopeMetrics are the collection of metrics with unique Scopes. ScopeMetrics []ScopeMetrics }
ResourceMetrics is a collection of ScopeMetrics and the associated Resource that created them.
type ScopeMetrics ¶
type ScopeMetrics struct { // Scope is the Scope that the Meter was created with. Scope instrumentation.Scope // Metrics are a list of aggregations created by the Meter. Metrics []Metrics }
ScopeMetrics is a collection of Metrics Produces by a Meter.
type Sum ¶
type Sum[N int64 | float64] struct { // DataPoints are the individual aggregated measurements with unique // Attributes. DataPoints []DataPoint[N] // Temporality describes if the aggregation is reported as the change from the // last report time, or the cumulative changes since a fixed start time. Temporality Temporality // IsMonotonic represents if this aggregation only increases or decreases. IsMonotonic bool }
Sum represents the sum of all measurements of values from an instrument.
type Summary ¶ added in v1.20.0
type Summary struct { // DataPoints are the individual aggregated measurements with unique // attributes. DataPoints []SummaryDataPoint }
Summary metric data are used to convey quantile summaries, a Prometheus (see: https://prometheus.io/docs/concepts/metric_types/#summary) data type.
These data points cannot always be merged in a meaningful way. The Summary type is only used by bridges from other metrics libraries, and cannot be produced using OpenTelemetry instrumentation.
type SummaryDataPoint ¶ added in v1.20.0
type SummaryDataPoint struct { // Attributes is the set of key value pairs that uniquely identify the // timeseries. Attributes attribute.Set // StartTime is when the timeseries was started. StartTime time.Time // Time is the time when the timeseries was recorded. Time time.Time // Count is the number of updates this summary has been calculated with. Count uint64 // Sum is the sum of the values recorded. Sum float64 // (Optional) list of values at different quantiles of the distribution calculated // from the current snapshot. The quantiles must be strictly increasing. QuantileValues []QuantileValue }
SummaryDataPoint is a single data point in a timeseries that describes the time-varying values of a Summary metric.
type Temporality ¶
type Temporality uint8
Temporality defines the window that an aggregation was calculated over.
const ( // CumulativeTemporality defines a measurement interval that continues to // expand forward in time from a starting point. New measurements are // added to all previous measurements since a start time. CumulativeTemporality Temporality // DeltaTemporality defines a measurement interval that resets each cycle. // Measurements from one cycle are recorded independently, measurements // from other cycles do not affect them. DeltaTemporality )
func (Temporality) MarshalText ¶
func (t Temporality) MarshalText() ([]byte, error)
MarshalText returns the byte encoded of t.
func (Temporality) String ¶
func (i Temporality) String() string
Directories ¶
Path | Synopsis |
---|---|
Package metricdatatest provides testing functionality for use with the metricdata package.
|
Package metricdatatest provides testing functionality for use with the metricdata package. |