explain

package
v8.19.0 Latest Latest
Warning

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

Go to latest
Published: Jul 31, 2025 License: Apache-2.0 Imports: 13 Imported by: 4

Documentation

Overview

Explain a document match result. Get information about why a specific document matches, or doesn't match, a query. It computes a score explanation for a query and a specific document.

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 Explain

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

func New

Explain a document match result. Get information about why a specific document matches, or doesn't match, a query. It computes a score explanation for a query and a specific document.

https://www.elastic.co/guide/en/elasticsearch/reference/current/search-explain.html

func (*Explain) AnalyzeWildcard

func (r *Explain) AnalyzeWildcard(analyzewildcard bool) *Explain

AnalyzeWildcard If `true`, wildcard and prefix queries are analyzed. This parameter can be used only when the `q` query string parameter is specified. API name: analyze_wildcard

func (*Explain) Analyzer

func (r *Explain) Analyzer(analyzer string) *Explain

Analyzer The analyzer to use for the query string. This parameter can be used only when the `q` query string parameter is specified. API name: analyzer

func (*Explain) DefaultOperator

func (r *Explain) DefaultOperator(defaultoperator operator.Operator) *Explain

DefaultOperator The default operator for query string query: `AND` or `OR`. This parameter can be used only when the `q` query string parameter is specified. API name: default_operator

func (*Explain) Df

func (r *Explain) Df(df string) *Explain

Df The field to use as default where no field prefix is given in the query string. This parameter can be used only when the `q` query string parameter is specified. API name: df

func (Explain) Do

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

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

func (*Explain) ErrorTrace added in v8.14.0

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

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

func (*Explain) FilterPath added in v8.14.0

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

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

func (*Explain) Header

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

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

func (*Explain) HttpRequest

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

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

func (*Explain) Human added in v8.14.0

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

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 (*Explain) Lenient

func (r *Explain) Lenient(lenient bool) *Explain

Lenient If `true`, format-based query failures (such as providing text to a numeric field) in the query string will be ignored. This parameter can be used only when the `q` query string parameter is specified. API name: lenient

func (Explain) Perform added in v8.7.0

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

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

func (*Explain) Preference

func (r *Explain) Preference(preference string) *Explain

Preference The node or shard the operation should be performed on. It is random by default. API name: preference

func (*Explain) Pretty added in v8.14.0

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

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

func (*Explain) Q

func (r *Explain) Q(q string) *Explain

Q The query in the Lucene query string syntax. API name: q

func (*Explain) Query added in v8.9.0

func (r *Explain) Query(query *types.Query) *Explain

Query Defines the search definition using the Query DSL. API name: query

func (*Explain) Raw

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

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

func (*Explain) Request

func (r *Explain) Request(req *Request) *Explain

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

func (*Explain) Routing

func (r *Explain) Routing(routing string) *Explain

Routing A custom value used to route operations to a specific shard. API name: routing

func (*Explain) SourceExcludes_

func (r *Explain) SourceExcludes_(fields ...string) *Explain

SourceExcludes_ A comma-separated list of source fields to exclude from the response. You can also use this parameter to exclude fields from the subset specified in `_source_includes` query parameter. If the `_source` parameter is `false`, this parameter is ignored. API name: _source_excludes

func (*Explain) SourceIncludes_

func (r *Explain) SourceIncludes_(fields ...string) *Explain

SourceIncludes_ A comma-separated list of source fields to include in the response. If this parameter is specified, only these source fields are returned. You can exclude fields from this subset using the `_source_excludes` query parameter. If the `_source` parameter is `false`, this parameter is ignored. API name: _source_includes

func (*Explain) Source_

func (r *Explain) Source_(sourceconfigparam string) *Explain

Source_ `True` or `false` to return the `_source` field or not or a list of fields to return. API name: _source

func (*Explain) StoredFields

func (r *Explain) StoredFields(fields ...string) *Explain

StoredFields A comma-separated list of stored fields to return in the response. API name: stored_fields

type NewExplain

type NewExplain func(index, id string) *Explain

NewExplain type alias for index.

func NewExplainFunc

func NewExplainFunc(tp elastictransport.Interface) NewExplain

NewExplainFunc returns a new instance of Explain 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 {

	// Query Defines the search definition using the Query DSL.
	Query *types.Query `json:"query,omitempty"`
}

Request holds the request body struct for the package explain

https://github.com/elastic/elasticsearch-specification/blob/470b4b9aaaa25cae633ec690e54b725c6fc939c7/specification/_global/explain/ExplainRequest.ts#L26-L125

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 {
	Explanation *types.ExplanationDetail `json:"explanation,omitempty"`
	Get         *types.InlineGet         `json:"get,omitempty"`
	Id_         string                   `json:"_id"`
	Index_      string                   `json:"_index"`
	Matched     bool                     `json:"matched"`
}

Response holds the response body struct for the package explain

https://github.com/elastic/elasticsearch-specification/blob/470b4b9aaaa25cae633ec690e54b725c6fc939c7/specification/_global/explain/ExplainResponse.ts#L23-L31

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