Documentation ¶
Index ¶
- Constants
- func Create(server *veneur.Server, name string, logger *logrus.Entry, config veneur.Config, ...) (sinks.MetricSink, error)
- func MigrateConfig(conf *veneur.Config) error
- func ParseConfig(name string, config interface{}) (veneur.MetricSinkConfig, error)
- type DPClient
- type SignalFxSink
- func (sfx *SignalFxSink) Flush(ctx context.Context, interMetrics []samplers.InterMetric) error
- func (sfx *SignalFxSink) FlushOtherSamples(ctx context.Context, samples []ssf.SSFSample)
- func (sfx *SignalFxSink) Name() string
- func (sfx *SignalFxSink) SetExcludedTags(excludes []string)
- func (sfx *SignalFxSink) Start(traceClient *trace.Client) error
- type SignalFxSinkConfig
Constants ¶
const EventDescriptionMaxLength = 256
const EventNameMaxLength = 256
Variables ¶
This section is empty.
Functions ¶
func Create ¶ added in v14.2.0
func Create( server *veneur.Server, name string, logger *logrus.Entry, config veneur.Config, sinkConfig veneur.MetricSinkConfig, ) (sinks.MetricSink, error)
Create creates a new SignalFx sink for metrics. This function should match the signature of a value in veneur.MetricSinkTypes, and is intended to be passed into veneur.NewFromConfig to be called based on the provided configuration.
func MigrateConfig ¶ added in v14.2.0
TODO(arnavdugar): Remove this once the old configuration format has been removed.
func ParseConfig ¶ added in v14.2.0
func ParseConfig( name string, config interface{}, ) (veneur.MetricSinkConfig, error)
ParseConfig decodes the map config for a SignalFx sink into a SignalFxSinkConfig struct.
Types ¶
type DPClient ¶
A DPClient is a client that can be used to submit signalfx data points to an upstream consumer. It wraps the dpsink.Sink interface.
type SignalFxSink ¶
type SignalFxSink struct {
// contains filtered or unexported fields
}
SignalFxSink is a MetricsSink implementation.
func (*SignalFxSink) Flush ¶
func (sfx *SignalFxSink) Flush(ctx context.Context, interMetrics []samplers.InterMetric) error
Flush sends metrics to SignalFx
func (*SignalFxSink) FlushOtherSamples ¶
func (sfx *SignalFxSink) FlushOtherSamples(ctx context.Context, samples []ssf.SSFSample)
FlushOtherSamples sends events to SignalFx. Event type samples will be serialized as SFX Events directly. All other metric types are ignored
func (*SignalFxSink) Name ¶
func (sfx *SignalFxSink) Name() string
Name returns the name of this sink.
func (*SignalFxSink) SetExcludedTags ¶
func (sfx *SignalFxSink) SetExcludedTags(excludes []string)
SetExcludedTags sets the excluded tag names. Any tags with the provided key (name) will be excluded.
type SignalFxSinkConfig ¶ added in v14.2.0
type SignalFxSinkConfig struct { APIKey util.StringSecret `yaml:"api_key"` DropHostWithTagKey string `yaml:"drop_host_with_tag_key"` DynamicPerTagAPIKeysEnable bool `yaml:"dynamic_per_tag_api_keys_enable"` DynamicPerTagAPIKeysRefreshPeriod time.Duration `yaml:"dynamic_per_tag_api_keys_refresh_period"` EndpointAPI string `yaml:"endpoint_api"` EndpointBase string `yaml:"endpoint_base"` FlushMaxPerBody int `yaml:"flush_max_per_body"` HostnameTag string `yaml:"hostname_tag"` MetricNamePrefixDrops []string `yaml:"metric_name_prefix_drops"` MetricTagPrefixDrops []string `yaml:"metric_tag_prefix_drops"` PerTagAPIKeys []struct { APIKey util.StringSecret `yaml:"api_key"` Name string `yaml:"name"` } `yaml:"per_tag_api_keys"` VaryKeyBy string `yaml:"vary_key_by"` VaryKeyByFavorCommonDimensions bool `yaml:"vary_key_by_favor_common_dimensions"` }