Documentation
¶
Overview ¶
Downsample an index. Aggregate a time series (TSDS) index and store pre-computed statistical summaries (`min`, `max`, `sum`, `value_count` and `avg`) for each metric field grouped by a configured time interval. For example, a TSDS index that contains metrics sampled every 10 seconds can be downsampled to an hourly index. All documents within an hour interval are summarized and stored as a single document in the downsample index.
NOTE: Only indices in a time series data stream are supported. Neither field nor document level security can be defined on the source index. The source index must be read only (`index.blocks.write: true`).
Index ¶
- Variables
- type Downsample
- func (r Downsample) Do(providedCtx context.Context) (Response, error)
- func (r *Downsample) ErrorTrace(errortrace bool) *Downsample
- func (r *Downsample) FilterPath(filterpaths ...string) *Downsample
- func (r *Downsample) FixedInterval(durationlarge string) *Downsample
- func (r *Downsample) Header(key, value string) *Downsample
- func (r *Downsample) HttpRequest(ctx context.Context) (*http.Request, error)
- func (r *Downsample) Human(human bool) *Downsample
- func (r Downsample) Perform(providedCtx context.Context) (*http.Response, error)
- func (r *Downsample) Pretty(pretty bool) *Downsample
- func (r *Downsample) Raw(raw io.Reader) *Downsample
- func (r *Downsample) Request(req *Request) *Downsample
- type NewDownsample
- type Request
- type Response
Constants ¶
This section is empty.
Variables ¶
var ErrBuildPath = errors.New("cannot build path, check for missing path parameters")
ErrBuildPath is returned in case of missing parameters within the build of the request.
Functions ¶
This section is empty.
Types ¶
type Downsample ¶
type Downsample struct {
// contains filtered or unexported fields
}
func New ¶
func New(tp elastictransport.Interface) *Downsample
Downsample an index. Aggregate a time series (TSDS) index and store pre-computed statistical summaries (`min`, `max`, `sum`, `value_count` and `avg`) for each metric field grouped by a configured time interval. For example, a TSDS index that contains metrics sampled every 10 seconds can be downsampled to an hourly index. All documents within an hour interval are summarized and stored as a single document in the downsample index.
NOTE: Only indices in a time series data stream are supported. Neither field nor document level security can be defined on the source index. The source index must be read only (`index.blocks.write: true`).
https://www.elastic.co/docs/api/doc/elasticsearch/v9/operation/operation-indices-downsample
func (Downsample) Do ¶
func (r Downsample) Do(providedCtx context.Context) (Response, error)
Do runs the request through the transport, handle the response and returns a downsample.Response
func (*Downsample) ErrorTrace ¶
func (r *Downsample) ErrorTrace(errortrace bool) *Downsample
ErrorTrace When set to `true` Elasticsearch will include the full stack trace of errors when they occur. API name: error_trace
func (*Downsample) FilterPath ¶
func (r *Downsample) FilterPath(filterpaths ...string) *Downsample
FilterPath Comma-separated list of filters in dot notation which reduce the response returned by Elasticsearch. API name: filter_path
func (*Downsample) FixedInterval ¶
func (r *Downsample) FixedInterval(durationlarge string) *Downsample
The interval at which to aggregate the original time series index. API name: fixed_interval
func (*Downsample) Header ¶
func (r *Downsample) Header(key, value string) *Downsample
Header set a key, value pair in the Downsample headers map.
func (*Downsample) HttpRequest ¶
HttpRequest returns the http.Request object built from the given parameters.
func (*Downsample) Human ¶
func (r *Downsample) Human(human bool) *Downsample
Human When set to `true` will return statistics in a format suitable for humans. For example `"exists_time": "1h"` for humans and `"eixsts_time_in_millis": 3600000` for computers. When disabled the human readable values will be omitted. This makes sense for responses being consumed only by machines. API name: human
func (Downsample) Perform ¶
Perform runs the http.Request through the provided transport and returns an http.Response.
func (*Downsample) Pretty ¶
func (r *Downsample) Pretty(pretty bool) *Downsample
Pretty If set to `true` the returned JSON will be "pretty-formatted". Only use this option for debugging only. API name: pretty
func (*Downsample) Raw ¶
func (r *Downsample) Raw(raw io.Reader) *Downsample
Raw takes a json payload as input which is then passed to the http.Request If specified Raw takes precedence on Request method.
func (*Downsample) Request ¶
func (r *Downsample) Request(req *Request) *Downsample
Request allows to set the request property with the appropriate payload.
type NewDownsample ¶
type NewDownsample func(index, targetindex string) *Downsample
NewDownsample type alias for index.
func NewDownsampleFunc ¶
func NewDownsampleFunc(tp elastictransport.Interface) NewDownsample
NewDownsampleFunc returns a new instance of Downsample with the provided transport. Used in the index of the library this allows to retrieve every apis in once place.
type Request ¶
type Request = types.DownsampleConfig
Request holds the request body struct for the package downsample