1
0
mirror of https://github.com/go-kratos/kratos.git synced 2025-07-01 00:55:31 +02:00
Files
kratos/contrib/metrics/datadog/options.go

34 lines
603 B
Go
Raw Normal View History

package datadog
import "github.com/DataDog/datadog-go/statsd"
// Option is datadog option.
type Option func(*options)
type options struct {
sampleRate float64
labels []string
client *statsd.Client
}
// WithSampleRate with sample rate option.
func WithSampleRate(rate float64) Option {
return func(o *options) {
o.sampleRate = rate
}
}
// WithLabels with labels option.
func WithLabels(lvs ...string) Option {
return func(o *options) {
o.labels = lvs
}
}
// WithClient with client option.
func WithClient(c *statsd.Client) Option {
return func(o *options) {
o.client = c
}
}