Documentation ¶
Overview ¶
package lsmintervalprocessor implements a processor which aggregates metrics over time, backed by db for persistence, and periodically exports the latest values.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewFactory ¶
NewFactory returns a new factory for the Metrics Generation processor.
Types ¶
type Config ¶
type Config struct { // Directory is the data directory used by the database to store files. // If the directory is empty in-memory storage is used. Directory string `mapstructure:"directory"` // PassThrough is a configuration that determines whether summary // metrics should be passed through as they are or aggregated. This // is because they lead to lossy aggregations. PassThrough PassThrough `mapstructure:"pass_through"` // Intervals is a list of interval configuration that the processor // will aggregate over. The interval duration must be in increasing // order and must be a factor of the smallest interval duration. // TODO (lahsivjar): Make specifying interval easier. We can just // optimize the timer to run on differnt times and remove any // restriction on different interval configuration. Intervals []IntervalConfig `mapstructure:"intervals"` }
type IntervalConfig ¶
type IntervalConfig struct { Duration time.Duration `mapstructure:"duration"` // Statements are a list of OTTL statements to be executed on the // metrics produced for a given interval. The list of available // OTTL paths for datapoints can be checked at: // https://pkg.go.dev/github.com/open-telemetry/opentelemetry-collector-contrib/pkg/ottl/contexts/ottldatapoint#section-readme // The list of available OTTL editors can be checked at: // https://pkg.go.dev/github.com/open-telemetry/opentelemetry-collector-contrib/pkg/ottl/ottlfuncs#section-readme Statements []string `mapstructure:"statements"` }
type PassThrough ¶
type PassThrough struct { // Summary is a flag that determines whether summary metrics should // be passed through as they are or aggregated. Since summaries don't // have an associated temporality, we assume that summaries are // always cumulative. Summary bool `mapstructure:"summary"` }
PassThrough determines whether metrics should be passed through as they are or aggregated.
type Processor ¶
type Processor struct {
// contains filtered or unexported fields
}
func (*Processor) Capabilities ¶
func (p *Processor) Capabilities() consumer.Capabilities
func (*Processor) ConsumeMetrics ¶
Directories ¶
Path | Synopsis |
---|---|
internal
|
|
data/expo
Package expo implements various operations on exponential histograms and their bucket counts
|
Package expo implements various operations on exponential histograms and their bucket counts |
identity
identity types for metrics and sample streams.
|
identity types for metrics and sample streams. |
Click to show internal directories.
Click to hide internal directories.