* feat: added changes related to custom options for quick filters
* feat: added changes related to custom options for quick filters
* feat: added changes related to custom options for quick filters
* feat: added changes related to custom options for quick filters
* feat: added changes related to custom options for quick filters
* feat: added changes related to custom options for quick filters
* feat: added support for custom quick filters
* feat: added changes related to custom options for quick filters
* feat: added changes related to custom options for quick filters
* feat: added changes related to custom options for quick filters
* feat: added changes related to custom options for quick filters
* feat: added changes related to custom options for quick filters
* feat: added changes related to custom options for quick filters
* feat: added changes related to custom options for quick filters
* feat: added changes related to custom options for quick filters
* feat(organization): add hname and alias for organization
* fix: boolean values are not shown in the list panel's column
* fix: moved logic to component level
* fix: added type
* fix: added test cases
* fix: added test cases
* chore: update copy webpack plugin
* Revert "fix: display same key with multiple data types in filter suggestions by enhancing the deduping logic (#7255)"
This reverts commit 1e85981a17a8e715e948308d3e85072d976907d3.
* fix: use query search v2 for traces data source to handle multiple data types for the same key
* fix(QueryBuilderSearchV2): add user typed option if it doesn't exist in the payload
* fix(QueryBuilderSearchV2): increase the height of search dropdown for non-logs data sources
* fix: display span scope selector for trace data source
* chore: remove the span scope selector from qb search v1 and move the component to search v2
* fix: write test to ensure that we display span scope selector for traces data source
* fix: limit converting -> only to log data source
* fix: don't display empty suggestion if only spaces are typed
* chore: tests for span scope selector
* chore: qb search flow (key, operator, value) test cases
* refactor: fix the Maximum update depth reached issue while running tests
* chore: overall improvements to span scope selector tests
Resource attr filter: style fix and quick filter changes (#7691)
* chore: resource attr filter init
* chore: resource attr filter api integration
* chore: operator config updated
* chore: fliter show hide logic and styles
* chore: add support for custom operator list to qb
* chore: minor refactor
* chore: minor code refactor
* test: quick filters test suite added
* test: quick filters test suite added
* test: all errors test suite added
* chore: style fix
* test: all errors mock fix
* chore: test case fix and mixpanel update
* chore: color update
* chore: minor refactor
* chore: style fix
* chore: set default query in exceptions tab
* chore: style fix
* chore: minor refactor
* chore: minor refactor
* chore: minor refactor
* chore: test update
* chore: fix filter header with no query name
* fix: scroll fix
* chore: add data source traces to quick filters
* chore: replace div with fragment
---------
Co-authored-by: Aditya Singh <adityasingh@Adityas-MacBook-Pro.local>
fix: handle rate operators for table panel (#7695)
* fix: handle rate operators for table panel
chore: fix error rate (#7701)
Signed-off-by: Shivanshu Raj Shrivastava <shivanshu1333@gmail.com>
* feat(organization): minor cleanups
* feat(organization): better naming for api and usecase
* feat(organization): better packaging for modules
* feat(organization): change hname to displayName
* feat(organization): update the migration to use dialect
* feat(organization): update the migration to use dialect
* feat(organization): update the migration to use dialect
* feat(organization): revert back to impl
* feat(organization): remove DI from organization
* feat(organization): address review comments
* feat(organization): address review comments
* feat(organization): address review comments
---------
Signed-off-by: Shivanshu Raj Shrivastava <shivanshu1333@gmail.com>
* chore: multitenancy in integrations
* chore: multitenancy in cloud integration accounts
* chore: changes to cloudintegrationservice
* chore: rename migration
* chore: update scan function
* chore: update scan function
* chore: fix migration
* chore: fix struct
* chore: remove unwanted code
* chore: update scan function
* chore: migrate user and pat for integrations
* fix: changes to the user for integrations
* fix: address comments
* fix: copy created_at
* fix: update non revoked token
* chore: don't allow deleting pat and user for integrations
* fix: address comments
* chore: address comments
* chore: add checks for fk in dialect
* fix: service migration
* fix: don't update user if user is already migrated
* fix: update correct service config
* fix: remove unwanted code
* fix: remove migration for multiple same services which is not required
* fix: fix migration and disable disaboard if metrics disabled
* fix: don't use ee types
---------
Co-authored-by: Vikrant Gupta <vikrant@signoz.io>
* feat(sqlmigration): update the alertmanager tables
* feat(sqlmigration): update the alertmanager tables
* feat(sqlmigration): make the preference package multi tenant
* feat(preference): address nit pick comments
* feat(preference): added the cascade delete for preferences
* feat(sqlmigration): update apdex and TTL status tables (#7481)
* feat(sqlmigration): update the apdex and ttl tables
* feat(sqlmigration): register the new migration and rename table
* feat(sqlmigration): fix the ttl queries
* feat(sqlmigration): update the TTL and apdex tables
* feat(sqlmigration): update the TTL and apdex tables
* feat(sqlmigration): fix the reset password and pat tables (#7482)
* feat(sqlmigration): fix the reset password and pat tables
* feat(sqlmigration): revert PAT changes
* feat(sqlmigration): register and rename the new migration
* feat(sqlmigration): handle updates for user tables
* feat(sqlmigration): remove unwanted changes
* fix: support multitenancy in dashboards
* fix: support multitenancy in saved views
* fix: move migrations to provider file
* fix: remove getUserFromClaims and use new errors
* fix: remove getUserFromClaims and use new errors
* fix: use new errors in dashboards.go
* Update ee/query-service/app/api/dashboard.go
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* fix: minor changes
---------
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
### Summary
Integrate the new implementations of the alertmanager along with changes to the ruler. This change can be broadly categoried into 3 parts:
#### Frontend
- The earlier `/api/v1/alerts` api was double encoding the response in json and sending it to the frontend. This PR fixes the json response object.
For instance, we have gone from the response `{
"status": "success",
"data": "{\"status\":\"success\",\"data\":[{\"labels\":{\"alertname\":\"[platform][consumer] consumer is above 100% memory utilization\",\"bu\":\"platform\",\"......
}` to the response `{"status":"success","data":[{"labels":{"alertname":"[Metrics] Pod CP......`
- `msteams` has been changed to `msteamsv2` wherever applicable
#### Ruler
The following changes have been done in the ruler component:
- Removal of the old alertmanager and notifier
- The RuleDB methods `Create`, `Edit` and `Delete` have been made transactional
- Introduction of a new `testPrepareNotifyFunc` for sending test notifications
- Integration with the new alertmanager
#### Alertmanager
Although a huge chunk of the alertmanagers have been merged in previous PRs (the list can be found at https://github.com/SigNoz/platform-pod/issues/404), this PR takes care of changes needed in order to incorporate it with the ruler
- Addition of ruleId based matching
- Support for marshalling the global configuration directly from the upstream alertmanager
- Addition of orgId to the legacy alertmanager
- Support for always adding defaults to both routes and receivers while creating them
- Migration to create the required alertmanager tables
- Migration for msteams to msteamsv2 has been added. We will start using msteamv2 config for the new alertmanager and keep using msteams for the old one.
#### Related Issues / PR's
Closes https://github.com/SigNoz/platform-pod/issues/404
Closes https://github.com/SigNoz/platform-pod/issues/176
* fix: support multitenancy in org
* fix: register and login working now
* fix: changes to migration
* fix: migrations run both on sqlite and postgres
* fix: remove user flags from fe and be
* fix: remove ingestion keys from update
* fix: multitenancy support for apdex settings
* fix: render ts for users correctly
* fix: fix migration to run for new tenants
* fix: clean up migrations
* fix: address comments
* Update pkg/sqlmigration/013_update_organization.go
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* fix: fix build
* fix: force invites with org id
* Update pkg/query-service/auth/auth.go
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* fix: address comments
* fix: address comments
* fix: provier with their own dialect
* fix: update dialects
* fix: remove unwanted change
* Update pkg/query-service/app/http_handler.go
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* fix: different files for types
---------
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* feat: setup the app context to fetch users,licenses and feature flags
* feat: added global event listeners for after_login event
* feat: remove redux from app state and private route
* feat: syncronize the approutes file
* feat: cleanup the private routes
* feat: handle login and logout
* feat: cleanup the app layout file
* feat: cleanup and syncronize side nav item
* fix: minor small re-render issue
* feat: parallel processing for sync calls for faster bootup of application
* feat: some refactoring for private routes
* fix: entire application too much re-rendering
* fix: remove redux
* feat: some more corrections
* feat: fix all the files except signup
* feat: add app provider to the test-utils
* feat: should fix a lot of tests
* chore: fix more tests
* chore: fix more tests
* feat: fix some tests and corrected the redux mock
* feat: delete snapshot
* fix: test cases
* fix: pipeline actions test cases
* fix: billing test cases
* feat: update the signup API to accept isAnonymous and hasOptedUpdates
* chore: cleanup the console logs
* fix: indefinite loading on manage licenses screen
* fix: better handling and route to something_went_wrong in case of qs down
* fix: signup for subsequent users
* chore: update test-utils
* fix: jerky behaviour on entering the home page
* feat: handle the retention for login context flow
* fix: do not let users workaround workspace blocked screen
* 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
* 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: 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
* feat: auto provisioning of SSO users rather than needing invite link to login each user
* updating errors
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
* fix: set IsUser: true when SSO feature is available
* fix: signoz login from IDP (#3396)
* fix: enable login from IDP with relayState set with domainName
* update comments on function
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
* chore: added error checks to fetch domain from SAML relay state
---------
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
---------
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
* chore: integrate pipelines API
* fix: limit support integrated in pipelines
* fix: interface to string
* fix: json parser and allow deleting all pipelines
* fix: output modified if operators are disabled
* fix: validation updated for operators
* fix: expression check added
* fix: regex expression check added
* fix: remove operator validation updated
* fix: tests updated for pipeline builder
* fix: fix error messages in http handler
* fix: dont return payload if there is an error
* fix: extracting userId from context moved to auth package
* fix: api errors moved to http handler
* fix: get version logic updated
* fix: deployment result message updated
* fix: pipeline builder edgecase fixed and tests updated
* fix: get failing postablePipeline tests to pass
---------
Co-authored-by: Vishal Sharma <makeavish786@gmail.com>
Co-authored-by: Raj <rkssisodiya@gmail.com>