influxdbclient

package module
v0.0.0-...-598f214 Latest Latest
Warning

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

Go to latest
Published: Mar 6, 2019 License: Apache-2.0 Imports: 6 Imported by: 12

README

stats2influxdb-influxdbclient

Influxdb library for stats2influxdb

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Mean

func Mean(data []float64) (mean float64)

func Sum

func Sum(data []float64) (sum float64)

Types

type DataSet

type DataSet struct {
	Name       string
	TimeStamps []time.Time
	Tags       map[string]string
	Datas      map[string][]float64
}

DataSet structure contains the columns and points to analyze for statistics

func ConvertToDataSet

func ConvertToDataSet(res []client.Result) (dsets []*DataSet)

ConvertToDataSet convert influxdb result in []DataSet

func NewDataSet

func NewDataSet(length int, fields []string) *DataSet

NewDataSet provides a new DataSet properly initialized

type DataStat

type DataStat struct {
	Name   string
	Min    float64
	Max    float64
	Mean   float64
	Median float64
	Length int
}

type DataStats

type DataStats []DataStat

func BuildStats

func BuildStats(dsets []*DataSet) (stats DataStats)

func (*DataStats) FieldSort

func (ds *DataStats) FieldSort(field string)

func (DataStats) Len

func (slice DataStats) Len() int

func (DataStats) Swap

func (slice DataStats) Swap(i, j int)

type Filter

type Filter struct {
	Tag   string
	Value string
	Mode  string
}

type FilterQuery

type FilterQuery struct {
	Content string
}

func (*FilterQuery) AddFilters

func (fQuery *FilterQuery) AddFilters(filters *Filters)

func (*FilterQuery) Append

func (fQuery *FilterQuery) Append(text string)

type Filters

type Filters []Filter

func (*Filters) Add

func (filters *Filters) Add(tag string, value string, mode string)

type InfluxDB

type InfluxDB struct {
	Debug bool
	// contains filtered or unexported fields
}

InfluxDB contains the main structures and methods used to parse nmon files and upload data in Influxdb

func NewInfluxDB

func NewInfluxDB(cfg InfluxDBConfig) (db InfluxDB, err error)

NewInfluxDB initialize a Influx structure

func (*InfluxDB) AddPoint

func (db *InfluxDB) AddPoint(measurement string, timestamp time.Time, fields map[string]interface{}, tags map[string]string)

AddPoint add standard point

func (*InfluxDB) ClearPoints

func (db *InfluxDB) ClearPoints()

ClearPoints reset the number of points stored

func (*InfluxDB) CreateDB

func (db *InfluxDB) CreateDB(dbname string) (res []client.Result, err error)

CreateDB create the database with the dbname provided

func (*InfluxDB) DropDB

func (db *InfluxDB) DropDB(dbname string) (res []client.Result, err error)

DropDB drop the database named dbname

func (*InfluxDB) ExistDB

func (db *InfluxDB) ExistDB(dbname string) (check bool, err error)

ExistDB returns true if the db exists

func (*InfluxDB) GetDefaultRetentionPolicy

func (db *InfluxDB) GetDefaultRetentionPolicy() (policyName string, err error)

GetDefaultRetentionPolicy get the default retention policy name

func (*InfluxDB) ListMeasurement

func (db *InfluxDB) ListMeasurement(filters *Filters) (tset *TextSet, err error)

ListMeasurement returns all measurements inside a TextSet

func (*InfluxDB) PointsCount

func (db *InfluxDB) PointsCount() int64

PointsCount return the number of influxdb points

func (*InfluxDB) ReadLastPoint

func (db *InfluxDB) ReadLastPoint(fields string, filters *Filters, serie string) (result string, err error)

ReadLastPoint perform a influxdb query on meqsurements and return the last point as string

func (*InfluxDB) ReadPoints

func (db *InfluxDB) ReadPoints(fields string, filters *Filters, groupby string, serie string, from string, to string, function string) (ds []*DataSet, err error)

ReadPoints perform a influxdb query on meqsurements and return points inside a dataset

func (*InfluxDB) SetRetentionPolicy

func (db *InfluxDB) SetRetentionPolicy(policy string, retention string, defaultPolicy bool) (res []client.Result, err error)

SetRetentionPolicy create a retention policy named retention. It's configured as default policy if defaultPolicy is true

func (*InfluxDB) ShowDB

func (db *InfluxDB) ShowDB() (databases []string, err error)

ShowDB returns a rray of dbname

func (*InfluxDB) UpdateRetentionPolicy

func (db *InfluxDB) UpdateRetentionPolicy(policy string, retention string, defaultPolicy bool) (res []client.Result, err error)

UpdateRetentionPolicy update the rentetion policy

func (*InfluxDB) WritePoints

func (db *InfluxDB) WritePoints() (err error)

WritePoints wirte points to database

type InfluxDBConfig

type InfluxDBConfig struct {
	Host            string
	Port            string
	Database        string
	User            string
	Pass            string
	RetentionPolicy string
	Debug           bool
	Secure          bool
	SkipCertCheck   bool
}

InfluxDBConfig store all configuration parameters

type MaxDataStats

type MaxDataStats struct{ DataStats }

func (MaxDataStats) Less

func (slice MaxDataStats) Less(i, j int) bool

type MeanDataStats

type MeanDataStats struct{ DataStats }

func (MeanDataStats) Less

func (slice MeanDataStats) Less(i, j int) bool

type MedianDataStats

type MedianDataStats struct{ DataStats }

func (MedianDataStats) Less

func (slice MedianDataStats) Less(i, j int) bool

type MinDataStats

type MinDataStats struct{ DataStats }

func (MinDataStats) Less

func (slice MinDataStats) Less(i, j int) bool

type NameDataStats

type NameDataStats struct{ DataStats }

func (NameDataStats) Less

func (slice NameDataStats) Less(i, j int) bool

type TextSet

type TextSet struct {
	Name  string
	Tags  map[string]string
	Datas []string
}

TextSet Contains a text output

func ConvertToTextSet

func ConvertToTextSet(res []client.Result) (tset *TextSet)

Jump to

Keyboard shortcuts

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