Documentation ¶
Index ¶
- Constants
- Variables
- func InitFactory(factories blip.Factories)
- func List() []string
- func Make(args blip.SinkFactoryArgs) (blip.Sink, error)
- func NewLogSink(monitorId string) (logSink, error)
- func Register(name string, f blip.SinkFactory) error
- type Chronosphere
- type Datadog
- type Delta
- type PromPushgateway
- type Retry
- type RetryArgs
- type SignalFx
Constants ¶
const ( DEFAULT_RETRY_BUFFER_SIZE = 60 DEFAULT_RETRY_SEND_TIMEOUT = "5s" DEFAULT_RETRY_SEND_RETRY_WAIT = "200ms" )
const DEFAULT_CHRONOSPHERE_URL = "http://127.0.0.1:3030/openmetrics/write"
const (
MAX_PAYLOAD_SIZE int = 512000
)
Variables ¶
var Default = "log"
Default is the default sink if config.sinks is not specified.
Functions ¶
func InitFactory ¶
func NewLogSink ¶
Types ¶
type Chronosphere ¶
type Chronosphere struct {
// contains filtered or unexported fields
}
Chronosphere sends metrics to Chronosphere (https://chronosphere.io) using OpenMetrics.
func NewChronosphere ¶
func NewChronosphere(monitorId string, opts, tags map[string]string) (*Chronosphere, error)
func (*Chronosphere) Name ¶
func (s *Chronosphere) Name() string
type Datadog ¶
type Datadog struct {
// contains filtered or unexported fields
}
Datadog sends metrics to Datadog.
func NewDatadog ¶
type Delta ¶ added in v1.2.0
type Delta struct {
// contains filtered or unexported fields
}
The Delta sink calculates DELTER_COUNTER metrics from CUMULATIVE_COUNTER metrics. It acts as a transform, removing CUMULATIVE_COUNTER metrics and replacing them with DELTER_COUNTER values. This can be used to wrap sinks that expect counters to be submitted as the number/count of observations in the sampling interval rather than a cumulative total.
The Delta sink is perferable to peforming delta calculations in the wrapped sink as the presence of a Retry sink can cause metrics to be sent to wrapped sink out of order, which can cause incorrect metric values to be submitted then delta calculations are performed. The Delta sink should never be wrapped inside of a Retry sink to prevent this.
func (*Delta) Send ¶ added in v1.2.0
Calculates DELTA_COUNTER values from any CUMULATIVE_COUNTER values in the passed metircs, and then replacees the CUMULATIVE_COUNTER values with the new DELTA_COUNTER values. The updated metrics are forwarded to the next sink.
This is safe to call from multiple goroutines.
type PromPushgateway ¶ added in v1.1.0
type PromPushgateway struct {
// contains filtered or unexported fields
}
PromPushgateway implmements https://github.com/prometheus/pushgateway.
func NewPromPushgateway ¶ added in v1.1.0
func NewPromPushgateway(monitorId string, opts, tags map[string]string) (*PromPushgateway, error)
func (*PromPushgateway) Collect ¶ added in v1.1.0
func (s *PromPushgateway) Collect(ch chan<- prometheus.Metric)
func (*PromPushgateway) Describe ¶ added in v1.1.0
func (s *PromPushgateway) Describe(descs chan<- *prometheus.Desc)
func (*PromPushgateway) Name ¶ added in v1.1.0
func (s *PromPushgateway) Name() string
type Retry ¶
type Retry struct {
// contains filtered or unexported fields
}
Retry is a pseudo-sink that provides buffering, serialization, and retry for a real sink. The built-in sinks, except "log", use Retry to handle those three complexities.
Retry uses a LIFO queue (a stack) to prioritize sending the latest metrics. This means that, during a long outage of the real sink, Retry drops the oldest metrics and keeps the latest metrics, up to its buffer size, which is configurable.
Retry sends SINK_SEND_ERROR events on Send error; the real sink should not.
type SignalFx ¶
type SignalFx struct {
// contains filtered or unexported fields
}
SignalFx sends metrics to SignalFx.