Add `_name` to ES queries to improve readability
What does this MR do?
This MR adds a new helper class: Elastic::Latest::QueryFactory
that
can be used to generate semantic names for queries.
In this MR, a hierarchical pattern has been used, to correlate different part of the queries, such as:
issue:match:search_query
issue:related:project
doc:is_a:blob
This MR sets a lot of names across the query parts, so it is expected that some of these names might be sub-optimal.
One of the interesting aspect of this change is that Elasticsearch will set a matched_queries
metadata on each results, such as it is possible to correlate why the result is part of the result set. This might be helpful debugging information that we could potentially expose somewhere.
Screenshots
Does this MR meet the acceptance criteria?
Conformity
-
Changelog entry -
Documentation (if required) -
Code review guidelines -
Merge request performance guidelines -
Style guides -
Database guides -
Separation of EE specific content
Availability and Testing
-
Review and add/update tests for this feature/bug. Consider all test levels. See the Test Planning Process. -
Tested in all supported browsers -
Informed Infrastructure department of a default or new setting change, if applicable per definition of done
Security
If this MR contains changes to processing or storing of credentials or tokens, authorization and authentication methods and other items described in the security review guidelines:
-
Label as security and @ mention @gitlab-com/gl-security/appsec
-
The MR includes necessary changes to maintain consistency between UI, API, email, or other methods -
Security reports checked/validated by a reviewer from the AppSec team
Closes #233844 (closed)