move plugin interfaces into separate package

This commit is contained in:
David Norton
2016-12-23 10:18:27 -05:00
parent 3e6c4a53a4
commit 81caa56859
182 changed files with 817 additions and 817 deletions

View File

@@ -11,7 +11,7 @@ import (
"strings"
"time"
"github.com/influxdata/telegraf"
"github.com/influxdata/telegraf/plugins"
"github.com/influxdata/telegraf/metric"
)
@@ -113,7 +113,7 @@ func (p *GraphiteParser) addToMatcher(tmplt parsedTemplate) error {
return nil
}
func (p *GraphiteParser) Parse(buf []byte) ([]telegraf.Metric, error) {
func (p *GraphiteParser) Parse(buf []byte) ([]plugins.Metric, error) {
// parse even if the buffer begins with a newline
buf = bytes.TrimPrefix(buf, []byte("\n"))
// add newline to end if not exists:
@@ -121,7 +121,7 @@ func (p *GraphiteParser) Parse(buf []byte) ([]telegraf.Metric, error) {
buf = append(buf, []byte("\n")...)
}
metrics := make([]telegraf.Metric, 0)
metrics := make([]plugins.Metric, 0)
var errStr string
buffer := bytes.NewBuffer(buf)
@@ -154,7 +154,7 @@ func (p *GraphiteParser) Parse(buf []byte) ([]telegraf.Metric, error) {
}
// Parse performs Graphite parsing of a single line.
func (p *GraphiteParser) ParseLine(line string) (telegraf.Metric, error) {
func (p *GraphiteParser) ParseLine(line string) (plugins.Metric, error) {
// Break into 3 fields (name, value, timestamp).
fields := strings.Fields(line)
if len(fields) != 2 && len(fields) != 3 {

View File

@@ -5,7 +5,7 @@ import (
"fmt"
"time"
"github.com/influxdata/telegraf"
"github.com/influxdata/telegraf/plugins"
"github.com/influxdata/telegraf/metric"
)
@@ -15,7 +15,7 @@ type InfluxParser struct {
DefaultTags map[string]string
}
func (p *InfluxParser) ParseWithDefaultTime(buf []byte, t time.Time) ([]telegraf.Metric, error) {
func (p *InfluxParser) ParseWithDefaultTime(buf []byte, t time.Time) ([]plugins.Metric, error) {
// parse even if the buffer begins with a newline
buf = bytes.TrimPrefix(buf, []byte("\n"))
metrics, err := metric.ParseWithDefaultTime(buf, t)
@@ -37,11 +37,11 @@ func (p *InfluxParser) ParseWithDefaultTime(buf []byte, t time.Time) ([]telegraf
// with each metric separated by newlines. If any metrics fail to parse,
// a non-nil error will be returned in addition to the metrics that parsed
// successfully.
func (p *InfluxParser) Parse(buf []byte) ([]telegraf.Metric, error) {
func (p *InfluxParser) Parse(buf []byte) ([]plugins.Metric, error) {
return p.ParseWithDefaultTime(buf, time.Now())
}
func (p *InfluxParser) ParseLine(line string) (telegraf.Metric, error) {
func (p *InfluxParser) ParseLine(line string) (plugins.Metric, error) {
metrics, err := p.Parse([]byte(line + "\n"))
if err != nil {

View File

@@ -5,13 +5,13 @@ import (
"testing"
"time"
"github.com/influxdata/telegraf"
"github.com/influxdata/telegraf/plugins"
"github.com/stretchr/testify/assert"
)
var (
ms []telegraf.Metric
ms []plugins.Metric
writer = ioutil.Discard
metrics500 []byte
exptime = time.Date(2009, time.November, 10, 23, 0, 0, 0, time.UTC).UnixNano()

View File

@@ -8,7 +8,7 @@ import (
"strings"
"time"
"github.com/influxdata/telegraf"
"github.com/influxdata/telegraf/plugins"
"github.com/influxdata/telegraf/metric"
)
@@ -18,8 +18,8 @@ type JSONParser struct {
DefaultTags map[string]string
}
func (p *JSONParser) parseArray(buf []byte) ([]telegraf.Metric, error) {
metrics := make([]telegraf.Metric, 0)
func (p *JSONParser) parseArray(buf []byte) ([]plugins.Metric, error) {
metrics := make([]plugins.Metric, 0)
var jsonOut []map[string]interface{}
err := json.Unmarshal(buf, &jsonOut)
@@ -33,7 +33,7 @@ func (p *JSONParser) parseArray(buf []byte) ([]telegraf.Metric, error) {
return metrics, nil
}
func (p *JSONParser) parseObject(metrics []telegraf.Metric, jsonOut map[string]interface{}) ([]telegraf.Metric, error) {
func (p *JSONParser) parseObject(metrics []plugins.Metric, jsonOut map[string]interface{}) ([]plugins.Metric, error) {
tags := make(map[string]string)
for k, v := range p.DefaultTags {
@@ -66,10 +66,10 @@ func (p *JSONParser) parseObject(metrics []telegraf.Metric, jsonOut map[string]i
return append(metrics, metric), nil
}
func (p *JSONParser) Parse(buf []byte) ([]telegraf.Metric, error) {
func (p *JSONParser) Parse(buf []byte) ([]plugins.Metric, error) {
if !isarray(buf) {
metrics := make([]telegraf.Metric, 0)
metrics := make([]plugins.Metric, 0)
var jsonOut map[string]interface{}
err := json.Unmarshal(buf, &jsonOut)
if err != nil {
@@ -81,7 +81,7 @@ func (p *JSONParser) Parse(buf []byte) ([]telegraf.Metric, error) {
return p.parseArray(buf)
}
func (p *JSONParser) ParseLine(line string) (telegraf.Metric, error) {
func (p *JSONParser) ParseLine(line string) (plugins.Metric, error) {
metrics, err := p.Parse([]byte(line + "\n"))
if err != nil {

View File

@@ -5,7 +5,7 @@ import (
"strings"
"time"
"github.com/influxdata/telegraf"
"github.com/influxdata/telegraf/plugins"
"github.com/influxdata/telegraf/metric"
)
@@ -19,7 +19,7 @@ type NagiosParser struct {
var perfSplitRegExp, _ = regexp.Compile(`([^=]+=\S+)`)
var nagiosRegExp, _ = regexp.Compile(`^([^=]+)=([\d\.\-\+eE]+)([\w\/%]*);?([\d\.\-\+eE:~@]+)?;?([\d\.\-\+eE:~@]+)?;?([\d\.\-\+eE]+)?;?([\d\.\-\+eE]+)?;?\s*`)
func (p *NagiosParser) ParseLine(line string) (telegraf.Metric, error) {
func (p *NagiosParser) ParseLine(line string) (plugins.Metric, error) {
metrics, err := p.Parse([]byte(line))
return metrics[0], err
}
@@ -31,8 +31,8 @@ func (p *NagiosParser) SetDefaultTags(tags map[string]string) {
//> rta,host=absol,unit=ms critical=6000,min=0,value=0.332,warning=4000 1456374625003628099
//> pl,host=absol,unit=% critical=90,min=0,value=0,warning=80 1456374625003693967
func (p *NagiosParser) Parse(buf []byte) ([]telegraf.Metric, error) {
metrics := make([]telegraf.Metric, 0)
func (p *NagiosParser) Parse(buf []byte) ([]plugins.Metric, error) {
metrics := make([]plugins.Metric, 0)
// Convert to string
out := string(buf)
// Prepare output for splitting

View File

@@ -3,7 +3,7 @@ package parsers
import (
"fmt"
"github.com/influxdata/telegraf"
"github.com/influxdata/telegraf/plugins"
"github.com/influxdata/telegraf/plugins/parsers/graphite"
"github.com/influxdata/telegraf/plugins/parsers/influx"
@@ -24,12 +24,12 @@ type Parser interface {
// Parse takes a byte buffer separated by newlines
// ie, `cpu.usage.idle 90\ncpu.usage.busy 10`
// and parses it into telegraf metrics
Parse(buf []byte) ([]telegraf.Metric, error)
Parse(buf []byte) ([]plugins.Metric, error)
// ParseLine takes a single string metric
// ie, "cpu.usage.idle 90"
// and parses it into a telegraf metric.
ParseLine(line string) (telegraf.Metric, error)
ParseLine(line string) (plugins.Metric, error)
// SetDefaultTags tells the parser to add all of the given tags
// to each parsed metric.

View File

@@ -7,7 +7,7 @@ import (
"strings"
"time"
"github.com/influxdata/telegraf"
"github.com/influxdata/telegraf/plugins"
"github.com/influxdata/telegraf/metric"
)
@@ -17,7 +17,7 @@ type ValueParser struct {
DefaultTags map[string]string
}
func (v *ValueParser) Parse(buf []byte) ([]telegraf.Metric, error) {
func (v *ValueParser) Parse(buf []byte) ([]plugins.Metric, error) {
vStr := string(bytes.TrimSpace(bytes.Trim(buf, "\x00")))
// unless it's a string, separate out any fields in the buffer,
@@ -25,7 +25,7 @@ func (v *ValueParser) Parse(buf []byte) ([]telegraf.Metric, error) {
if v.DataType != "string" {
values := strings.Fields(vStr)
if len(values) < 1 {
return []telegraf.Metric{}, nil
return []plugins.Metric{}, nil
}
vStr = string(values[len(values)-1])
}
@@ -53,10 +53,10 @@ func (v *ValueParser) Parse(buf []byte) ([]telegraf.Metric, error) {
return nil, err
}
return []telegraf.Metric{metric}, nil
return []plugins.Metric{metric}, nil
}
func (v *ValueParser) ParseLine(line string) (telegraf.Metric, error) {
func (v *ValueParser) ParseLine(line string) (plugins.Metric, error) {
metrics, err := v.Parse([]byte(line))
if err != nil {