Documentation ¶
Index ¶
- Variables
- type FetchResult
- type MetricData
- type MetricSource
- type SourceProvider
- func (provider *SourceProvider) GetLocal() (MetricSource, error)
- func (provider *SourceProvider) GetMetricSource(isRemote bool) (MetricSource, error)
- func (provider *SourceProvider) GetRemote() (MetricSource, error)
- func (provider *SourceProvider) GetTriggerMetricSource(trigger *moira.Trigger) (MetricSource, error)
- type TriggerMetricsData
Constants ¶
This section is empty.
Variables ¶
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