executewatch

package
v8.17.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 17, 2024 License: Apache-2.0 Imports: 13 Imported by: 4

Documentation

Overview

This API can be used to force execution of the watch outside of its triggering logic or to simulate the watch execution for debugging purposes. For testing and debugging purposes, you also have fine-grained control on how the watch runs. You can execute the watch without executing all of its actions or alternatively by simulating them. You can also force execution by ignoring the watch condition and control whether a watch record would be written to the watch history after execution.

Index

Constants

This section is empty.

Variables

View Source
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 ExecuteWatch

type ExecuteWatch struct {
	// contains filtered or unexported fields
}

func New

This API can be used to force execution of the watch outside of its triggering logic or to simulate the watch execution for debugging purposes. For testing and debugging purposes, you also have fine-grained control on how the watch runs. You can execute the watch without executing all of its actions or alternatively by simulating them. You can also force execution by ignoring the watch condition and control whether a watch record would be written to the watch history after execution.

https://www.elastic.co/guide/en/elasticsearch/reference/current/watcher-api-execute-watch.html

func (*ExecuteWatch) ActionModes added in v8.9.0

func (r *ExecuteWatch) ActionModes(actionmodes map[string]actionexecutionmode.ActionExecutionMode) *ExecuteWatch

ActionModes Determines how to handle the watch actions as part of the watch execution. API name: action_modes

func (*ExecuteWatch) AlternativeInput added in v8.9.0

func (r *ExecuteWatch) AlternativeInput(alternativeinput map[string]json.RawMessage) *ExecuteWatch

AlternativeInput When present, the watch uses this object as a payload instead of executing its own input. API name: alternative_input

func (*ExecuteWatch) Debug

func (r *ExecuteWatch) Debug(debug bool) *ExecuteWatch

Debug Defines whether the watch runs in debug mode. API name: debug

func (ExecuteWatch) Do

func (r ExecuteWatch) Do(providedCtx context.Context) (*Response, error)

Do runs the request through the transport, handle the response and returns a executewatch.Response

func (*ExecuteWatch) ErrorTrace added in v8.14.0

func (r *ExecuteWatch) ErrorTrace(errortrace bool) *ExecuteWatch

ErrorTrace When set to `true` Elasticsearch will include the full stack trace of errors when they occur. API name: error_trace

func (*ExecuteWatch) FilterPath added in v8.14.0

func (r *ExecuteWatch) FilterPath(filterpaths ...string) *ExecuteWatch

FilterPath Comma-separated list of filters in dot notation which reduce the response returned by Elasticsearch. API name: filter_path

func (*ExecuteWatch) Header

func (r *ExecuteWatch) Header(key, value string) *ExecuteWatch

Header set a key, value pair in the ExecuteWatch headers map.

func (*ExecuteWatch) HttpRequest

func (r *ExecuteWatch) HttpRequest(ctx context.Context) (*http.Request, error)

HttpRequest returns the http.Request object built from the given parameters.

func (*ExecuteWatch) Human added in v8.14.0

func (r *ExecuteWatch) Human(human bool) *ExecuteWatch

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 (*ExecuteWatch) Id

func (r *ExecuteWatch) Id(id string) *ExecuteWatch

Id Identifier for the watch. API Name: id

func (*ExecuteWatch) IgnoreCondition added in v8.9.0

func (r *ExecuteWatch) IgnoreCondition(ignorecondition bool) *ExecuteWatch

IgnoreCondition When set to `true`, the watch execution uses the always condition. This can also be specified as an HTTP parameter. API name: ignore_condition

func (ExecuteWatch) Perform added in v8.7.0

func (r ExecuteWatch) Perform(providedCtx context.Context) (*http.Response, error)

Perform runs the http.Request through the provided transport and returns an http.Response.

func (*ExecuteWatch) Pretty added in v8.14.0

func (r *ExecuteWatch) Pretty(pretty bool) *ExecuteWatch

Pretty If set to `true` the returned JSON will be "pretty-formatted". Only use this option for debugging only. API name: pretty

func (*ExecuteWatch) Raw

func (r *ExecuteWatch) Raw(raw io.Reader) *ExecuteWatch

Raw takes a json payload as input which is then passed to the http.Request If specified Raw takes precedence on Request method.

func (*ExecuteWatch) RecordExecution added in v8.9.0

func (r *ExecuteWatch) RecordExecution(recordexecution bool) *ExecuteWatch

RecordExecution When set to `true`, the watch record representing the watch execution result is persisted to the `.watcher-history` index for the current time. In addition, the status of the watch is updated, possibly throttling subsequent executions. This can also be specified as an HTTP parameter. API name: record_execution

func (*ExecuteWatch) Request

func (r *ExecuteWatch) Request(req *Request) *ExecuteWatch

Request allows to set the request property with the appropriate payload.

func (*ExecuteWatch) SimulatedActions added in v8.9.0

func (r *ExecuteWatch) SimulatedActions(simulatedactions *types.SimulatedActions) *ExecuteWatch

API name: simulated_actions

func (*ExecuteWatch) TriggerData added in v8.9.0

func (r *ExecuteWatch) TriggerData(triggerdata *types.ScheduleTriggerEvent) *ExecuteWatch

TriggerData This structure is parsed as the data of the trigger event that will be used during the watch execution API name: trigger_data

func (*ExecuteWatch) Watch added in v8.9.0

func (r *ExecuteWatch) Watch(watch *types.Watch) *ExecuteWatch

Watch When present, this watch is used instead of the one specified in the request. This watch is not persisted to the index and record_execution cannot be set. API name: watch

type NewExecuteWatch

type NewExecuteWatch func() *ExecuteWatch

NewExecuteWatch type alias for index.

func NewExecuteWatchFunc

func NewExecuteWatchFunc(tp elastictransport.Interface) NewExecuteWatch

NewExecuteWatchFunc returns a new instance of ExecuteWatch with the provided transport. Used in the index of the library this allows to retrieve every apis in once place.

type Request

type Request struct {

	// ActionModes Determines how to handle the watch actions as part of the watch execution.
	ActionModes map[string]actionexecutionmode.ActionExecutionMode `json:"action_modes,omitempty"`
	// AlternativeInput When present, the watch uses this object as a payload instead of executing
	// its own input.
	AlternativeInput map[string]json.RawMessage `json:"alternative_input,omitempty"`
	// IgnoreCondition When set to `true`, the watch execution uses the always condition. This can
	// also be specified as an HTTP parameter.
	IgnoreCondition *bool `json:"ignore_condition,omitempty"`
	// RecordExecution When set to `true`, the watch record representing the watch execution result
	// is persisted to the `.watcher-history` index for the current time. In
	// addition, the status of the watch is updated, possibly throttling subsequent
	// executions. This can also be specified as an HTTP parameter.
	RecordExecution  *bool                   `json:"record_execution,omitempty"`
	SimulatedActions *types.SimulatedActions `json:"simulated_actions,omitempty"`
	// TriggerData This structure is parsed as the data of the trigger event that will be used
	// during the watch execution
	TriggerData *types.ScheduleTriggerEvent `json:"trigger_data,omitempty"`
	// Watch When present, this watch is used instead of the one specified in the request.
	// This watch is not persisted to the index and record_execution cannot be set.
	Watch *types.Watch `json:"watch,omitempty"`
}

Request holds the request body struct for the package executewatch

https://github.com/elastic/elasticsearch-specification/blob/2f823ff6fcaa7f3f0f9b990dc90512d8901e5d64/specification/watcher/execute_watch/WatcherExecuteWatchRequest.ts#L28-L79

func NewRequest added in v8.5.0

func NewRequest() *Request

NewRequest returns a Request

func (*Request) FromJSON added in v8.5.0

func (r *Request) FromJSON(data string) (*Request, error)

FromJSON allows to load an arbitrary json into the request structure

type Response added in v8.7.0

type Response struct {
	Id_         string            `json:"_id"`
	WatchRecord types.WatchRecord `json:"watch_record"`
}

Response holds the response body struct for the package executewatch

https://github.com/elastic/elasticsearch-specification/blob/2f823ff6fcaa7f3f0f9b990dc90512d8901e5d64/specification/watcher/execute_watch/WatcherExecuteWatchResponse.ts#L23-L25

func NewResponse added in v8.7.0

func NewResponse() *Response

NewResponse returns a Response

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL