Documentation ¶
Index ¶
Constants ¶
const ( // DefaultBindAddress is the default address to bind to. DefaultBindAddress = ":8086" // DefaultRealm is the default realm sent back when issuing a basic auth challenge. DefaultRealm = "InfluxDB" )
const ( // DefaultChunkSize specifies the maximum number of points that will // be read before sending results back to the engine. // // This has no relation to the number of bytes that are returned. DefaultChunkSize = 10000 )
Variables ¶
This section is empty.
Functions ¶
func LimitListener ¶
LimitListener returns a Listener that accepts at most n simultaneous connections from the provided Listener and will drop extra connections.
func MarshalJSON ¶
MarshalJSON will marshal v to JSON. Pretty prints if pretty is true.
Types ¶
type AuthenticationMethod ¶
type AuthenticationMethod int
AuthenticationMethod defines the type of authentication used.
const ( UserAuthentication AuthenticationMethod = iota BearerAuthentication )
Supported authentication methods.
type Config ¶
type Config struct { Enabled bool `toml:"enabled"` BindAddress string `toml:"bind-address"` AuthEnabled bool `toml:"auth-enabled"` LogEnabled bool `toml:"log-enabled"` WriteTracing bool `toml:"write-tracing"` HTTPSEnabled bool `toml:"https-enabled"` HTTPSCertificate string `toml:"https-certificate"` HTTPSPrivateKey string `toml:"https-private-key"` MaxRowLimit int `toml:"max-row-limit"` MaxConnectionLimit int `toml:"max-connection-limit"` Realm string `toml:"realm"` }
Config represents a configuration for a HTTP service.
type Handler ¶
type Handler struct { Version string MetaClient interface { Database(name string) *meta.DatabaseInfo Authenticate(username, password string) (ui *meta.UserInfo, err error) Users() []meta.UserInfo User(username string) (*meta.UserInfo, error) } QueryAuthorizer interface { AuthorizeQuery(u *meta.UserInfo, query *influxql.Query, database string) error } WriteAuthorizer interface { AuthorizeWrite(username, database string) error } QueryExecutor *influxql.QueryExecutor Monitor interface { Statistics(tags map[string]string) ([]*monitor.Statistic, error) } PointsWriter interface { WritePoints(database, retentionPolicy string, consistencyLevel models.ConsistencyLevel, points []models.Point) error } ContinuousQuerier continuous_querier.ContinuousQuerier Config *Config Logger *log.Logger CLFLogger *log.Logger // contains filtered or unexported fields }
Handler represents an HTTP handler for the InfluxDB server.
func NewHandler ¶
NewHandler returns a new instance of handler with routes.
type Response ¶
Response represents a list of statement results.
func (*Response) Error ¶
Error returns the first error from any statement. Returns nil if no errors occurred on any statements.
func (Response) MarshalJSON ¶
MarshalJSON encodes a Response struct into JSON.
func (*Response) UnmarshalJSON ¶
UnmarshalJSON decodes the data into the Response struct
type Route ¶
type Route struct { Name string Method string Pattern string Gzipped bool LoggingEnabled bool HandlerFunc interface{} }
Route specifies how to handle a HTTP verb for a given endpoint.
type Service ¶
type Service struct { Handler *Handler Logger *log.Logger // contains filtered or unexported fields }
Service manages the listener and handler for an HTTP endpoint.
func (*Service) SetLogOutput ¶
SetLogOutput sets the writer to which all logs are written. It must not be called after Open is called.
type Statistics ¶
type Statistics struct { Requests int64 CQRequests int64 QueryRequests int64 WriteRequests int64 PingRequests int64 StatusRequests int64 WriteRequestBytesReceived int64 QueryRequestBytesTransmitted int64 PointsWrittenOK int64 PointsWrittenFail int64 AuthenticationFailures int64 RequestDuration int64 QueryRequestDuration int64 WriteRequestDuration int64 ActiveRequests int64 ActiveWriteRequests int64 ClientErrors int64 ServerErrors int64 }
Statistics maintains statistics for the httpd service.