* feat: base setup for in product home page
* feat: base state
* feat: add empty states for alerts, traces, dashboards, saved views
* feat: add checklist component
* feat: integrate all panels
* feat: integrate preference api and clean up components
* feat: handle done and skip states of the checklist
* feat: update ui
* feat: update ui
* feat: code cleanup
* feat: add events
* feat: support time interval change in services
* feat: add service time change event and cleanup code
* feat: handle light mode
* feat: address review comments
* fix: routing issues
* fix: testcase snapshot, a minor ui improvements
* fix: noopener typo in window.open
### 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: onboarding v2 base setup
* feat: add onboarding v2 base setup and styles
- added header
- questionnaire blocks
- basic styling
- search based on UI config method (basic for UI behaviour)
- empty state result UI
* refactor: update class names in OnboardingPageV2 styles
* refactor(onboarding): components for QuestionBlock structural changes
* feat(onboarding): question block filterByCategory added
* feat(onboarding): component structure update and style updates
filterByCategory styling
spacing and styling fixes for options
steps style for question block
header styling update for sticky
added actions on header
* refactor(onboarding): bem SCSS nested way, this is the way
* refactor: moved the flow to another file
* feat: onboarding v2 base setup
* refactor: color variable fixes
* feat: onboarding part 3 changes
* feat: update handle select framework logic
* feat: add logos
* chore: remove old files
* feat: remove unwanted styles
* feat: minor ui updates
* feat: integrate invite team members and ingestion key details api
* feat: update docs links
* feat: added logos and fixed links
* feat: added and fixed links
* feat: handle routing after onboarding
* chore: update base url for docs links - testing
* feat: improve ux
* chore: update file
* feat: reset filters on next and back
* feat: update config
* feat: update api to use getIngestionData
* feat: show region and ingestion details
* feat: push changes behind feature flag
* feat: adding padding to onboarding container
* feat: add log events
* feat: handle back button state
* feat: redirect to onboarding v3 if ff is true and current path is get_started
* fix: update multi ingestion key test case
* feat: enable copy to clipboard
---------
Co-authored-by: Sudeep MP <sudipmelepunathilmp@gmail.com>
Co-authored-by: CheetoDa <Chitgupta24@gmail.com>
* chore: enable AWS integrations for all
* chore: don't show either of configure/enable for a service when not in ctx of a cloud account
* chore: remove AWS integration feature flag
* feat: custom hook to prevent redundant navigation and handle default params with URL comparison
* feat: implement useSafeNavigation to QB, to ensure that the back navigation works properly
* fix: handle syncing the relativeTime param with the time picker selected relative time
* feat: add support for absolute and relative time sync with time picker component
* refactor: integrate safeNavigate in LogsExplorerChart and deprecate the existing back navigation
* feat: update pagination query params on pressing next/prev page
* fix: fix the issue of NOOP getting converted to Count on coming back from alert creation page
* refactor: replace history navigation with safeNavigate in DateTimeSelectionV2 component
it also fixes the issue of relativeTime not being added to the url on mounting
* feat: integrate useSafeNavigate across service details tabs
* fix: fix duplicate redirections by converting the timestamp to milliseconds
* fix: replace history navigation with useSafeNavigate in LogsExplorerViews and useUrlQueryData
* fix: replace history navigation with useSafeNavigate across dashboard components
* fix: use safeNavigate in alert components
* fix: fix the issue of back navigation in alert table and sync the pagination with url param
* fix: handle back navigation for resource filter and sync the state with url query
* fix: fix the issue of double redirection from top operations to traces
* fix: replace history.push with safeNavigate in TracesExplorer's updateDashboard
* fix: prevent unnecessary query re-runs by checking stagedQuery before redirecting in NewWidget
* chore: cleanup
* fix: fix the failing tests
* fix: fix the documentation redirection failing tests
* test: mock useSafeNavigate hook in WidgetGraphComponent test
* test: mock useSafeNavigate hook in ExplorerCard test
* fix: update AWS accounts API response to return accounts list
* feat: display skeleton UI for account actions and refactored rendering logic
* chore: update AWS service naming from "AWS Web Services" to "Amazon Web Services"
* feat: aws integration success modal changes
* feat: auto-select first service when no service is active
* feat: display 'enable service' if service hasn't been configured and 'Configure (x/2)' if configured
* fix: display no data yet if status is not available
* feat: properly handle remove integration account flow
* fix: rename accountId param to cloudAccountId
* fix: update the aws service list and details api parameter from account_id to cloud_account_id
* fix: fix the issue of stale service config modal enabled/disabled state
* chore: improve the UI of configure button
* feat: add connection parameters support for AWS cloud integration
* feat: add optional link support for cloud service dashboards
* fix: get the correct supported signals count + a minor refactoring
* fix: remove cloudAccountId on success of account remove
* chore: update the remove integration copy
* refactor: add react query key for AWS connection parameters
* fix: correct typo in integration loading state variable name
* refactor: move skeleton inline styles to style file and do overall refactoring
* chore: address the requested changes
* Revert "Revert "chore(licenses): update the license events and the state name…"
This reverts commit 66adc7fbf97de197cad10728972828ce409c5a86.
* chore(license): fix comment
* fix: add default timestamp and body columns to live logs
* refactor: use convertKeysToColumnFields instead of re-modifying the default columns
* fix: remove the local storage selectColumns when clear view is clicked
* fix: improve selectColumns migration handling
* feat: aws Integration skeleton UI (#6758)
* feat: add AWS integration in the integrations list and redirect to the new Cloud Integration page
* feat: cloud integration details page header (i.e. breadcrumb and get help button) UI
* feat: hero section UI
* refactor: extract Header and HeroSection components from CloudIntegrationPage
* feat: services tab bar and sidebar UI
* feat: cloud integration details services UI
* refactor: group and extract cloud integration components to files
* fix: set default active service to the first service in the list if no service is specified
* feat: add NEW flag for AWS integration in the integrations list page
* chore: overall improvements
* chore: move cloud integration pages to /container
* fix: hero section background
* feat: aws Integration: Account setup basic UI and functionality (#6806)
* feat: implement basic cloud account management UI in HeroSection
* feat: aws Integration: Integrate now modal (#6807)
* feat: implement basic cloud account management UI in HeroSection
* feat: start working on integrate now modal UI
* feat: integrate now modal UI
* feat: integrate now modal states and json server API integration
* feat: get accounts from json-server API, and redirect Add new account to the integrations modal
* feat: display error state if last_heartbeat_ts_ms is null even after 5 minutes
* chore: update import path for regions data in useRegionSelection hook
* chore: move hero section components inside the HeroSection/components
* feat: create a reusable modal component
* refactor: make the cloud account setup modal readable / DRYer
* feat: aws Integration: Account settings modal (#6808)
* feat: implement basic cloud account management UI in HeroSection
* feat: start working on integrate now modal UI
* feat: get accounts from json-server API, and redirect Add new account to the integrations modal
* feat: integrate now modal UI
* feat: integrate now modal states and json server API integration
* feat: account settings
* feat: service status UI
* refactor: make account settings modal more readable and overall improvements
* feat: Get data from json server api data in service sections (#6809)
* feat: implement basic cloud account management UI in HeroSection
* feat: start working on integrate now modal UI
* feat: get accounts from json-server API, and redirect Add new account to the integrations modal
* refactor: make the cloud account setup modal readable / DRYer
* feat: integrate now modal states and json server API integration
* refactor: make account settings modal more readable and overall improvements
* feat: integrate now modal states and json server API integration
* feat: display error state if last_heartbeat_ts_ms is null even after 5 minutes
* feat: get the services list and details from json server API response
* feat: update account actions to set accountId in URL query on initial account load
* feat: configure service modal (#6814)
* feat: implement basic cloud account management UI in HeroSection
* feat: start working on integrate now modal UI
* feat: get accounts from json-server API, and redirect Add new account to the integrations modal
* refactor: make the cloud account setup modal readable / DRYer
* feat: integrate now modal states and json server API integration
* feat: get accounts from json-server API, and redirect Add new account to the integrations modal
* feat: integrate now modal states and json server API integration
* feat: get accounts from json-server API, and redirect Add new account to the integrations modal
* feat: display error state if last_heartbeat_ts_ms is null even after 5 minutes
* feat: account settings
* feat: service status UI
* feat: get the services list and details from json server API response
* feat: update account actions to set accountId in URL query on initial account load
* feat: configure service modal UI
* feat: configure service modal functionality and API changes
* feat: replace loading indicators with Spinner component in ServiceDetails and ServicesList
* fix: make the configure service modal work
* feat: light mode support and overall improvements to AWS integration page (#6817)
* refactor: make the cloud account setup modal readable / DRYer
* feat: integrate now modal states and json server API integration
* refactor: make account settings modal more readable and overall improvements
* fix: integrate now modal button improvements
* feat: aws integrations light mode
* refactor: overall improvements
* refactor: define react query keys in constant
* feat: services filter
* feat: render service overview as markdown
* feat: integrate AWS integration page API (#6851)
* feat: replace json-server APIs with actual APIs
* fix: add null checks and fix the issues
* chore: remove the console.log
* feat: temporarily hide AWS Integration from integrations list
* chore: add optimized png
* refactor: extract service filter types into an enum
* chore: remove console.log
* chore: remove duplicate files
* refactor: move regions to utils
* fix: get account id from url param
* chore: address PR review comments
* refactor: use the IntegrateNowFormSections inside RegionForm
* chore: move integrations select inline style to a common class
---------
Co-authored-by: Shaheer Kochai <ashaheerki@gmail.com>
* feat: add documentation link for logs explorer quick filters
* refactor: simplify QuickFilters component rendering logic
* fix: properly implement the log fast filter empty state UI
* fix: don't display empty state while loading quick filters
* refactor: extract quick filter empty state into a separate component
* refactor: render quick filters empty state based on source param
* refactor: update QuickFilters source to use QuickFiltersSource.INFRA_MONITORING for consistency
* fix: address review comments
* refactor: fix the failing test by moving QuickFilters types to types.tsx
* refactor: properly import use QuickFiltersSource
---------
Co-authored-by: Vikrant Gupta <vikrant.thomso@gmail.com>
* feat(trace-details): frontend changes for trace details
* feat(trace-detail): address review comments from elipsis
* feat(trace0-detail): add the new drawer designs
* feat(trace-detail): handle the selected span hover
* feat(trace-detail): address theme colors and span selection
* feat(trace-detail): fix some more css
* feat(trace-detail): fix some more css
* feat(trace-detail): add hoverred span and handled no data components for new drawer
* feat(trace-detail): handle light mode designs
* feat(trace-detail): remove the hover functionality in favor of performance
* feat(trace-detail): span lines connectors
* feat(trace-detail): span lines connectors
* feat(trace-detail): handle the line matching for flamegraph and waterfall
* feat(trace-waterfall): change the timeline color to make it less poky
* feat(trace-waterfall): added where clause support in trace details page
* feat(trace-waterfall): added where clause support in trace details page
* feat(trace-detail): handle light mode designs
* feat(trace-detail): handle light mode designs
* feat(trace-detail): fix build issues
* feat(trace-detail): handle loading error state for filters and flamegraph hovered state
* feat(trace-detail): fix the hardcoded traceID
* feat(trace-detail): remove unnecessaru use effects
* feat(trace-detail): handled the flamegraph update with ID
* feat(trace-detail): added timestamp bucketing and latency sampling
* feat(trace-detail): extract the buckets and span limit in constants
* feat(trace-detail): minor VQA comments
* feat(trace-detail): remove unnecessaru use effects
* feat(trace-detail): add go to related logs
* feat(trace-detail): address review comments
* feat(trace-detail): address review comments
* feat(trace-detail): address review comments
* feat(trace-detail): address review comments
* feat: show/hide timestamp and body fields in logs explorer (raw, default, column views)
* fix: add width to log indicator column to ensure that a single column doesn't take half the space
* fix: handle edge cases and fix issues for show/hide body and timestamp in logs explorer
* feat: change the format of uplot x axis to 24 hours
* feat: centralize date/time formats
* refactor: use the centralized 24 hour date/time formatting across components
* refactor: centralize uPlot x-axis values formatting
* feat: make the x axis of alert history in 24 hour format
* feat: added celery task feature - with task garphs and details
* feat: added celery bar graph toggle states UI
* feat: added histogram charts and right panel
* feat: added task latency graph with different states
* feat: added right panel trace navigation
* feat: added dynamic stepinterval based on timerange
* feat: changed histogram occurences to bar
* feat: onclick right panels for celery state bar graphs
* feat: pagesetup and tabs with kafka setup
* feat: custom series for bar for color generation
* feat: fixed test cases
* feat: added new celery overview page
* feat: added table feat and column details
* feat: improved table style and column configs
* feat: added service name filter and common filter logic
* feat: code fix
* feat: code fix
* feat: added celery task feature - with task garphs and details
* feat: added celery bar graph toggle states UI
* feat: added histogram charts and right panel
* feat: added task latency graph with different states
* feat: added right panel trace navigation
* feat: added navigateToTrace logic
* feat: added value graph and global filter logic
* feat: added dynamic stepinterval based on timerange
* feat: changed histogram occurences to bar
* feat: onclick right panels for celery state bar graphs
* feat: pagesetup and tabs with kafka setup
* feat: custom series for bar for color generation
* feat: fixed test cases
* feat: update styles
* fix: fix the issue of saved view overriding query for logs and traces for builder type query
* chore: refactored isDefaultQuery to use a function to extract relevant keys and use lodash's isEqual
* fix: add check for multiple queries in isDefaultQuery logic
* chore: moved extractRelevantKeys outside isDefaultQuery
* fix: fix the failing tests
* 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