this includes: - Add Accumulator to the Start() function of service inputs - For message consumer plugins, use the Accumulator to constantly add metrics and make Gather a dummy function - rework unit tests to match this new behavior. - make "flush_buffer_when_full" a config option that defaults to true closes #666
32 lines
892 B
Go
32 lines
892 B
Go
package telegraf
|
|
|
|
type Input interface {
|
|
// SampleConfig returns the default configuration of the Input
|
|
SampleConfig() string
|
|
|
|
// Description returns a one-sentence description on the Input
|
|
Description() string
|
|
|
|
// Gather takes in an accumulator and adds the metrics that the Input
|
|
// gathers. This is called every "interval"
|
|
Gather(Accumulator) error
|
|
}
|
|
|
|
type ServiceInput interface {
|
|
// SampleConfig returns the default configuration of the Input
|
|
SampleConfig() string
|
|
|
|
// Description returns a one-sentence description on the Input
|
|
Description() string
|
|
|
|
// Gather takes in an accumulator and adds the metrics that the Input
|
|
// gathers. This is called every "interval"
|
|
Gather(Accumulator) error
|
|
|
|
// Start starts the ServiceInput's service, whatever that may be
|
|
Start(Accumulator) error
|
|
|
|
// Stop stops the services and closes any necessary channels and connections
|
|
Stop()
|
|
}
|