Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func MakeBatchConfig

func MakeBatchConfig(conf Config) client.BatchPointsConfig

func MakeClient

func MakeClient(conf Config) (client.Client, error)

func MakeFieldKinds

func MakeFieldKinds(conf Config) (map[string]FieldKind, error)

    MakeFieldKinds reads the Config and returns a lookup map of tag names to the field type their values should be converted to.

    Types

    type Collector

    type Collector struct {
    	Client    client.Client
    	Config    Config
    	BatchConf client.BatchPointsConfig
    	// contains filtered or unexported fields
    }

    func New

    func New(logger logrus.FieldLogger, conf Config) (*Collector, error)

      New returns new influxdb collector

      func (*Collector) Collect

      func (c *Collector) Collect(scs []stats.SampleContainer)

      func (*Collector) Format

      func (c *Collector) Format(samples []stats.Sample) ([]string, error)

        Format returns a string array of metrics in influx line-protocol

        func (*Collector) GetRequiredSystemTags

        func (c *Collector) GetRequiredSystemTags() stats.SystemTagSet

          GetRequiredSystemTags returns which sample tags are needed by this collector

          func (*Collector) Init

          func (c *Collector) Init() error
          func (c *Collector) Link() string

          func (*Collector) Run

          func (c *Collector) Run(ctx context.Context)

          func (*Collector) SetRunStatus

          func (c *Collector) SetRunStatus(status lib.RunStatus)

            SetRunStatus does nothing in the InfluxDB collector

            type Config

            type Config struct {
            	// Connection.
            	Addr             null.String        `json:"addr" envconfig:"K6_INFLUXDB_ADDR"`
            	Username         null.String        `json:"username,omitempty" envconfig:"K6_INFLUXDB_USERNAME"`
            	Password         null.String        `json:"password,omitempty" envconfig:"K6_INFLUXDB_PASSWORD"`
            	Insecure         null.Bool          `json:"insecure,omitempty" envconfig:"K6_INFLUXDB_INSECURE"`
            	PayloadSize      null.Int           `json:"payloadSize,omitempty" envconfig:"K6_INFLUXDB_PAYLOAD_SIZE"`
            	PushInterval     types.NullDuration `json:"pushInterval,omitempty" envconfig:"K6_INFLUXDB_PUSH_INTERVAL"`
            	ConcurrentWrites null.Int           `json:"concurrentWrites,omitempty" envconfig:"K6_INFLUXDB_CONCURRENT_WRITES"`
            
            	// Samples.
            	DB           null.String `json:"db" envconfig:"K6_INFLUXDB_DB"`
            	Precision    null.String `json:"precision,omitempty" envconfig:"K6_INFLUXDB_PRECISION"`
            	Retention    null.String `json:"retention,omitempty" envconfig:"K6_INFLUXDB_RETENTION"`
            	Consistency  null.String `json:"consistency,omitempty" envconfig:"K6_INFLUXDB_CONSISTENCY"`
            	TagsAsFields []string    `json:"tagsAsFields,omitempty" envconfig:"K6_INFLUXDB_TAGS_AS_FIELDS"`
            }

            func NewConfig

            func NewConfig() *Config

            func ParseArg

            func ParseArg(arg string) (Config, error)

              ParseArg parses an argument string into a Config

              func ParseMap

              func ParseMap(m map[string]interface{}) (Config, error)

                ParseMap parses a map[string]interface{} into a Config

                func ParseURL

                func ParseURL(text string) (Config, error)

                func (Config) Apply

                func (c Config) Apply(cfg Config) Config

                type FieldKind

                type FieldKind int

                  FieldKind defines Enum for tag-to-field type conversion

                  const (
                  	// String field (default)
                  	String FieldKind = iota
                  	// Int field
                  	Int
                  	// Float field
                  	Float
                  	// Bool field
                  	Bool
                  )