Documentation
¶
Overview ¶
Kapacitor HTTP API client written in Go
Index ¶
- Constants
- type Client
- func (c *Client) CreateReplay(opt CreateReplayOptions) (Replay, error)
- func (c *Client) CreateTask(opt CreateTaskOptions) (Task, error)
- func (c *Client) DeleteRecording(link Link) error
- func (c *Client) DeleteReplay(link Link) error
- func (c *Client) DeleteTask(link Link) error
- func (c *Client) ListRecordings(opt *ListRecordingsOptions) ([]Recording, error)
- func (c *Client) ListReplays(opt *ListReplaysOptions) ([]Replay, error)
- func (c *Client) ListTasks(opt *ListTasksOptions) ([]Task, error)
- func (c *Client) LogLevel(level string) error
- func (c *Client) Ping() (time.Duration, string, error)
- func (c *Client) RecordBatch(opt RecordBatchOptions) (Recording, error)
- func (c *Client) RecordQuery(opt RecordQueryOptions) (Recording, error)
- func (c *Client) RecordStream(opt RecordStreamOptions) (Recording, error)
- func (c *Client) Recording(link Link) (Recording, error)
- func (c *Client) RecordingLink(id string) Link
- func (c *Client) Replay(link Link) (Replay, error)
- func (c *Client) ReplayLink(id string) Link
- func (c *Client) Task(link Link, opt *TaskOptions) (Task, error)
- func (c *Client) TaskLink(id string) Link
- func (c *Client) TaskOutput(link Link, name string) (*influxql.Result, error)
- func (c *Client) UpdateTask(link Link, opt UpdateTaskOptions) error
- type Clock
- type Config
- type CreateReplayOptions
- type CreateTaskOptions
- type DBRP
- type ExecutionStats
- type Link
- type ListRecordingsOptions
- type ListReplaysOptions
- type ListTasksOptions
- type LogLevelOptions
- type RecordBatchOptions
- type RecordQueryOptions
- type RecordStreamOptions
- type Recording
- type Relation
- type Replay
- type Status
- type Task
- type TaskOptions
- type TaskStatus
- type TaskType
- type UpdateTaskOptions
Constants ¶
const DefaultUserAgent = "KapacitorClient"
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
Basic HTTP client
func (*Client) CreateReplay ¶
func (c *Client) CreateReplay(opt CreateReplayOptions) (Replay, error)
Replay a recording for a task.
func (*Client) CreateTask ¶
func (c *Client) CreateTask(opt CreateTaskOptions) (Task, error)
Create a new task. Errors if the task already exists.
func (*Client) DeleteRecording ¶
Delete a recording.
func (*Client) DeleteReplay ¶
Delete a replay. This will cancel a running replay.
func (*Client) ListRecordings ¶
func (c *Client) ListRecordings(opt *ListRecordingsOptions) ([]Recording, error)
Get information about recordings. If rids is empty than all recordings are returned.
func (*Client) ListReplays ¶
func (c *Client) ListReplays(opt *ListReplaysOptions) ([]Replay, error)
Get information about replays. If rids is empty than all replays are returned.
func (*Client) ListTasks ¶
func (c *Client) ListTasks(opt *ListTasksOptions) ([]Task, error)
Get tasks.
func (*Client) LogLevel ¶
Set the logging level. Level must be one of DEBUG, INFO, WARN, ERROR, or OFF
func (*Client) Ping ¶
Ping the server for a response. Ping returns how long the request took, the version of the server it connected to, and an error if one occurred.
func (*Client) RecordBatch ¶
func (c *Client) RecordBatch(opt RecordBatchOptions) (Recording, error)
Record the batch queries for a task. Returns once the recording is started.
func (*Client) RecordQuery ¶
func (c *Client) RecordQuery(opt RecordQueryOptions) (Recording, error)
Record the results of a query. The recordingType must be one of "stream", or "batch". Returns once the recording is started.
func (*Client) RecordStream ¶
func (c *Client) RecordStream(opt RecordStreamOptions) (Recording, error)
Record the stream for a task. Returns once the recording is started.
func (*Client) RecordingLink ¶
func (*Client) ReplayLink ¶
func (*Client) Task ¶
func (c *Client) Task(link Link, opt *TaskOptions) (Task, error)
Get information about a task. Options can be nil and the default options will be used. By default the DOT content will use attributes for stats. Use DotView="labels" to generate a purley labels based DOT content, which can accurately be rendered but is less readable. By default the TICKscript contents are formatted, use ScriptFormat="raw" to return the TICKscript unmodified.
func (*Client) TaskOutput ¶
func (*Client) UpdateTask ¶
func (c *Client) UpdateTask(link Link, opt UpdateTaskOptions) error
Update an existing task. Only fields that are not their default value will be updated.
type Config ¶
type Config struct {
// The URL of the Kapacitor server.
URL string
// Timeout for API requests, defaults to no timeout.
Timeout time.Duration
// UserAgent is the http User Agent, defaults to "KapacitorClient".
UserAgent string
// InsecureSkipVerify gets passed to the http client, if true, it will
// skip https certificate verification. Defaults to false.
InsecureSkipVerify bool
// TLSConfig allows the user to set their own TLS config for the HTTP
// Client. If set, this option overrides InsecureSkipVerify.
TLSConfig *tls.Config
}
HTTP configuration for connecting to Kapacitor
type CreateReplayOptions ¶
type CreateReplayOptions struct {
ID string `json:"id"`
Recording string `json:"recording"`
Task string `json:"task"`
RecordingTime bool `json:"recording-time"`
Clock Clock `json:"clock"`
}
func (*CreateReplayOptions) Default ¶
func (o *CreateReplayOptions) Default()
type CreateTaskOptions ¶
type CreateTaskOptions struct {
ID string `json:"id,omitempty"`
Type TaskType `json:"type,omitempty"`
DBRPs []DBRP `json:"dbrps,omitempty"`
TICKscript string `json:"script,omitempty"`
Status TaskStatus `json:"status,omitempty"`
}
type ExecutionStats ¶
type ExecutionStats struct {
// Summary stats about the entire task
TaskStats map[string]interface{} `json:"task-stats"`
// Stats for each node in the task
NodeStats map[string]map[string]interface{} `json:"node-stats"`
}
Statistics about the execution of a task.
type ListRecordingsOptions ¶
func (*ListRecordingsOptions) Default ¶
func (o *ListRecordingsOptions) Default()
func (*ListRecordingsOptions) Values ¶
func (o *ListRecordingsOptions) Values() *url.Values
type ListReplaysOptions ¶
func (*ListReplaysOptions) Default ¶
func (o *ListReplaysOptions) Default()
func (*ListReplaysOptions) Values ¶
func (o *ListReplaysOptions) Values() *url.Values
type ListTasksOptions ¶
type ListTasksOptions struct {
TaskOptions
Pattern string
Fields []string
Offset int
Limit int
}
func (*ListTasksOptions) Default ¶
func (o *ListTasksOptions) Default()
func (*ListTasksOptions) Values ¶
func (o *ListTasksOptions) Values() *url.Values
type LogLevelOptions ¶
type LogLevelOptions struct {
Level string `json:"level"`
}
type RecordBatchOptions ¶
type RecordQueryOptions ¶
type RecordStreamOptions ¶
type Recording ¶
type Recording struct {
Link Link `json:"link"`
ID string `json:"id"`
Type TaskType `json:"type"`
Size int64 `json:"size"`
Date time.Time `json:"date"`
Error string `json:"error"`
Status Status `json:"status"`
Progress float64 `json:"progress"`
}
Information about a recording.
type Replay ¶
type Replay struct {
Link Link `json:"link"`
ID string `json:"id"`
Task string `json:"task"`
Recording string `json:"recording"`
RecordingTime bool `json:"recording-time"`
Clock Clock `json:"clock"`
Date time.Time `json:"date"`
Error string `json:"error"`
Status Status `json:"status"`
Progress float64 `json:"progress"`
}
Information about a replay.
type Task ¶
type Task struct {
Link Link `json:"link"`
ID string `json:"id"`
Type TaskType `json:"type"`
DBRPs []DBRP `json:"dbrps"`
TICKscript string `json:"script"`
Dot string `json:"dot"`
Status TaskStatus `json:"status"`
Executing bool `json:"executing"`
Error string `json:"error"`
ExecutionStats ExecutionStats `json:"stats"`
Created time.Time `json:"created"`
Modified time.Time `json:"modified"`
LastEnabled time.Time `json:"last-enabled,omitempty"`
}
A Task plus its read-only attributes.
type TaskOptions ¶
func (*TaskOptions) Default ¶
func (o *TaskOptions) Default()
func (*TaskOptions) Values ¶
func (o *TaskOptions) Values() *url.Values
type TaskStatus ¶
type TaskStatus int
const ( Disabled TaskStatus = 1 Enabled TaskStatus = 2 )
func (TaskStatus) MarshalText ¶
func (ts TaskStatus) MarshalText() ([]byte, error)
func (TaskStatus) String ¶
func (ts TaskStatus) String() string
func (*TaskStatus) UnmarshalText ¶
func (ts *TaskStatus) UnmarshalText(text []byte) error
type UpdateTaskOptions ¶
type UpdateTaskOptions struct {
Type TaskType `json:"type,omitempty"`
DBRPs []DBRP `json:"dbrps,omitempty"`
TICKscript string `json:"script,omitempty"`
Status TaskStatus `json:"status,omitempty"`
}