* 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
* feat: query service changes base setup for preferences
* feat: added handlers for user and org preferences
* chore: added base for all user and all org preferences
* feat: added handlers for all user and all org preferences
* feat: register the preference routes and initDB in pkg/query-service
* feat: code refactor
* chore: too much fun code refactor
* chore: little little missing attributes
* fix: handle range queries better
* fix: handle range queries better
* chore: address review comments
* chore: use struct inheritance for the all preferences struct
* chore: address review comments
* chore: address review comments
* chore: correct preference routes
* chore: low hanging optimisations
* chore: address review comments
* chore: address review comments
* chore: added extra validations for the check in allowed values
* fix: better handling for the jwt claims
* fix: better handling for the jwt claims
* chore: move the error to preference apis
* chore: move the error to preference apis
* fix: move the 401 logic to the auth middleware
### Summary
Handle the scenario when email with domain is used for SSO Login which does not match authenticated domains.
Signed-off-by: Prashant Shahi <prashant@signoz.io>
### Summary
Handle the scenario when email with domain is used for SSO Login which does not match authenticated domains.
Signed-off-by: Prashant Shahi <prashant@signoz.io>
* fix: handle-large-traces
* feat: add isSubTree key to identify subTrees
Show user a loom video explaining how to navigate large spans
* chore: update icon to warning
* chore: fire telemetry events for all trace detail API calls, large traces
* chore: update MAX_SPANS_IN_TRACE to 250k
* chore: refactor: inject sqlx.DB into opamp.initDB instead of DB file name
* chore: reorganize test utils a little
* chore: add test validating pipelines for installed integrations show up in pipelines list
* chore: get basic integration pipelines testcase passing
* chore: reconcile experimental changes with latest state of develop
* chore: add integration test for reordering of pipelines
* chore: marker for integration pipelines using Id
* chore: hookup propagation of installed integration pipelines by opamp
* chore: add util for mapping slices
* chore: add support for reordering integration pipelines
* chore: exclude user saved integration pipelines if no longer installed
* chore: flesh out rest of intgeration pipelines scenarios
* chore: handle scenario when an integration is installed before any pipelines exist
* chore: notify agentConf of update after uninstalling an integration
* chore: some minor cleanup
* chore: some more cleanup
* chore: update ee server for changed controllers
* chore: some more cleanup
* chore: change builtin integration id prefix to avoid using colons that break yaml
* chore: update builtin integration id in test
* chore: add http api test for signoz integrations
* chore: add controller for integrations
* chore: add http API handlers for integrations API
* chore: hook up integrations API in new servers
* chore: add remaining fields in Integration DTO
---------
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
* feat: api management
* chore: address review comments and typos
* chore: add sort and created by user object on create
* chore: replace expiresAt with expiresInDays for request body
* 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
Switched all file operations from ioutil package to io and os packages due to the deprecation of ioutil in Go 1.16. This change contributes to the maintainability of the codebase, ensuring it's up-to-date with the current standard library. Additionally, implemented usage of filepath.Join for platform-independent file paths.
* feat: integrate billing api and wire up billing ui
* feat: show billing to admin only if on plans other than basic plan
* feat: show billing to admin only if on plans other than basic plan
* feat: update notfound snapshot
* chore: fix billing sidenav logic
* chore: fix several bugs
* chore: backend fix for billing
* fix: window.open pop blocker issue and error ui (#3750)
---------
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
Co-authored-by: Rajat Dabade <rajat@signoz.io>