Skip to content

Bump to version 0.6.0#176

Open
Sh4d1 wants to merge 14 commits intomainfrom
release/0.6.0
Open

Bump to version 0.6.0#176
Sh4d1 wants to merge 14 commits intomainfrom
release/0.6.0

Conversation

@Sh4d1
Copy link
Copy Markdown
Collaborator

@Sh4d1 Sh4d1 commented Apr 20, 2026

No description provided.

Sh4d1 and others added 14 commits April 29, 2026 02:13
Signed-off-by: Patrik Cyvoct <patrik@ptrk.io>
Signed-off-by: Patrik Cyvoct <patrik@ptrk.io>
…verlay

Signed-off-by: Patrik Cyvoct <patrik@ptrk.io>
Covers: configured logMessageField (single and multiple fields),
missing field handling, empty dataframes, log-volume skip, no-refId
skip, and the case where no logMessageField is configured (no
synthetic field inserted).

Refs #165
When logMessageField is unconfigured or its value is empty for a row,
build a display line by trying well-known OTEL fields (body.message,
attributes.message) then falling back to a key=value summary of
document fields. Metadata fields (pod info, node labels, sort, etc.)
are excluded from the summary and attributes. prefixes are stripped
for readability.

The fallback is per-row so mixed log types (structured logger output,
lograge requests, raw nginx lines) each show the best available
content.

Refs #165
Generate quoted phrase filters for text values that contain whitespace or
punctuation, matching manually-entered Quickwit queries such as
service_name:"auth-api" and attributes.grpc_message:"...".

Keep unquoted term filters only for simple token values and escape term
values correctly.

Improve filter autocomplete with fuzzy matching for keys and values, and pass
previous complete filters into later value lookups so suggestions narrow
progressively.

Add tests for phrase rendering, punctuated values, term escaping, fuzzy
matching, and prior-filter selection.

Signed-off-by: Patrik Cyvoct <patrik@ptrk.io>
Documents how the = operator wraps array values like ["paperclip"]
in quotes, producing phrase queries that don't match indexed array
elements. Tests cover all operator types and edge cases.

Refs #179
When Grafana passes a stringified array like ["paperclip"] as a filter
value, detect it as JSON array and generate term queries on the
individual elements instead of a phrase query on the literal string.

Single element: attributes.tags:paperclip
Multiple elements: attributes.tags:paperclip OR attributes.tags:stapler
Empty array: no-op

Fixes #179
Single-element arrays still produce a simple term query.
Multi-element arrays now produce field:IN ["a" "b"] which maps
to tantivy's TermSetQuery — cleaner than chaining OR clauses.

Refs #179
Tantivy indexes array elements as individual terms with no way to
match on array structure. Document why IN (match any) is used for
multi-element arrays.
Values like ["foo bar"] or ["foo:bar"] produced broken queries
(e.g. field:foo bar) because the single-element path emitted bare
terms. Now all array element values are quoted as phrase queries,
consistent with the multi-element IN path.
- render Quickwit-safe filters for text phrases, simple text terms, JSON arrays, numeric arrays, boolean arrays, and scalar numeric/boolean values
- fix quick-filter toggle behavior so filter-in/filter-out matches by operator and replaces opposite filters instead of adding duplicates
- avoid mutating query filter objects when adding or toggling quick filters
- add configurable filter autocomplete limit, defaulting to 1000 and supporting 0 for no terms limit
- apply autocomplete limit to tag values and field autocomplete requests
- add filter chain mode datasource option: no chain, sampled chain, or full chain
- dedupe tag keys when fields expose multiple capabilities
- improve template multi-value interpolation for Quickwit by inferring field context and avoiding bare IN fallbacks
- add focused tests for filter rendering, quick-filter toggles, autocomplete limits, chain modes, and template interpolation

Signed-off-by: Patrik Cyvoct <patrik@ptrk.io>
Signed-off-by: Patrik Cyvoct <patrik@ptrk.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants