-
Notifications
You must be signed in to change notification settings - Fork 692
Support OR conditions for search tags and search tag values v2 #6827
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
06f8233
f502a20
9af75f1
6348607
e8e83af
371464d
f3c0f49
001d5ec
18766fb
da1f9da
d21c8a7
40e3e53
d3149de
55d176e
0ec0cdb
e3f07ea
d6babb0
9ef76b4
b4846fb
e583a7c
ed7a695
f8252d1
9781179
59ff266
8db9d5f
2be38f7
30269d9
e683bb9
138ac02
a56474a
c0baf86
2a544f4
06d5d2b
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
|
|
@@ -411,7 +411,7 @@ Parameters: | |||||||||
| Specifies the scope of the tags, this is an optional parameter, if not specified it means all scopes. | ||||||||||
| Default = `all` | ||||||||||
| - `q = (traceql query)` | ||||||||||
| Optional. A TraceQL query to filter tag names by. Currently only works for a single spanset of `&&`ed conditions. For example: `{ span.foo = "bar" && resource.baz = "bat" ...}`. See also [Filtered tag values](#filtered-tag-values). | ||||||||||
| Optional. A TraceQL query to filter tag names by. Supports `&&` and `||` operators within a single spanset. For example: `{ span.foo = "bar" && resource.baz = "bat" }` or `{ span.foo = "bar" || resource.baz = "bat" }`. See also [Filtered tag values](#filtered-tag-values). | ||||||||||
|
||||||||||
| Optional. A TraceQL query to filter tag names by. Supports `&&` and `||` operators within a single spanset. For example: `{ span.foo = "bar" && resource.baz = "bat" }` or `{ span.foo = "bar" || resource.baz = "bat" }`. See also [Filtered tag values](#filtered-tag-values). | |
| Optional. A TraceQL query to filter tag names by. Supports `&&` and `||` operators within a single spanset. For example: `{ span.foo = "bar" && resource.baz = "bat" }` or `{ span.foo = "bar" || resource.baz = "bat" }`. See also [Filtered tag values](#filtered-tag-values). | |
| - `strict = (boolean)` | |
| Optional. Controls how strictly the TraceQL filter is applied when it cannot be fully expanded (for example, when OR-expansion exceeds internal limits). When `strict=true`, the request fails with an error instead of relaxing the filter. When `strict=false` (the default, including when omitted), Tempo returns tag names based on the portion of the filter that can be honored and ignores parts that exceed limits; if the filter cannot be applied at all, the request falls back to returning unfiltered tag names. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
While the writing proposed appears to be okay, is the content correct?
Copilot
AI
Apr 1, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same as for tag names: the V2 tag values endpoint now supports a strict query parameter, but the docs for /api/v2/search/tag/<tag>/values don't list or explain it. Consider adding it to the parameter list and describing how it affects filtering when OR expansion hits the maxConditionGroups cap.
| Optional. A TraceQL query to filter tag values by. Supports `&&` and `||` operators within a single spanset. For example: `{ span.foo = "bar" && resource.baz = "bat" }` or `{ span.foo = "bar" || resource.baz = "bat" }`. Refer to [Filtered tag values](#filtered-tag-values). | |
| Optional. A TraceQL query to filter tag values by. Supports `&&` and `||` operators within a single spanset. For example: `{ span.foo = "bar" && resource.baz = "bat" }` or `{ span.foo = "bar" || resource.baz = "bat" }`. Refer to [Filtered tag values](#filtered-tag-values). | |
| - `strict = (boolean)` | |
| Optional. Controls how the `q` filter behaves when OR expansion exceeds the internal `maxConditionGroups` limit. When `strict=true`, the request fails instead of dropping excess OR conditions; when omitted or `false`, the query is relaxed by ignoring OR branches beyond the limit, which can return approximate results. |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,4 @@ | ||
| overrides: | ||
| defaults: | ||
| read: | ||
| max_condition_groups_per_tag_query: 1 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This changelog section requires entries to be grouped in the fixed category order ([SECURITY], [CHANGE], [FEATURE], [ENHANCEMENT], [BUGFIX]). The newly added [ENHANCEMENT] items are currently placed before existing [CHANGE] entries, which breaks that ordering. Please move the new entry into the [ENHANCEMENT] block after all [CHANGE] and [FEATURE] items in this section.