Documentation ¶
Index ¶
- type EntityIDGeneratorFunc
- type EntityTypeGeneratorFunc
- type FetchFunc
- type FetchedValue
- type FetchedValues
- type GuessFunc
- type MetricSetManipulator
- type PopulateFunc
- type RawGroups
- type RawGroupsMultipleMetrics
- type RawMetrics
- type RawValue
- type Spec
- type SpecGroup
- type SpecGroups
- type TransformFunc
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type EntityIDGeneratorFunc ¶
EntityIDGeneratorFunc generates an entity ID.
type EntityTypeGeneratorFunc ¶
type EntityTypeGeneratorFunc func(groupLabel, rawEntityID string, g RawGroups, prefix string) (string, error)
EntityTypeGeneratorFunc generates an entity type.
type FetchFunc ¶
type FetchFunc func(groupLabel, entityID string, groups RawGroups) (FetchedValue, error)
FetchFunc fetches values or values from raw metric groups. Return FetchedValues if you want to prototype metrics.
func Transform ¶
func Transform(fetchFunc FetchFunc, transformFunc TransformFunc) FetchFunc
Transform return a new FetchFunc that applies the transformFunc to the result of the fetchFunc passed as argument
type FetchedValue ¶
type FetchedValue interface{}
FetchedValue is just any value from an already fetched metric.
type FetchedValues ¶
type FetchedValues map[string]FetchedValue
FetchedValues is a map of FetchedValue indexed by metric name.
type MetricSetManipulator ¶
MetricSetManipulator manipulates the MetricSet for a given entity and clusterName
type PopulateFunc ¶
type PopulateFunc func(RawGroups, SpecGroups) (bool, []error)
PopulateFunc populates raw metric groups using your specs
func IntegrationProtocol2PopulateFunc ¶
func IntegrationProtocol2PopulateFunc( i *sdk.IntegrationProtocol2, clusterName string, k8sVersion *version.Info, msTypeGuesser GuessFunc, msManipulators ...MetricSetManipulator, ) PopulateFunc
IntegrationProtocol2PopulateFunc populates an integration protocol v2 with the given metrics and definition.
type RawGroups ¶
type RawGroups map[string]map[string]RawMetrics
RawGroups are grouped raw metrics. map[entityType][entityName][metricName]metricValue as interface{}
type RawGroupsMultipleMetrics ¶
type RawGroupsMultipleMetrics RawGroups
type RawMetrics ¶
RawMetrics is a map of RawValue indexed by metric name.
type Spec ¶
type Spec struct { Name string ValueFunc FetchFunc Type sdk.SourceType Optional bool }
Spec is a metric specification.
type SpecGroup ¶
type SpecGroup struct { IDGenerator EntityIDGeneratorFunc TypeGenerator EntityTypeGeneratorFunc Specs []Spec }
SpecGroup represents a bunch of specs that share logic.
type SpecGroups ¶
SpecGroups is a map of groups indexed by group name.
type TransformFunc ¶
type TransformFunc func(FetchedValue) (FetchedValue, error)
TransformFunc transforms a FetchedValue.