Documentation

Index

Constants

View Source
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

    View Source
    const Operations = "operations"
    View Source
    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 (c *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
    	Namespace       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
    	// contains filtered or unexported fields
    }

    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 (rep *Reporter) BuildRequest(now time.Time, r metrics.Registry) (snapshot Batch, err error)

    func (*Reporter) Run

    func (rep *Reporter) Run()