* refactor: conditional based apdex on metrics and trace query range
* chore: add invalid float conversion
* Revert "refactor: conditional based apdex on metrics and trace query range"
This reverts commit ca44a7aedd9d5635fe28c65f1608f4822a6bf204.
* refactor: added servicename to the query params
---------
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
* chore: update BuilderQuery struct and add PrepareTimeseriesFilterQuery
* chore: add prepare query for cumulative/unspecified timeseries
* chore: add prepare query for delta/unspecified timeseries
* chore: update group by to work with 23.11+
* chore: fix test
---------
Co-authored-by: Nityananda Gohain <nityanandagohain@gmail.com>
* chore: panic if agent config recommendation can't be generated
* chore: add case with coalesce op in field nil check generation tests
* fix: ignore expr ast member nodes that contain coalesce op in them
* chore: add test validating contains and ncontains in pipeline filter are case insensitive
* chore: qb2expr: translate contains and ncontains to case insensitive comparison
* chore: minor cleanup
* chore: add test validating that using paths like attributes["http.method"] works
* chore: refactor nil checks on processor fields generated for pipelines
* chore: get nil checks working on paths like attributes["http.method"]
* chore: use parsed AST for generating nil checks for add operator value expressions
* chore: some cleanup
* chore: some more cleanup
* chore: some more cleanup
* chore: some more cleanup
---------
Co-authored-by: Nityananda Gohain <nityanandagohain@gmail.com>
* fix: dot support
* fix: column name updated for materialized columns
* fix: tests updated
* fix: comments updated
* fix: enrichment test updated
* fix: dont return underscore fields in the fields API
* fix: update fields function changed to support default instead of materialized
* fix: updated how formulas are built and test added
* fix: don't create index for bool attributes
* fix: support for limit queries updated
* chore: add test validating pipeline config containing dollar works
* chore: collector simulator: use fileprovider with expandconverter like actual collector
* chore: get tests passing
* chore: take a configGenerator func in simulation and unify config generation logic
* fix: escape $ in config generated for log pipelines
* chore: update test helper for making logs
* chore: add happy case test for severity parser
* feat: get severity parsing processor working and add more happy path tests
* chore: add test for validating severity parser doesn't spam collector logs
* chore: add if condition to generated severity_parser operators
* chore: add postablePipeline validation for severity parser
* chore: minor cleanup in tests
* chore: allow trace and fatal in severity mappings
* chore: relocate tests for trace and grok parsing processor
* chore: add test for timestamp parsing processor
* feat: update PipelineOperator model for time parser fields and get tests passing
* chore: add test cases for validating time parser fails silently on mismatched logs
* chore: add helper for generating regex for strptime layouts
* feat: time_parser ignore logs whose parseFrom value doesn't match strptime layout
* chore: escape regex special chars if any in the layout string before preparing regex
* chore: add operator.If on time_parser when using layout type epoch
* chore: finish up with operator.If on time_parser for layout type
* chore: postable pipeline validation for time parser
* chore: some cleanup
* chore: some more cleanup
* chore: add validation for strptime layouts in postable pipelines
---------
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
* chore: logs pipelines: add test for validating workaround for working with dots in keys
* fix: temp workaround for supporting pipeline filters using names with dots converted to underscore
* chore: add test validating collector doesn't spam logs for string ops on missing attributes
* fix: pipelines filter: check if attrib is not nil before running string operator
* chore: do a nil check for all but == and != ops
* fix: improve user telemetry
- move GetEmailFromJwt to common function
- update AttachJwtToContext() to use standard way of attaching value to context
- update userEmail in every possible sendEvent call
- send groupId in sendEvent call for SaaS operator analytics
* chore: added DEFAULT_CLOUD_EMAIL const
* chore: add AttachJwtToContext to analytics middleware
* test: added AttachJwtToContext to logs pipelines
* chore: return warning logs too from collector simulator
* chore: also return collector logs in preview API response to help with debugging
---------
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
* chore: experiment with using a tmp file for getting collector logs in simulator
* chore: collector simulator: cleaned up tmp file based collector logs capture
* chore: add test validating regex proc doesn't error for logs that dont match
* chore: return collector error logs from pipeline preview API
* chore: add test validating regex processor doesn't log errors for mismatched logs
* chore: add if condition for generated regex processors
* chore: add test case validating json parser ignore non json logs
* chore: add if condition for operator generated for json parser
* chore: add test case validating move processor ignores logs with missing field
* chore: add if condition for operator generated for move
* chore: add test case validating copy processor ignores logs with missing field
* chore: add if condition for operator generated for copy
* chore: add test case validating remove processor ignores logs with missing field
* chore: add if condition for operator generated for remove
* chore: log pipelines: ensuring json parser ignores log if json field is missing
* chore: log pipelines: ensure regex parser ignores log if field is missing
* chore: add test for ensuring pipeline previews work for trace parser processors
* chore: updates to trace parser validation in postable pipelines
* chore: extract auth.randomHex into utils.RandomHex for reuse
* chore: get trace parser preview test passing
* chore: start with JSON serialized trace parser in test to cover deserialization
* chore: address PR feedback
* chore: add test for previewing pipeline with grok parser
* chore: import grok parser in logparsing preview to ensure its a registered logtransform op
* chore: add dependencies for grok parsing operator