Documentation

Overview

    Package store contains code for storing and retrieving metrics.

    Index

    Constants

    This section is empty.

    Variables

    This section is empty.

    Functions

    func IsNilStore

    func IsNilStore(s Store) bool

      IsNilStore returns true if given Store is in fact nil-store.

      Types

      type Fake

      type Fake struct {
      	Cells []types.Cell
      	DT    types.Target
      }

        Fake is a fake Store.

        func (*Fake) DefaultTarget

        func (s *Fake) DefaultTarget() types.Target

          DefaultTarget returns DT.

          func (*Fake) Del

          func (s *Fake) Del(context.Context, types.Metric, []interface{})

            Del does nothing.

            func (*Fake) Get

            func (s *Fake) Get(context.Context, types.Metric, time.Time, []interface{}) interface{}

              Get does nothing.

              func (*Fake) GetAll

              func (s *Fake) GetAll(context.Context) []types.Cell

                GetAll returns the pre-set list of cells.

                func (*Fake) Incr

                func (s *Fake) Incr(context.Context, types.Metric, time.Time, []interface{}, interface{})

                  Incr does nothing.

                  func (*Fake) Reset

                  func (s *Fake) Reset(context.Context, types.Metric)

                    Reset does nothing.

                    func (*Fake) Set

                    func (s *Fake) Set(context.Context, types.Metric, time.Time, []interface{}, interface{})

                      Set does nothing.

                      func (*Fake) SetDefaultTarget

                      func (s *Fake) SetDefaultTarget(types.Target)

                        SetDefaultTarget does nothing.

                        type Store

                        type Store interface {
                        	DefaultTarget() types.Target
                        	SetDefaultTarget(t types.Target)
                        
                        	Get(c context.Context, m types.Metric, resetTime time.Time, fieldVals []interface{}) interface{}
                        	Set(c context.Context, m types.Metric, resetTime time.Time, fieldVals []interface{}, value interface{})
                        	Del(c context.Context, m types.Metric, fieldVals []interface{})
                        	Incr(c context.Context, m types.Metric, resetTime time.Time, fieldVals []interface{}, delta interface{})
                        
                        	GetAll(c context.Context) []types.Cell
                        
                        	Reset(c context.Context, m types.Metric)
                        }

                          A Store is responsible for handling all metric data.

                          func NewInMemory

                          func NewInMemory(defaultTarget types.Target) Store

                            NewInMemory creates a new metric store that holds metric data in this process' memory.

                            func NewNilStore

                            func NewNilStore() Store

                              NewNilStore creates a metric store that completely ignores all metrics.

                              It's setters are noop, and getters return nil.

                              Directories

                              Path Synopsis
                              Package storetest is imported exclusively by tests for Store implementations.
                              Package storetest is imported exclusively by tests for Store implementations.