config

package
v0.10.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 9, 2016 License: MIT Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func PrintInputConfig

func PrintInputConfig(name string) error

PrintInputConfig prints the config usage of a single input.

func PrintOutputConfig

func PrintOutputConfig(name string) error

PrintOutputConfig prints the config usage of a single output.

func PrintSampleConfig

func PrintSampleConfig(pluginFilters []string, outputFilters []string)

PrintSampleConfig prints the sample config

Types

type AgentConfig

type AgentConfig struct {
	// Interval at which to gather information
	Interval internal.Duration

	// RoundInterval rounds collection interval to 'interval'.
	//     ie, if Interval=10s then always collect on :00, :10, :20, etc.
	RoundInterval bool

	// Interval at which to flush data
	FlushInterval internal.Duration

	// FlushRetries is the number of times to retry each data flush
	FlushRetries int

	// FlushJitter tells
	FlushJitter internal.Duration

	// TODO(cam): Remove UTC and Precision parameters, they are no longer
	// valid for the agent config. Leaving them here for now for backwards-
	// compatability
	UTC       bool `toml:"utc"`
	Precision string

	// Option for running in debug mode
	Debug    bool
	Hostname string
}

type Config

type Config struct {
	Tags          map[string]string
	InputFilters  []string
	OutputFilters []string

	Agent   *AgentConfig
	Inputs  []*RunningInput
	Outputs []*RunningOutput
}

Config specifies the URL/user/password for the database that telegraf will be logging to, as well as all the plugins that the user has specified

func NewConfig

func NewConfig() *Config

func (*Config) InputNames

func (c *Config) InputNames() []string

Inputs returns a list of strings of the configured inputs.

func (*Config) ListTags

func (c *Config) ListTags() string

ListTags returns a string of tags specified in the config, line-protocol style

func (*Config) LoadConfig

func (c *Config) LoadConfig(path string) error

LoadConfig loads the given config file and applies it to c

func (*Config) LoadDirectory

func (c *Config) LoadDirectory(path string) error

func (*Config) OutputNames

func (c *Config) OutputNames() []string

Outputs returns a list of strings of the configured inputs.

type Filter

type Filter struct {
	Drop []string
	Pass []string

	TagDrop []TagFilter
	TagPass []TagFilter

	IsActive bool
}

Filter containing drop/pass and tagdrop/tagpass rules

func (Filter) ShouldPass

func (f Filter) ShouldPass(fieldkey string) bool

ShouldPass returns true if the metric should pass, false if should drop based on the drop/pass filter parameters

func (Filter) ShouldTagsPass

func (f Filter) ShouldTagsPass(tags map[string]string) bool

ShouldTagsPass returns true if the metric should pass, false if should drop based on the tagdrop/tagpass filter parameters

type InputConfig

type InputConfig struct {
	Name              string
	NameOverride      string
	MeasurementPrefix string
	MeasurementSuffix string
	Tags              map[string]string
	Filter            Filter
	Interval          time.Duration
}

InputConfig containing a name, interval, and filter

type OutputConfig

type OutputConfig struct {
	Name   string
	Filter Filter
}

OutputConfig containing name and filter

type RunningInput

type RunningInput struct {
	Name   string
	Input  inputs.Input
	Config *InputConfig
}

type RunningOutput

type RunningOutput struct {
	Name   string
	Output outputs.Output
	Config *OutputConfig
}

func (*RunningOutput) FilterPoints

func (ro *RunningOutput) FilterPoints(points []*client.Point) []*client.Point

Filter returns filtered slice of client.Points based on whether filters are active for this RunningOutput.

type TagFilter

type TagFilter struct {
	Name   string
	Filter []string
}

TagFilter is the name of a tag, and the values on which to filter

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL