influxdb

package module
Version: v1.6.3 Latest Latest
Warning

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

Go to latest
Published: Sep 14, 2018 License: MIT Imports: 8 Imported by: 98

README

InfluxDB Circle CI Go Report Card Docker pulls

An Open-Source Time Series Database

InfluxDB is an open source time series database with no external dependencies. It's useful for recording metrics, events, and performing analytics.

Features

  • Built-in HTTP API so you don't have to write any server side code to get up and running.
  • Data can be tagged, allowing very flexible querying.
  • SQL-like query language.
  • Simple to install and manage, and fast to get data in and out.
  • It aims to answer queries in real-time. That means every data point is indexed as it comes in and is immediately available in queries that should return in < 100ms.

Installation

We recommend installing InfluxDB using one of the pre-built packages. Then start InfluxDB using:

  • service influxdb start if you have installed InfluxDB using an official Debian or RPM package.
  • systemctl start influxdb if you have installed InfluxDB using an official Debian or RPM package, and are running a distro with systemd. For example, Ubuntu 15 or later.
  • $GOPATH/bin/influxd if you have built InfluxDB from source.

Getting Started

Create your first database
curl -XPOST "http://localhost:8086/query" --data-urlencode "q=CREATE DATABASE mydb"
Insert some data
curl -XPOST "http://localhost:8086/write?db=mydb" \
-d 'cpu,host=server01,region=uswest load=42 1434055562000000000'

curl -XPOST "http://localhost:8086/write?db=mydb" \
-d 'cpu,host=server02,region=uswest load=78 1434055562000000000'

curl -XPOST "http://localhost:8086/write?db=mydb" \
-d 'cpu,host=server03,region=useast load=15.4 1434055562000000000'
Query for the data
curl -G "http://localhost:8086/query?pretty=true" --data-urlencode "db=mydb" \
--data-urlencode "q=SELECT * FROM cpu WHERE host='server01' AND time < now() - 1d"
Analyze the data
curl -G "http://localhost:8086/query?pretty=true" --data-urlencode "db=mydb" \
--data-urlencode "q=SELECT mean(load) FROM cpu WHERE region='uswest'"

Documentation

Contributing

If you're feeling adventurous and want to contribute to InfluxDB, see our contributing doc for info on how to make feature requests, build from source, and run tests.

Looking for Support?

InfluxDB offers a number of services to help your project succeed. We offer Developer Support for organizations in active development, Managed Hosting to make it easy to move into production, and Enterprise Support for companies requiring the best response times, SLAs, and technical fixes. Visit our support page or contact sales@influxdb.com to learn how we can best help you succeed.

Documentation

Overview

Package influxdb is the root package of InfluxDB, the scalable datastore for metrics, events, and real-time analytics.

If you're looking for the Go HTTP client for InfluxDB, see package github.com/influxdata/influxdb/client/v2.

Index

Constants

This section is empty.

Variables

View Source
var ErrFieldTypeConflict = errors.New("field type conflict")

ErrFieldTypeConflict is returned when a new field already exists with a different type.

Functions

func ErrDatabaseNotFound

func ErrDatabaseNotFound(name string) error

ErrDatabaseNotFound indicates that a database operation failed on the specified database because the specified database does not exist.

func ErrRetentionPolicyNotFound added in v0.9.5

func ErrRetentionPolicyNotFound(name string) error

ErrRetentionPolicyNotFound indicates that the named retention policy could not be found in the database.

func IsAuthorizationError added in v1.3.0

func IsAuthorizationError(err error) bool

IsAuthorizationError indicates whether an error is due to an authorization failure

func IsClientError

func IsClientError(err error) bool

IsClientError indicates whether an error is a known client error.

Types

type Node added in v0.10.0

type Node struct {
	ID uint64
	// contains filtered or unexported fields
}

func LoadNode added in v0.10.0

func LoadNode(path string) (*Node, error)

LoadNode will load the node information from disk if present

func NewNode added in v0.10.0

func NewNode(path string) *Node

NewNode will return a new node

func (*Node) Save added in v0.10.0

func (n *Node) Save() error

Save will save the node file to disk and replace the existing one if present

Directories

Path Synopsis
Package client implements a now-deprecated client for InfluxDB; use github.com/influxdata/influxdb/client/v2 instead.
Package client implements a now-deprecated client for InfluxDB; use github.com/influxdata/influxdb/client/v2 instead.
v2
Package client (v2) is the current official Go client for InfluxDB.
Package client (v2) is the current official Go client for InfluxDB.
cmd
Package cmd is the root package of the various command-line utilities for InfluxDB.
Package cmd is the root package of the various command-line utilities for InfluxDB.
influx
The influx command is a CLI client to InfluxDB.
The influx command is a CLI client to InfluxDB.
influx-tools
The influx-tools command displays detailed information about InfluxDB data files.
The influx-tools command displays detailed information about InfluxDB data files.
influx-tools/help
Package help is the help subcommand of the influxd command.
Package help is the help subcommand of the influxd command.
influx/cli
Package cli contains the logic of the influx command line client.
Package cli contains the logic of the influx command line client.
influx_inspect
The influx_inspect command displays detailed information about InfluxDB data files.
The influx_inspect command displays detailed information about InfluxDB data files.
influx_inspect/buildtsi
Package buildtsi reads an in-memory index and exports it as a TSI index.
Package buildtsi reads an in-memory index and exports it as a TSI index.
influx_inspect/deletetsm
Package deletetsm bulk deletes a measurement from a raw tsm file.
Package deletetsm bulk deletes a measurement from a raw tsm file.
influx_inspect/dumptsi
Package dumptsi inspects low-level details about tsi1 files.
Package dumptsi inspects low-level details about tsi1 files.
influx_inspect/dumptsm
Package dumptsm inspects low-level details about tsm1 files.
Package dumptsm inspects low-level details about tsm1 files.
influx_inspect/dumptsmwal
Package dumptsmwal dumps all data from a WAL file.
Package dumptsmwal dumps all data from a WAL file.
influx_inspect/export
Package export exports TSM files into InfluxDB line protocol format.
Package export exports TSM files into InfluxDB line protocol format.
influx_inspect/help
Package help contains the help for the influx_inspect command.
Package help contains the help for the influx_inspect command.
influx_inspect/report
Package report reports statistics about TSM files.
Package report reports statistics about TSM files.
influx_inspect/reporttsi
Package reporttsi provides a report about the series cardinality in one or more TSI indexes.
Package reporttsi provides a report about the series cardinality in one or more TSI indexes.
influx_inspect/verify/seriesfile
Package seriesfile verifies integrity of series files.
Package seriesfile verifies integrity of series files.
influx_inspect/verify/tsm
Package tsm verifies integrity of TSM files.
Package tsm verifies integrity of TSM files.
influx_stress
Command influx_stress is deprecated; use github.com/influxdata/influx-stress instead.
Command influx_stress is deprecated; use github.com/influxdata/influx-stress instead.
influx_tsm
Command influx_tsm converts b1 or bz1 shards (from InfluxDB releases earlier than v0.11) to the current tsm1 format.
Command influx_tsm converts b1 or bz1 shards (from InfluxDB releases earlier than v0.11) to the current tsm1 format.
influx_tsm/b1
Package b1 reads data from b1 shards.
Package b1 reads data from b1 shards.
influx_tsm/bz1
Package bz1 reads data from bz1 shards.
Package bz1 reads data from bz1 shards.
influx_tsm/stats
Package stats contains statistics for converting non-TSM shards to TSM.
Package stats contains statistics for converting non-TSM shards to TSM.
influx_tsm/tsdb
Package tsdb abstracts the various shard types supported by the influx_tsm command.
Package tsdb abstracts the various shard types supported by the influx_tsm command.
influxd
Command influxd is the InfluxDB server.
Command influxd is the InfluxDB server.
influxd/backup
Package backup implements both the backup and export subcommands for the influxd command.
Package backup implements both the backup and export subcommands for the influxd command.
influxd/help
Package help is the help subcommand of the influxd command.
Package help is the help subcommand of the influxd command.
influxd/restore
Package restore is the restore subcommand for the influxd command, for restoring from a backup.
Package restore is the restore subcommand for the influxd command, for restoring from a backup.
influxd/run
Package run is the run (default) subcommand for the influxd command.
Package run is the run (default) subcommand for the influxd command.
store
The store command displays detailed information about InfluxDB data files.
The store command displays detailed information about InfluxDB data files.
store/help
Package help contains the help for the store command.
Package help contains the help for the store command.
Package coordinator contains abstractions for writing points, executing statements, and accessing meta data.
Package coordinator contains abstractions for writing points, executing statements, and accessing meta data.
importer
v8
Package v8 contains code for importing data from 0.8 instances of InfluxDB.
Package v8 contains code for importing data from 0.8 instances of InfluxDB.
Package models implements basic objects used throughout the TICK stack.
Package models implements basic objects used throughout the TICK stack.
Package monitor provides a service and associated functionality for InfluxDB to self-monitor internal statistics and diagnostics.
Package monitor provides a service and associated functionality for InfluxDB to self-monitor internal statistics and diagnostics.
diagnostics
Package diagnostics provides the diagnostics type so that other packages can provide diagnostics without depending on the monitor package.
Package diagnostics provides the diagnostics type so that other packages can provide diagnostics without depending on the monitor package.
pkg
deep
Package deep provides a deep equality check for use in tests.
Package deep provides a deep equality check for use in tests.
escape
Package escape contains utilities for escaping parts of InfluxQL and InfluxDB line protocol.
Package escape contains utilities for escaping parts of InfluxQL and InfluxDB line protocol.
estimator/hll
Package hll contains a HyperLogLog++ with a LogLog-Beta bias correction implementation that is adapted (mostly copied) from an implementation provided by Clark DuVall github.com/clarkduvall/hyperloglog.
Package hll contains a HyperLogLog++ with a LogLog-Beta bias correction implementation that is adapted (mostly copied) from an implementation provided by Clark DuVall github.com/clarkduvall/hyperloglog.
limiter
Package limiter provides concurrency limiters.
Package limiter provides concurrency limiters.
metrics
Package metrics provides various measurements that are safe for concurrent access.
Package metrics provides various measurements that are safe for concurrent access.
mmap
Package mmap provides a way to memory-map a file.
Package mmap provides a way to memory-map a file.
pool
Package pool provides pool structures to help reduce garbage collector pressure.
Package pool provides pool structures to help reduce garbage collector pressure.
rhh
slices
Package slices contains functions to operate on slices treated as sets.
Package slices contains functions to operate on slices treated as sets.
tar
testing/assert
Package assert provides helper functions that can be used with the standard Go testing package.
Package assert provides helper functions that can be used with the standard Go testing package.
tracing
Package tracing provides a way for capturing hierarchical traces.
Package tracing provides a way for capturing hierarchical traces.
tracing/wire
Package wire is used to serialize a trace.
Package wire is used to serialize a trace.
remote
Package remote is a generated protocol buffer package.
Package remote is a generated protocol buffer package.
neldermead
Package neldermead is an implementation of the Nelder-Mead optimization method.
Package neldermead is an implementation of the Nelder-Mead optimization method.
services
collectd
Package collectd provides a service for InfluxDB to ingest data via the collectd protocol.
Package collectd provides a service for InfluxDB to ingest data via the collectd protocol.
continuous_querier
Package continuous_querier provides the continuous query service.
Package continuous_querier provides the continuous query service.
graphite
Package graphite provides a service for InfluxDB to ingest data via the graphite protocol.
Package graphite provides a service for InfluxDB to ingest data via the graphite protocol.
httpd
Package httpd implements the HTTP service and REST API for InfluxDB.
Package httpd implements the HTTP service and REST API for InfluxDB.
meta
Package meta provides control over meta data for InfluxDB, such as controlling databases, retention policies, users, etc.
Package meta provides control over meta data for InfluxDB, such as controlling databases, retention policies, users, etc.
opentsdb
Package opentsdb provides a service for InfluxDB to ingest data via the opentsdb protocol.
Package opentsdb provides a service for InfluxDB to ingest data via the opentsdb protocol.
precreator
Package precreator provides the shard precreation service.
Package precreator provides the shard precreation service.
retention
Package retention provides the retention policy enforcement service.
Package retention provides the retention policy enforcement service.
snapshotter
Package snapshotter provides the meta snapshot service.
Package snapshotter provides the meta snapshot service.
storage
Package storage is a generated protocol buffer package.
Package storage is a generated protocol buffer package.
subscriber
Package subscriber implements the subscriber service to forward incoming data to remote services.
Package subscriber implements the subscriber service to forward incoming data to remote services.
udp
Package udp provides the UDP input service for InfluxDB.
Package udp provides the UDP input service for InfluxDB.
v2
Package tcp provides a simple multiplexer over TCP.
Package tcp provides a simple multiplexer over TCP.
This package is a set of convenience helpers and structs to make integration testing easier
This package is a set of convenience helpers and structs to make integration testing easier
Package toml adds support to marshal and unmarshal types not in the official TOML spec.
Package toml adds support to marshal and unmarshal types not in the official TOML spec.
Package tsdb implements a durable time series database.
Package tsdb implements a durable time series database.
engine
Package engine can be imported to initialize and register all available TSDB engines.
Package engine can be imported to initialize and register all available TSDB engines.
engine/tsm1
Package tsm1 provides a TSDB in the Time Structured Merge tree format.
Package tsm1 provides a TSDB in the Time Structured Merge tree format.
index/inmem
Package inmem implements a shared, in-memory index for each database.
Package inmem implements a shared, in-memory index for each database.
index/tsi1
Package tsi1 provides a memory-mapped index implementation that supports high cardinality series.
Package tsi1 provides a memory-mapped index implementation that supports high cardinality series.
Package uuid provides functions to create time-based UUIDs.
Package uuid provides functions to create time-based UUIDs.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
t or T : Toggle theme light dark auto
y or Y : Canonical URL