* fix: enrich attributes regardless if it is materialized
* feat: take care of same key name with different type and datatype
* fix: makeLinks updated with new logic for logs
* fix: clean up PrepareFilters and make it generic
* feat: logsV4 initial refactoring
* feat: filter_query builder with tests added
* feat: all functions of v4 refactored
* fix: tests fixed
* feat: logs list API, logic update for better perf
* feat: integrate v4 qb
* fix: pass flag
* fix: update select for table panel
* fix: tests updated with better examples of limit and group by
* fix: resource filter support in live tail
* fix: v4 livetail api
* fix: changes for casting pointer value
* fix: reader options updated
* feat: cleanup and use flag
* feat: restrict new list api to single query
* fix: move getTsRanges to utils
* fix: address pr comments
* feat: logsV4 initial refactoring
* feat: filter_query builder with tests added
* feat: all functions of v4 refactored
* fix: tests fixed
* fix: update select for table panel
* fix: tests updated with better examples of limit and group by
* fix: resource filter support in live tail
---------
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
* chore: put together helper for fetching values for multiple attributes
* chore: poc: use helper for filter suggestions
* chore: add a working impl for getting attrib values for multiple attributes
* chore: start updating integration test to account for new approach for getting log attrib values
* chore: use a global zap logger in filter suggestion tests
* chore: fix attrib values clickhouse query expectation
* chore: only query values for actual attributes when generating example queries
* chore: update clickhouse-go-mock
* chore: cleanup: separate params for attributesLimit and examplesLimit for filter suggestions
* chore: some test cleanup
* chore: some more cleanup
* chore: some more cleanup
---------
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
* feat: get query progress tracker started
* feat: flesh out query progress test some more and get first few assertions passing
* chore: flesh out query tracker tests and impl some more
* feat: add impl for QueryTracker.Subscribe
* feat: send latest update if available on subscription
* feat: broadcast query progress to all subscribers on update
* feat: finish plumbing query tracker happy path
* feat: finish with v0 impl for query progress tracker
* chore: some cleanup of query progress tracker
* feat: hook up query progress tracking for queryRangeV3
* feat: impl for query progress websocket API handler
* feat: implement Hijacker iface for loggingResponseWriter for websocket upgrades
* chore: some cleanup to query progress websocket API handler
* chore: some cleanup
* chore: move query progress impl into its own subpackage
* chore: separate in-memory tracker impl from interface
* chore: some more cleanup of in memory tracker
* chore: some more cleanup of query progress tracker
* chore: some final cleanups
* chore: stash initial work with API signature
* chore: put together setup for integration testing filter suggestions
* feat: filter suggestions: suggest attribs using existing autocomplete logic
* chore: filter suggestions test: add expectation for example queries
* feat: filter suggestions: default suggestions when data yet to be received
* feat: finish plumbing basic example queries
* chore: add test for filter suggestions with an existing query
* feat: filter suggestions: don't suggest attribs already included in existing filter
* chore: generate example queries by including existing filter first
* chore: upgrade ClickHouse-go-mock
* chore: some cleanup of reader.GetQBFilterSuggestionsForLogs
* chore: some cleanup of filter suggestion tests
* chore: some cleanup to http handler and request parsing logic for filter suggestions
* chore: remove expectation that attrib suggestions won't contain attribs already used in filter
* fix: use proper indexes for full text search
* fix: tests updated
* feat: lower support only for body and not attributes
* fix: remove default tolower
* fix: add comment for json key split
* fix: remove ilike only for body searches
* fix: minor fixes
* fix: minor fixes
* feat: support cache in logs
* fix: revert fluxinterval changes
* feat: support for limit queries
* feat: support for formula
* fix: refractor code and don't return all points
* fix: add nil params check
* fix: error handling updated
* fix: start and end params fix
* chore: rename model.GetLogsResponse -> model.SignozLog for use in both requests and responses
* feat: add test for simulating log pipelines processing
* feat: get pipeline preview tests passing
* chore: cleanup
From the Go specification [1]:
"1. For a nil slice, the number of iterations is 0."
"3. If the map is nil, the number of iterations is 0."
Therefore, an additional nil check for before the loop is unnecessary.
[1]: https://go.dev/ref/spec#For_range
Signed-off-by: Eng Zer Jun <engzerjun@gmail.com>
* chore: use v3.Filterset as pipeline filters in logparsing pipelines integration tests
* chore: get logparsing integration tests passing with filterset based pipeline
* chore: get all other breaking tests passing
* chore: move models.logparsingpipeline to logparsingpipeline.model
* chore: implement Valuer and Scanner interfaces for v3.FilterSet