Package opentsdb
Overview ▹
Index ▹
Constants
const (
// DefaultBindAddress is the default address that the service binds to.
DefaultBindAddress = ":4242"
// DefaultDatabase is the default database used for writes.
DefaultDatabase = "opentsdb"
// DefaultRetentionPolicy is the default retention policy used for writes.
DefaultRetentionPolicy = ""
// DefaultConsistencyLevel is the default write consistency level.
DefaultConsistencyLevel = "one"
// DefaultBatchSize is the default OpenTSDB batch size.
DefaultBatchSize = 1000
// DefaultBatchTimeout is the default OpenTSDB batch timeout.
DefaultBatchTimeout = time.Second
// DefaultBatchPending is the default number of batches that can be in the queue.
DefaultBatchPending = 5
// DefaultCertificate is the default location of the certificate used when TLS is enabled.
DefaultCertificate = "/etc/ssl/influxdb.pem"
)
type Config ¶
Config represents the configuration of the OpenTSDB service.
type Config struct {
Enabled bool `toml:"enabled"`
BindAddress string `toml:"bind-address"`
Database string `toml:"database"`
RetentionPolicy string `toml:"retention-policy"`
ConsistencyLevel string `toml:"consistency-level"`
TLSEnabled bool `toml:"tls-enabled"`
Certificate string `toml:"certificate"`
BatchSize int `toml:"batch-size"`
BatchPending int `toml:"batch-pending"`
BatchTimeout toml.Duration `toml:"batch-timeout"`
LogPointErrors bool `toml:"log-point-errors"`
}
func NewConfig ¶
func NewConfig() Config
NewConfig returns a new config for the service.
func (*Config) WithDefaults ¶
func (c *Config) WithDefaults() *Config
WithDefaults takes the given config and returns a new config with any required default values set.
type Handler ¶
Handler is an http.Handler for the OpenTSDB service.
type Handler struct {
Database string
RetentionPolicy string
PointsWriter interface {
WritePoints(database, retentionPolicy string, consistencyLevel models.ConsistencyLevel, points []models.Point) error
}
Logger zap.Logger
// contains filtered or unexported fields
}
func (*Handler) ServeHTTP ¶
func (h *Handler) ServeHTTP(w http.ResponseWriter, r *http.Request)
ServeHTTP handles an HTTP request of the OpenTSDB REST API.
type Service ¶
Service manages the listener and handler for an HTTP endpoint.
type Service struct {
BindAddress string
Database string
RetentionPolicy string
PointsWriter interface {
WritePoints(database, retentionPolicy string, consistencyLevel models.ConsistencyLevel, points []models.Point) error
}
MetaClient interface {
CreateDatabase(name string) (*meta.DatabaseInfo, error)
}
LogPointErrors bool
Logger zap.Logger
// contains filtered or unexported fields
}
func NewService ¶
func NewService(c Config) (*Service, error)
NewService returns a new instance of Service.
func (*Service) Addr ¶
func (s *Service) Addr() net.Addr
Addr returns the listener's address. Returns nil if listener is closed.
func (*Service) Close ¶
func (s *Service) Close() error
Close closes the openTSDB service.
func (*Service) Closed ¶
func (s *Service) Closed() bool
Closed returns true if the service is currently closed.
func (*Service) Open ¶
func (s *Service) Open() error
Open starts the service.
func (*Service) Statistics ¶
func (s *Service) Statistics(tags map[string]string) []models.Statistic
Statistics returns statistics for periodic monitoring.
func (*Service) WithLogger ¶
func (s *Service) WithLogger(log zap.Logger)
WithLogger sets the logger for the service.
type Statistics ¶
Statistics maintains statistics for the subscriber service.
type Statistics struct {
HTTPConnectionsHandled int64
ActiveTelnetConnections int64
HandledTelnetConnections int64
TelnetPointsReceived int64
TelnetBytesReceived int64
TelnetReadError int64
TelnetBadLine int64
TelnetBadTime int64
TelnetBadTag int64
TelnetBadFloat int64
BatchesTransmitted int64
PointsTransmitted int64
BatchesTransmitFail int64
ActiveConnections int64
HandledConnections int64
InvalidDroppedPoints int64
}
ActiveGo 1.8