Documentation ¶
Index ¶
- Constants
- type Client
- type ClientOptionFunc
- func WithCACerts(certs []string) ClientOptionFunc
- func WithDatabase(db string) ClientOptionFunc
- func WithReadTimeout(timeout string) ClientOptionFunc
- func WithSSL(ssl bool) ClientOptionFunc
- func WithSessionTimeout(timeout string) ClientOptionFunc
- func WithURI(uri string) ClientOptionFunc
- func WithWriteTimeout(timeout string) ClientOptionFunc
- type Config
- type Reader
- type RethinkDB
- type Session
- type Writer
Constants ¶
const ( // DefaultURI is the default endpoint for RethinkDB on the local machine. // Primarily used when initializing a new Client without a specific URI. DefaultURI = "rethinkdb://127.0.0.1:28015/test" // DefaultTimeout is the default time.Duration used if one is not provided for options // that pertain to timeouts. DefaultTimeout = 10 * time.Second // DefaultDatabase used for the connection options DefaultDatabase = "test" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Client creates and holds the session to RethinkDB
func NewClient ¶
func NewClient(options ...ClientOptionFunc) (*Client, error)
NewClient creates a new client to work with RethinkDB.
The caller can configure the new client by passing configuration options to the func.
Example:
client, err := NewClient( WithURI("rethinkdb://localhost:28015"), WithTimeout("30s"))
If no URI is configured, it uses DefaultURI.
An error is also returned when some configuration option is invalid
type ClientOptionFunc ¶
ClientOptionFunc is a function that configures a Client. It is used in NewClient.
func WithCACerts ¶
func WithCACerts(certs []string) ClientOptionFunc
WithCACerts configures the RootCAs for the underlying TLS connection
func WithDatabase ¶
func WithDatabase(db string) ClientOptionFunc
WithDatabase configures the database to use for the connection.
func WithReadTimeout ¶
func WithReadTimeout(timeout string) ClientOptionFunc
WithReadTimeout overrides the DefaultTimeout and should be parseable by time.ParseDuration
func WithSSL ¶
func WithSSL(ssl bool) ClientOptionFunc
WithSSL configures the database connection to connect via TLS.
func WithSessionTimeout ¶
func WithSessionTimeout(timeout string) ClientOptionFunc
WithSessionTimeout overrides the DefaultTimeout and should be parseable by time.ParseDuration
func WithURI ¶
func WithURI(uri string) ClientOptionFunc
WithURI defines the full connection string of the RethinkDB database.
func WithWriteTimeout ¶
func WithWriteTimeout(timeout string) ClientOptionFunc
WithWriteTimeout overrides the DefaultTimeout and should be parseable by time.ParseDuration
type Config ¶
type Config struct { URI string `json:"uri" doc:"the uri to connect to, in the form rethink://user:password@host.example:28015/database"` Namespace string `json:"namespace" doc:"rethink namespace to read/write"` Timeout string `json:"timeout" doc:"timeout for establishing connection, format must be parsable by time.ParseDuration and defaults to 10s"` Tail bool `json:"tail" doc:"if true, the RethinkDB table will be monitored for changes after copying the namespace"` SSL bool `json:"ssl" doc:"enable TLS connection"` CACerts []string `json:"cacerts" doc:"array of root CAs to use in order to verify the server certificates"` }
Config provides custom configuration options for the RethinkDB adapter
type Reader ¶
type Reader struct {
// contains filtered or unexported fields
}
Reader fulfills the client.Reader interface for use with both copying and tailing a RethinkDB database.
func (*Reader) Read ¶
func (r *Reader) Read(filterFn client.NsFilterFunc) client.MessageChanFunc
type RethinkDB ¶
type RethinkDB struct {
// contains filtered or unexported fields
}
RethinkDB is an adaptor that writes metrics to rethinkdb (http://rethinkdb.com/) An open-source distributed database
func (*RethinkDB) Connect ¶
Connect tests the connection and if successful, connects to the database
func (*RethinkDB) Description ¶
Description for rethinkdb adaptor
func (*RethinkDB) SampleConfig ¶
SampleConfig for rethinkdb adaptor