wavefront

package
v1.26.0 Latest Latest
Warning

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

Go to latest
Published: Mar 13, 2023 License: MIT Imports: 11 Imported by: 4

README

Wavefront Parser Plugin

Wavefront Data Format is metrics are parsed directly into Telegraf metrics. For more information about the Wavefront Data Format see here.

Configuration

[[inputs.file]]
  files = ["example"]

  ## Data format to consume.
  ## Each data format has its own unique set of configuration options, read
  ## more about them here:
  ##   https://github.com/influxdata/telegraf/blob/master/docs/DATA_FORMATS_INPUT.md
  data_format = "wavefront"

There are no additional configuration options for Wavefront Data Format line-protocol.

Documentation

Index

Constants

View Source
const MaxBufferSize = 2

Variables

View Source
var (
	ErrEOF              = errors.New("EOF")
	ErrInvalidTimestamp = errors.New("invalid timestamp")
)

Functions

This section is empty.

Types

type ElementParser

type ElementParser interface {
	// contains filtered or unexported methods
}

func NewWavefrontElements

func NewWavefrontElements() []ElementParser

NewWavefrontElements returns a slice of ElementParser's for the Graphite format

type LoopedParser

type LoopedParser struct {
	// contains filtered or unexported fields
}

type NameParser

type NameParser struct{}

type Parser added in v1.24.0

type Parser struct {
	DefaultTags map[string]string `toml:"-"`
	Log         telegraf.Logger   `toml:"-"`
	// contains filtered or unexported fields
}

func (*Parser) Init added in v1.24.0

func (p *Parser) Init() error

func (*Parser) InitFromConfig added in v1.24.0

func (p *Parser) InitFromConfig(_ *parsers.Config) error

func (*Parser) Parse added in v1.24.0

func (p *Parser) Parse(buf []byte) ([]telegraf.Metric, error)

func (*Parser) ParseLine added in v1.24.0

func (p *Parser) ParseLine(line string) (telegraf.Metric, error)

func (*Parser) SetDefaultTags added in v1.24.0

func (p *Parser) SetDefaultTags(tags map[string]string)

type Point

type Point struct {
	Name      string
	Value     string
	Timestamp int64
	Source    string
	Tags      map[string]string
}

type PointParser

type PointParser struct {
	Elements []ElementParser
	// contains filtered or unexported fields
}

PointParser is a thread-unsafe parser and must be kept in a pool.

func (*PointParser) Parse

func (p *PointParser) Parse(buf []byte) ([]telegraf.Metric, error)

type PointScanner

type PointScanner struct {
	// contains filtered or unexported fields
}

Lexical Point Scanner

func NewScanner

func NewScanner(r io.Reader) *PointScanner

func (*PointScanner) Scan

func (s *PointScanner) Scan() (Token, string)

Scan returns the next token and literal value.

type TagParser

type TagParser struct{}

type TimestampParser

type TimestampParser struct {
	// contains filtered or unexported fields
}

type Token

type Token int
const (
	// Special tokens
	Illegal Token = iota
	EOF
	Ws

	Letter // metric name, source/point tags
	Number
	MinusSign
	Underscore
	Dot
	Slash
	Backslash
	Comma
	Delta

	// Misc characters
	Quotes
	Equals
	Newline
)

type ValueParser

type ValueParser struct{}

type WhiteSpaceParser

type WhiteSpaceParser struct {
	// contains filtered or unexported fields
}

Jump to

Keyboard shortcuts

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