// Gauge implements xstats.Sender interface
493097
func (s sender) Gauge(stat string, value float64, tags ...string) {
	s.vars.Set(stat, float(value))
}
651435
func (sb *StatsdBuffer) Gauge(stat string, value int64) error {
	sb.eventChannel <- &event.Gauge{Name: stat, Value: value}
	return nil
}
944715
func (p *statsdProvider) NewGauge(name string) metrics.Gauge {
	return p.s.NewGauge(name)
}
980482
func (s *StdoutClient) FGauge(stat string, value float64) error {
	if value < 0 {
		err := s.send(stat, "%d|g", 0)
		if nil != err {
			return err
		}
		return s.send(stat, "%g|g", value)
	}
	return s.send(stat, "%g|g", value)
}
193801
func (mr *MockScopeMockRecorder) Gauge(arg0, arg1 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Gauge", reflect.TypeOf((*MockScope)(nil).Gauge), arg0, arg1)
}
279834
func (g *Gauge) Set(value float64) {
	g.gv.With(makeLabels(g.lvs...)).Set(value)
}
1001552
func (g *Gauge) Add(delta float64) {
	g.add(g.name, g.lvs, delta)
}
288404
func (e FGauge) Stats() []string {
	if e.Value < 0 {
		// because a leading '+' or '-' in the value of a gauge denotes a delta, to send
		// a negative gauge value we first set the gauge absolutely to 0, then send the
		// negative value as a delta from 0 (that's just how the spec works :-)
		return []string{
			fmt.Sprintf("%s:%d|g", e.Name, 0),
			fmt.Sprintf("%s:%g|g", e.Name, e.Value),
		}
	}
	return []string{fmt.Sprintf("%s:%g|g", e.Name, e.Value)}
}
790653
func (g *Gauge) Update(value int64) {
	g.gauge.Update(float64(value))
}
163488
func (g *Gauge) With(labelValues ...string) metrics.Gauge {
	g.influx.mtx.RLock()
	node := g.influx.gauges[g.g.Name]
	g.influx.mtx.RUnlock()

	ga := &Gauge{g: g.g.With(labelValues...).(*generic.Gauge), influx: g.influx}
	return node.addGauge(ga, ga.g.LabelValues())
}
662210
func Gauge(metricName string, dimensions map[string]string, val int64) *datapoint.Datapoint {
	return datapoint.New(metricName, dimensions, datapoint.NewIntValue(val), datapoint.Gauge, time.Time{})
}
928340
func (e GaugeDelta) Stats() []string {
	return []string{fmt.Sprintf("%s:%+d|g", e.Name, e.Value)}
}
259927
func (p *influxProvider) NewGauge(name string) metrics.Gauge {
	return p.in.NewGauge(name)
}
619531
func (s *sender) Gauge(stat string, value float64, tags ...string) {
	s.c <- fmt.Sprintf("%s:%f|g%s\n", stat, value, t(tags))
}
537259
func (s *sender) Gauge(stat string, value float64, tags ...string) {
	s.RLock()
	m, ok := s.gauges[stat]
	s.RUnlock()
	keys, values := splitTags(tags)
	if !ok {
		s.Lock()
		if m, ok = s.gauges[stat]; !ok {
			m = prometheus.NewGaugeVec(
				prometheus.GaugeOpts{Name: stat, Help: stat},
				keys)
			prometheus.MustRegister(m)
			s.gauges[stat] = m
		}
		s.Unlock()
	}
	m.WithLabelValues(values...).Set(value)
}
474192
func (xs *xstats) Gauge(stat string, value float64, tags ...string) {
	if xs.s == nil {
		return
	}
	tags = append(tags, xs.tags...)
	xs.s.Gauge(xs.prefix+stat, value, tags...)
}
227787
func (graphite *Graphite) SendMetric(metric Metric) error {
	metrics := make([]Metric, 1)
	metrics[0] = metric

	return graphite.sendMetrics(metrics)
}