influxdb

package
v1.3.1 Latest Latest
Warning

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

Go to latest
Published: Jun 2, 2017 License: MIT Imports: 29 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// Maximum time to try and connect to InfluxDB during startup.
	DefaultStartUpTimeout           = 5 * time.Minute
	DefaultSubscriptionSyncInterval = 1 * time.Minute

	DefaultSubscriptionProtocol = "http"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	Enabled  bool     `toml:"enabled" override:"enabled"`
	Name     string   `toml:"name" override:"name"`
	Default  bool     `toml:"default" override:"default"`
	URLs     []string `toml:"urls" override:"urls"`
	Username string   `toml:"username" override:"username"`
	Password string   `toml:"password" override:"password,redact"`
	// Path to CA file
	SSLCA string `toml:"ssl-ca" override:"ssl-ca"`
	// Path to host cert file
	SSLCert string `toml:"ssl-cert" override:"ssl-cert"`
	// Path to cert key file
	SSLKey string `toml:"ssl-key" override:"ssl-key"`
	// Use SSL but skip chain & host verification
	InsecureSkipVerify bool `toml:"insecure-skip-verify" override:"insecure-skip-verify"`

	Timeout                  toml.Duration       `toml:"timeout" override:"timeout"`
	DisableSubscriptions     bool                `toml:"disable-subscriptions" override:"disable-subscriptions"`
	SubscriptionProtocol     string              `toml:"subscription-protocol" override:"subscription-protocol"`
	Subscriptions            map[string][]string `toml:"subscriptions" override:"subscriptions"`
	ExcludedSubscriptions    map[string][]string `toml:"excluded-subscriptions" override:"excluded-subscriptions"`
	KapacitorHostname        string              `toml:"kapacitor-hostname" override:"kapacitor-hostname"`
	HTTPPort                 int                 `toml:"http-port" override:"http-port"`
	UDPBind                  string              `toml:"udp-bind" override:"udp-bind"`
	UDPBuffer                int                 `toml:"udp-buffer" override:"udp-buffer"`
	UDPReadBuffer            int                 `toml:"udp-read-buffer" override:"udp-read-buffer"`
	StartUpTimeout           toml.Duration       `toml:"startup-timeout" override:"startup-timeout"`
	SubscriptionSyncInterval toml.Duration       `toml:"subscriptions-sync-interval" override:"subscriptions-sync-interval"`
}

func NewConfig

func NewConfig() Config

func (*Config) ApplyConditionalDefaults added in v1.1.0

func (c *Config) ApplyConditionalDefaults()

func (*Config) Init added in v1.1.0

func (c *Config) Init()

func (Config) Validate

func (c Config) Validate() error

type Service

type Service struct {
	PointsWriter interface {
		WritePoints(database, retentionPolicy string, consistencyLevel models.ConsistencyLevel, points []models.Point) error
	}
	LogService interface {
		NewLogger(string, int) *log.Logger
	}
	HTTPDService interface {
		AddRoutes([]httpd.Route) error
		DelRoutes([]httpd.Route)
	}
	ClientCreator interface {
		Create(influxdb.Config) (influxdb.ClientUpdater, error)
	}
	AuthService interface {
		GrantSubscriptionAccess(token, db, rp string) error
		ListSubscriptionTokens() ([]string, error)
		RevokeSubscriptionAccess(token string) error
	}
	RandReader io.Reader
	// contains filtered or unexported fields
}

Handles requests to write or read from an InfluxDB cluster

func NewService

func NewService(configs []Config, httpPort int, hostname string, useTokens bool, l *log.Logger) (*Service, error)

func (*Service) Close

func (s *Service) Close() error

func (*Service) LinkSubscriptions added in v1.0.0

func (s *Service) LinkSubscriptions() error

Trigger a LinkSubscriptions event for all clusters

func (*Service) NewNamedClient added in v0.11.0

func (s *Service) NewNamedClient(name string) (influxdb.Client, error)

NewNamedClient returns a new client for the given name or the default client if the name is empty.

func (*Service) Open

func (s *Service) Open() error

func (*Service) Test added in v1.1.0

func (s *Service) Test(options interface{}) error

func (*Service) TestOptions added in v1.1.0

func (s *Service) TestOptions() interface{}

func (*Service) Update added in v1.1.0

func (s *Service) Update(newConfigs []interface{}) error

Jump to

Keyboard shortcuts

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