Documentation

Index

Constants

const (
	// display attributes
	Color             = "color"
	DisplayMax        = "display_max"
	DisplayMin        = "display_min"
	DisplayUnitsLong  = "display_units_long"
	DisplayUnitsShort = "display_units_short"
	DisplayStacked    = "display_stacked"
	DisplayTransform  = "display_transform"
	// special gauge display attributes
	SummarizeFunction = "summarize_function"
	Aggregate         = "aggregate"

	// metric keys
	Name        = "name"
	Period      = "period"
	Description = "description"
	DisplayName = "display_name"
	Attributes  = "attributes"

	// measurement keys
	MeasureTime = "measure_time"
	Source      = "source"
	Value       = "value"

	// special gauge keys
	Count      = "count"
	Sum        = "sum"
	Max        = "max"
	Min        = "min"
	SumSquares = "sum_squares"

	// batch keys
	Counters = "counters"
	Gauges   = "gauges"

	MetricsPostUrl = "https://metrics-api.librato.com/v1/metrics"
)

property strings


const Operations = "operations"

const OperationsShort = "ops"

Variables

This section is empty.

Functions

func Librato

func Librato(r metrics.Registry, d time.Duration, e string, t string, s string, p []float64, u time.Duration)

Types

type Batch

type Batch struct {
	Gauges      []Measurement `json:"gauges,omitempty"`
	Counters    []Measurement `json:"counters,omitempty"`
	MeasureTime int64         `json:"measure_time"`
	Source      string        `json:"source"`
}

type LibratoClient

type LibratoClient struct {
	Email, Token string
}

func (*LibratoClient) PostMetrics

func (self *LibratoClient) PostMetrics(batch Batch) (err error)

type Measurement

type Measurement map[string]interface{}

type Metric

type Metric map[string]interface{}

type Reporter

type Reporter struct {
	Email, Token    string
	Source          string
	Interval        time.Duration
	Registry        metrics.Registry
	Percentiles     []float64              // percentiles to report on histogram metrics
	TimerAttributes map[string]interface{} // units in which timers will be displayed
}

func NewReporter

func NewReporter(r metrics.Registry, d time.Duration, e string, t string, s string, p []float64, u time.Duration) *Reporter

func (*Reporter) BuildRequest

func (self *Reporter) BuildRequest(now time.Time, r metrics.Registry) (snapshot Batch, err error)

func (*Reporter) Run

func (self *Reporter) Run()