metricSource

package
v2.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 12, 2019 License: MIT Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrMetricSourceIsNotConfigured = fmt.Errorf("metric source is not configured")

ErrMetricSourceIsNotConfigured is used then metric source return false on IsConfigured method call with nil error

Functions

This section is empty.

Types

type FetchResult

type FetchResult interface {
	GetMetricsData() []*MetricData
	GetPatterns() ([]string, error)
	GetPatternMetrics() ([]string, error)
}

FetchResult implements moira metric sources fetching result format

type MetricData

type MetricData struct {
	Name      string
	StartTime int64
	StopTime  int64
	StepTime  int64
	Values    []float64
	Wildcard  bool
}

MetricData is moira implementation of target evaluation result

func MakeEmptyMetricData

func MakeEmptyMetricData(name string, step, start, stop int64) *MetricData

MakeEmptyMetricData create MetricData with given interval and retention step with all empty metric points

func MakeMetricData

func MakeMetricData(name string, values []float64, step, start int64) *MetricData

MakeMetricData creates new metrics data with given metric timeseries

func (*MetricData) GetTimestampValue

func (metricData *MetricData) GetTimestampValue(valueTimestamp int64) float64

GetTimestampValue gets value of given timestamp index, if value is Nil, then return NaN

func (*MetricData) String

func (metricData *MetricData) String() string

type MetricSource

type MetricSource interface {
	Fetch(target string, from int64, until int64, allowRealTimeAlerting bool) (FetchResult, error)
	IsConfigured() (bool, error)
}

MetricSource implements graphite metrics source abstraction

type SourceProvider

type SourceProvider struct {
	// contains filtered or unexported fields
}

SourceProvider is a provider for all known metrics sources

func CreateMetricSourceProvider

func CreateMetricSourceProvider(local MetricSource, remote MetricSource) *SourceProvider

CreateMetricSourceProvider just creates SourceProvider with all known metrics sources

func (*SourceProvider) GetLocal

func (provider *SourceProvider) GetLocal() (MetricSource, error)

GetLocal gets local metric source. If it not configured returns not empty error

func (*SourceProvider) GetMetricSource

func (provider *SourceProvider) GetMetricSource(isRemote bool) (MetricSource, error)

GetMetricSource return metric source depending on trigger flag: is remote trigger or not. GetLocal if not.

func (*SourceProvider) GetRemote

func (provider *SourceProvider) GetRemote() (MetricSource, error)

GetRemote gets remote metric source. If it not configured returns not empty error

func (*SourceProvider) GetTriggerMetricSource

func (provider *SourceProvider) GetTriggerMetricSource(trigger *moira.Trigger) (MetricSource, error)

GetTriggerMetricSource get metrics source by given trigger. If it not configured returns not empty error

type TriggerMetricsData

type TriggerMetricsData struct {
	Main       []*MetricData
	Additional []*MetricData
}

TriggerMetricsData represent collection of Main target timeseries and collection of additions targets timeseries

func MakeEmptyTriggerMetricsData

func MakeEmptyTriggerMetricsData() *TriggerMetricsData

MakeEmptyTriggerMetricsData just creates TriggerMetricsData with initialized empty fields

func MakeTriggerMetricsData

func MakeTriggerMetricsData(main []*MetricData, additional []*MetricData) *TriggerMetricsData

MakeTriggerMetricsData just creates TriggerMetricsData with given main and additional metrics data

func (*TriggerMetricsData) GetAdditionalTargetName

func (*TriggerMetricsData) GetAdditionalTargetName(targetIndex int) string

GetAdditionalTargetName gets triggers additional target name

func (*TriggerMetricsData) GetMainTargetName

func (*TriggerMetricsData) GetMainTargetName() string

GetMainTargetName just gets triggers main targets name (always is 't1')

func (*TriggerMetricsData) HasOnlyWildcards

func (triggerTimeSeries *TriggerMetricsData) HasOnlyWildcards() bool

HasOnlyWildcards checks given targetTimeSeries for only wildcards

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL