 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
  
    Index ¶
- func GetKey(name string, tags map[string]string, tagsSep string, tagKVSep string) string
- func Init(metrics interface{}, factory Factory, globalTags map[string]string)
- type Counter
- type Factory
- type Gauge
- type LocalBackend
- func (b *LocalBackend) Clear()
- func (b *LocalBackend) IncCounter(name string, tags map[string]string, delta int64)
- func (b *LocalBackend) RecordTimer(name string, tags map[string]string, d time.Duration)
- func (b *LocalBackend) Snapshot() (counters, gauges map[string]int64)
- func (b *LocalBackend) Stop()
- func (b *LocalBackend) UpdateGauge(name string, tags map[string]string, value int64)
 
- type LocalFactory
- type Stopwatch
- type Timer
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetKey ¶
GetKey converts name+tags into a single string of the form "name|tag1=value1|...|tagN=valueN", where tag names are sorted alphabetically.
Types ¶
type Counter ¶
type Counter interface {
	// Inc adds the given value to the counter.
	Inc(int64)
}
    Counter tracks the number of times an event has occurred
var NullCounter Counter = nullCounter{}
    NullCounter counter that does nothing
type Factory ¶
type Factory interface {
	Counter(name string, tags map[string]string) Counter
	Timer(name string, tags map[string]string) Timer
	Gauge(name string, tags map[string]string) Gauge
	// Namespace returns a nested metrics factory.
	Namespace(name string, tags map[string]string) Factory
}
    Factory creates new metrics
var NullFactory Factory = nullFactory{}
    NullFactory is a metrics factory that returns NullCounter, NullTimer, and NullGauge.
type Gauge ¶
type Gauge interface {
	// Update the gauge to the value passed in.
	Update(int64)
}
    Gauge returns instantaneous measurements of something as an int64 value
var NullGauge Gauge = nullGauge{}
    NullGauge gauge that does nothing
type LocalBackend ¶
type LocalBackend struct {
	TagsSep  string
	TagKVSep string
	// contains filtered or unexported fields
}
    A LocalBackend is a metrics provider which aggregates data in-vm, and allows exporting snapshots to shove the data into a remote collector
func NewLocalBackend ¶
func NewLocalBackend(collectionInterval time.Duration) *LocalBackend
NewLocalBackend returns a new LocalBackend. The collectionInterval is the histogram time window for each timer.
func (*LocalBackend) IncCounter ¶
func (b *LocalBackend) IncCounter(name string, tags map[string]string, delta int64)
IncCounter increments a counter value
func (*LocalBackend) RecordTimer ¶
RecordTimer records a timing duration
func (*LocalBackend) Snapshot ¶
func (b *LocalBackend) Snapshot() (counters, gauges map[string]int64)
Snapshot captures a snapshot of the current counter and gauge values
func (*LocalBackend) Stop ¶
func (b *LocalBackend) Stop()
Stop cleanly closes the background goroutine spawned by NewLocalBackend.
type LocalFactory ¶
type LocalFactory struct {
	*LocalBackend
	// contains filtered or unexported fields
}
    LocalFactory stats factory that creates metrics that are stored locally
func NewLocalFactory ¶
func NewLocalFactory(collectionInterval time.Duration) *LocalFactory
NewLocalFactory returns a new LocalMetricsFactory
func (*LocalFactory) Counter ¶
func (l *LocalFactory) Counter(name string, tags map[string]string) Counter
Counter returns a local stats counter
func (*LocalFactory) Gauge ¶
func (l *LocalFactory) Gauge(name string, tags map[string]string) Gauge
Gauge returns a local stats gauge.
type Stopwatch ¶
type Stopwatch struct {
	// contains filtered or unexported fields
}
    A Stopwatch tracks the execution time of a specific event
func StartStopwatch ¶
StartStopwatch begins recording the executing time of an event, returning a Stopwatch that should be used to stop the recording the time for that event. Multiple events can be occurring simultaneously each represented by different active Stopwatches
func (Stopwatch) ElapsedTime ¶
ElapsedTime returns the amount of elapsed time (in time.Duration)
       Source Files
      ¶
      Source Files
      ¶
    
- counter.go
- factory.go
- gauge.go
- local.go
- metrics.go
- stopwatch.go
- timer.go