Documentation ¶
Index ¶
- type MetricsStore
- func (s *MetricsStore) Add(obj interface{}) error
- func (s *MetricsStore) Delete(obj interface{}) error
- func (s *MetricsStore) Get(_ interface{}) (item interface{}, exists bool, err error)
- func (s *MetricsStore) GetByKey(_ string) (item interface{}, exists bool, err error)
- func (s *MetricsStore) List() []interface{}
- func (s *MetricsStore) ListKeys() []string
- func (s *MetricsStore) Replace(list []interface{}, _ string) error
- func (s *MetricsStore) Resync() error
- func (s *MetricsStore) Update(obj interface{}) error
- type MetricsWriter
- type MetricsWriterList
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type MetricsStore ¶
type MetricsStore struct {
// contains filtered or unexported fields
}
MetricsStore implements the k8s.io/client-go/tools/cache.Store interface. Instead of storing entire Kubernetes objects, it stores metrics generated based on those objects.
func NewMetricsStore ¶
func NewMetricsStore(headers []string, generateFunc func(interface{}) []metric.FamilyInterface) *MetricsStore
NewMetricsStore returns a new MetricsStore
func (*MetricsStore) Add ¶
func (s *MetricsStore) Add(obj interface{}) error
Add inserts adds to the MetricsStore by calling the metrics generator functions and adding the generated metrics to the metrics map that underlies the MetricStore.
func (*MetricsStore) Delete ¶
func (s *MetricsStore) Delete(obj interface{}) error
Delete deletes an existing entry in the MetricsStore.
func (*MetricsStore) Get ¶
func (s *MetricsStore) Get(_ interface{}) (item interface{}, exists bool, err error)
Get implements the Get method of the store interface.
func (*MetricsStore) GetByKey ¶
func (s *MetricsStore) GetByKey(_ string) (item interface{}, exists bool, err error)
GetByKey implements the GetByKey method of the store interface.
func (*MetricsStore) List ¶
func (s *MetricsStore) List() []interface{}
List implements the List method of the store interface.
func (*MetricsStore) ListKeys ¶
func (s *MetricsStore) ListKeys() []string
ListKeys implements the ListKeys method of the store interface.
func (*MetricsStore) Replace ¶
func (s *MetricsStore) Replace(list []interface{}, _ string) error
Replace will delete the contents of the store, using instead the given list.
func (*MetricsStore) Resync ¶
func (s *MetricsStore) Resync() error
Resync implements the Resync method of the store interface.
func (*MetricsStore) Update ¶
func (s *MetricsStore) Update(obj interface{}) error
Update updates the existing entry in the MetricsStore.
type MetricsWriter ¶ added in v2.1.1
type MetricsWriter struct {
// contains filtered or unexported fields
}
MetricsWriter is a struct that holds multiple MetricsStore(s) and implements the MetricsWriter interface. It should be used with stores which have the same metric headers.
MetricsWriter writes out metrics from the underlying stores so that metrics with the same name coming from different stores end up grouped together. It also ensures that the metric headers are only written out once.
func NewMetricsWriter ¶ added in v2.8.0
func NewMetricsWriter(stores ...*MetricsStore) *MetricsWriter
NewMetricsWriter creates a new MetricsWriter.
type MetricsWriterList ¶ added in v2.8.0
type MetricsWriterList []*MetricsWriter
MetricsWriterList represent a list of MetricsWriter
func SanitizeHeaders ¶ added in v2.9.0
func SanitizeHeaders(contentType string, writers MetricsWriterList) MetricsWriterList
SanitizeHeaders sanitizes the headers of the given MetricsWriterList.