* feat: enable global actions
* feat: separate actions for collapse and open sidebar
* fix: remove spaces from shortcuts
* chore: remove console log
* chore: yarn install to update yarn.lock
* feat: date picker v2
* feat: custom date time range history
* feat: light mode updates and interaction fixes
* fix: improve usability
* chore: add calendar, input and popover to transformIgnorePatterns
* chore: add date-fns to transformIgnorePatterns
* chore: add @signozhq/button to transformIgnorePatterns
* feat: update css variables
* feat: fixed panel coorelation not spreading the filter expression in explorer pages
* feat: fixed multiagregation not getting sent in create alert
* fix: fixed failing test cases
* Update frontend/src/api/v5/queryRange/prepareQueryRangePayloadV5.ts
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* fix: fix lint error
* fix: stepInterval not updating in panel qb
* fix: added test cases for mapQueryDataFromApi and prepareQueryRangePayloadV5
* fix: added convertV5Response test cases - timeseries, pie and table
* fix: refactored handleRunQuery
* fix: code refactor
* fix: refactored the mapQueryDataFromApi function according to new sub_var api
* fix: updated test cases
* fix: removed isJSON and isColumn from everywhere
* fix: fixed code and test cases
* fix: fixed bar chart custom - step interval for qb v5 (#8806)
* fix: added querytype boolean check for v5 changes
* fix: fixed typechecks
* fix: fixed typechecks
---------
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* fix: added fix for supporting older queries
* fix: added fix for exist operator
* chore: minor fix for quick filters
* chore: added tests for convertfilterstoexpression
* chore: added fix for regex to regexp conversion
* test: added test for regex to regexp
* fix: added fix for functions conversion and tests
* fix: added fix for negated non_value_operators
* feat(meter): add pre-defined panels for meter breakdown
* feat(meter): update the routes for future scope
* feat(meter): added graphs for total calculation
* feat(meter): added graphs for total calculation
* feat: meter explorer
* feat: meter explorer
* fix: remove meter as data source
* fix: change meter-explorer to meter - quick filter
* chore: delete test file
* fix: failing test cases
* fix: removed unused code for querycontext (#8674)
* Update frontend/src/utils/queryValidationUtils.ts
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
* feat: added tooltips in metric aggregations
* feat: enabled legend enhancement for explorer pages and alert page
* feat: updated the error state in explorer pages with new APIError
* fix: cloned panel query shows previous query (#8681)
* fix: cloned panel query shows previous query
* chore: removed comments
* chore: added null check
* fix: added fix for auto run query in dashboard panel + trace view issue
---------
Co-authored-by: Abhi Kumar <abhikumar@Mac.lan>
* feat: added new SubstituteVars api and enable v5 for creating new alerts (#8683)
* feat: added new SubstituteVars api and enable v5 for creating new alerts
* feat: add warning notification for query response
* feat: fixed failing test case
* fix: metric histogram UI config state in edit mode
* fix: fixed table columns getting duplicate data (#8685)
* fix: added fix for conversion of QB function to filter expression. (#8684)
* fix: added fix for QB filters for functions
* chore: minor fix
---------
Co-authored-by: SagarRajput-7 <162284829+SagarRajput-7@users.noreply.github.com>
* feat: query builder fixes and enhancement (#8692)
* feat: legend format fixes around single and multiple aggregation
* feat: fixed table unit and metric units
* feat: add fallbacks to columnWidth and columnUnits for old-dashboards
* feat: fixed metric edit issue and having filter suggestion duplications
* feat: fix and cleanup functions across product for v5
* chore: add tooltips with links to documentation (#8676)
* fix: added fix for query validation and empty query error (#8694)
* fix: added fix for selected columns being empty in logs explorer (#8709)
* feat: added columnUnit changes for old dashboard migrations (#8706)
* fix: fixed keyfetching logic (#8712)
* chore: lint fix
* fix: fixed logs explorer test
* feat: fix type checks
---------
Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com>
Co-authored-by: SagarRajput-7 <sagar@signoz.io>
Co-authored-by: Abhi Kumar <abhikumar@Mac.lan>
Co-authored-by: SagarRajput-7 <162284829+SagarRajput-7@users.noreply.github.com>
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
* feat: added changes for fething current version changelog
* chore: added changes for showing changelog in sidebar
* test: update ChangelogModal tests to use ChangelogSchema and mock data
* chore: update changelog properties in app context mock
* chore: removed changes for current version
* chore: changed fetch key for fetching changelog by version
* chore: added changes related to fetching tanent specific changelog
* chore: fixed failing test for changelogRenderer
* chore: remove what's new no feature available
* chore: added changes for fetching changelog for specific tenant types
* test: fixed test for changelogRenderer
* Feat: changes for showing changelog to cloud users (#8512)
* feat: added backend changes for storing seen changelog verion
* feat: added changes for showing changelog to cloud users
* chore: added useeffect cleanup
* test: fixed test for changelogModal
* chore: minor changes in changelogmodal
* chore: minor PR review fixes
* fix(sidebar): added fix routes not highlighting, minor gitter fix
* chore(routes): tsc fix
* fix(private): added check in private route for routes with no role
* fix(private): minor fix in condition
* chore: added roles in empty routes
* feat: while the funnel steps are invalid, handle auto save in local storage
* chore: handle lightmode style in 'add span to funnel' modal
* fix: don't save incomplete steps state in local storage if last saved configuration has valid steps
* chore: close the 'Add span to funnel' modal on clicking save or discard
* chore: deprecate the run funnel flow for unexecuted funnel
* feat: change the funnel configuration save logic, and deprecate auto save
* refactor: send all steps in the payload of analytics/overview
* refactor: send all steps in the payload of analytics/steps (graph API)
* chore: send all steps in the payload of analytics/steps/overview API
* chore: send funnel steps with slow and error traces + deprecate the refetch on latency type change
* chore: overall improvements
* chore: change the save funnel icon + increase the width of funnel steps
* fix: make the changes w.r.t. the updated funnel steps validation API + bugfixes
* fix: remove funnelId from funnel results APIs
* fix: handle edge case i.e. refetch funnel results on deleting a funnel step
* chore: remove funnel steps configuration cache on removing funnel
* chore: don't refetch the results on changing the latency type
* fix: fix the edge cases of save funnel button being enabled even after saving the funnel steps
* chore: remove the span count column from top traces tables
* fix: fix the failing CI check by removing unnecessary props / fixing the types
* feat: sidebar revamp - initial commit
* feat: move billinga and other isolated routes to settings
* feat: handle channel related routes
* feat: update account settings page
* feat: show dropdown for secondary items
* feat: handle reordering of pinned nav items
* feat: improve font load performance
* feat: update font reference
* feat: update page content styles
* feat: handle external links in sidebar
* feat: handle secondary nav item clicks
* feat: handle pinned nav items reordering
* feat: handle sidenav pinned state using preference, handle light mode
* feat: show sidenav items conditionally
* feat: show version diff indicator only to self hosted users
* feat: show billing to admins only and integrations to cloud and enterprise users
* feat: update fallback link
* feat: handle settings menu items
* fix: settings page reload on nav chnage
* feat: intercom to pylon
* feat: show invite user to admin only
* feat: handle review comments
* chore: remove react query dev tools
* feat: minor ui updates
* feat: update changes based on preference store changes
* feat: handle sidenav shortcut state
* feat: handle scroll for more
* feat: maintain shortcuts order
* feat: manage license ui updates
* feat: manage settings options based on license and roles
* feat: update types
* chore: add logEvents
* feat: update types
* chore: fix type errors
* chore: remove unused variable
* feat: update my settings page test cases
---------
Co-authored-by: makeavish <makeavish786@gmail.com>
* feat: handle unkown metric in panel query
* feat: added handling with type empty and key present or not
* feat: added test cases
* feat: added comment to better explain the logic
* feat: fixed operator list for unkown metric
---------
Co-authored-by: Srikanth Chekuri <srikanth.chekuri92@gmail.com>
* fix: display the inter-step latency type in step metrics table
* chore: send latency type with n+1th step + make latency type optional
* fix: fetch and format get funnel steps overview metrics
* chore: remove dev env check
* fix: overall fixes
* fix: don't cache validate query + trigger validate on changing error and where clause as well
* fix: display the latency type in step overview metrics table + p99_latency to latency
* chore: revert dev env check removal (remove after BE changes are merged)
* fix: adjust create API response
* chore: useLocalStorage custom hook
* feat: improve the run funnel flow
- for the initial fetch of funnel results, require the user to run the funnel
- subsequently change the run funnel button to a refresh button
- display loading state while any of the funnel results APIs are being fetched
* fix: fix the issue of add step details breaking
* fix: refetch funnel details on rename success
* fix: redirect 'learn more' to trace funnels docs
* fix: handle potential undefined step in latency type calculation
* fix: properly handle incomplete steps state
* fix: fix the edge case of stale validation state on transitioning from invalid steps to valid steps
* fix: remove the side effect from render and move to useEffect
* feat: funnels list page basic UI
* feat: get funnels list data from mock API, and handle data, loading and empty states
* feat: implement funnel rename
* chore: move useFunnels to hooks/TracesFunnels
* feat: create traces funnels details basic page + funnel -> details redirection
* fix: properly display created at in funnels list item + preventDefault
* chore: add tab bar to trace funnel details page
* chore: traces funnel details page overall skeleton
* chore: traces funnel details results skeleton
* fix: hide step count for add button only
* feat: funnel details page steps and configuration (#7424)
* chore: add a new tab for traces funnels
* feat: funnels list page basic UI
* feat: get funnels list data from mock API, and handle data, loading and empty states
* feat: implement funnel rename
* refactor: overall improvements
* feat: implement sorting in traces funnels list page
* feat: add sort column key and order to url params
* chore: move useFunnels to hooks/TracesFunnels
* feat: implement traces funnels search and refactor search and sort by extracting to custom hooks
* chore: overall improvements to rename trace funnel modal
* chore: make the rename input auto-focusable
* feat: handle create funnel modal
* feat: delete funnel modal and functionality
* fix: fix the layout shift in funnel item caused by getContainer={false}
* chore: overall improvements and use live api in traces funnels
* feat: create traces funnels details basic page + funnel -> details redirection
* fix: funnels traces light mode UI
* fix: properly display created at in funnels list item + preventDefault
* refactor: extract FunnelItemPopover into a separate component
* chore: hide funnel tab from traces explorer
* chore: add check to display trace funnels tab only in dev environment
* chore: improve funnels modals light mode
* chore: overall improvements
* fix: properly pass funnel details link
* chore: address PR review changes
* chore: add tab bar to trace funnel details page
* feat: funnel step UI with service, span, and where filters
* feat: build radio button component
* refactor: use the SignozRadioButton in funnel results -> step transitions radio buttons
* feat: inter step config (i.e. latency type) UI
* chore: improve steps header styles by removing divider width
* feat: funnel steps title, description, popover UI + pass data from API
* chore: update FilterSelect component to conditionally add url params and accept on change
* fix: fix funnel step where clause and update the state variables for filters
* chore: add support for isMultiple and fix the type in FilterSelect
* feat: centralize the steps state management in StepsContent
* fix: move steps state up + pass steps count from state
* feat: implement auto save for updating the steps whenever any step changes
* feat: implement auto save for validating steps if service name or span names change
* feat: impelement funnel step removal
* feat: implement add details modal for funnel steps
* fix: fix the overflowing time range picker
* feat: funnel details empty state
* feat: add support for saving funnel description
* chore: overall improvements
* fix: fix the light mode styles
* fix: fix the failing build + broken search UI
* refactor: remove the reference of useLocation from traceFunnel item in TraceModulePage constant
* fix: fix the issue of update steps getting triggered on initial render if we have filters
* fix: fix the edge case of stale state causing filters to be re-added after removing
* feat: funnel details page results (#7451)
* feat: funnel metrics table component
* feat: funnel metrics and steps transition metrics components UI
* feat: funnel table component
* feat: slowest traces and traces with error components
* fix: overall light theme fixes
* fix: fix the warning
* chore: add empty and loading states to FunnelMetricsTable
* feat: get overall funnel metrics from the API
* fix: fix the empty state of funnel metrics table
* feat: get data for slowest traces and traces with errors
* fix: link trace id to trace details page
* fix: get data for funnel step transition metrics and refactor the existing data fetching logic
* refactor: add funnel context + overall refactoring and optimizations
* refactor: move steps states to funnel context + handle empty and run funnel disabled states
* feat: handle run funnel
* fix: improve empty state
* chore: rename isValidateStepsMutationLoading -> isValidateStepsLoading
* chore: improve query key
* fix: display loading state if funnel results are fetching
* refactor: move steps validation fetching and states to the context API
* fix: display loading state in funnel results while steps validation is fetching
* fix: call validate steps API only on changing the service name or span name of any step
* refactor: move validateStepsQuery key out of useEffect and update the dependencies
* chore: centralize hasIncompleteSteps and run validate only if steps have service and spans
* fix: handle all empty fields state + overall improvements
* fix: handle long where query tags
* feat: build the funnel result graph component
* feat: build the funnel result graph component
* feat: handle loading, error, empty states in funnel graph
* fix: don't display change percentage if % is 0
* refactor: overall improvements
* feat: get funnel steps graph data from API + move logic to custom hook
* fix: improve empty and error states
* fix: handle funnel graph legends width using css
* fix: redirect to trace funnels list page on clicking delete from funnel details
* fix: update the query cache while updating steps
* fix: implement debounced search for funnel list search
* fix: refetch steps graph data query on clicking run funnel / sync button
* fix: improve the step footer spacing
* chore: add gap between divider to inter-step-config
* fix: handle loading state while fetching
* feat: add span to funnel flow (from trace details page) (#7477)
* chore: display add to funnel icon on hovering any span in trace details page
* chore: add className to funnel item actions popover
* feat: add funnels tab to trace details v2 tab bar
* feat: add span to funnel flow
* chore: hide actions popover button from funnel item in span -> funnel flows
* chore: improve the funnel details UI in add span to funnel modal
* fix: display empty state + don't redirect to funnels list on delete success + overall improvements
* chore: add null check
* fix: display add to funnel button based on feature flag
* fix: display funnels tab in trace details based on feature flag
* fix: remove maxTagCount
* feat: change ms to ns
* chore: address review comments
* chore: remove feature flag and display trace funnels only in dev envirnoment
* fix: handle restoring steps if updating funnel steps fail
* refactor: update the get and delete funnel endpoints to adjust to the BE changes (#7697)
* refactor: address review comments
* fix: handle nested funnel response structure to fix missing funnel_id… (#7740)
* fix: handle nested funnel response structure to fix missing funnel_id in updates
Signed-off-by: Shivanshu Raj Shrivastava <shivanshu1333@gmail.com>
* chore: remove console.og
Signed-off-by: Shivanshu Raj Shrivastava <shivanshu1333@gmail.com>
* chore: revert explicitly passing funnelId to updateFunnelSteps
---------
Signed-off-by: Shivanshu Raj Shrivastava <shivanshu1333@gmail.com>
Co-authored-by: ahmadshaheer <ashaheerki@gmail.com>
* chore: fix api endpoint
Signed-off-by: Shivanshu Raj Shrivastava <shivanshu1333@gmail.com>
* refactor: incorporate the recent funnel details API changes (#7760)
* chore: trace funnels feedback changes (#7772)
* chore: change the copy from x traces to valid traces found / not found
* chore: add open funnel button in add span to funnel modal
* feat: display buttons for adding step details and funnel description + copy to clipboard
* feat: highlight funnel graph column based on selected (total / error span) from the legend items
* chore: trace funnel changes (#7780)
* refactor: handle funnels list search on frontend
* refactor: use funnel steps update API for adding / updating step title and description
* feat: allow selecting user's typed option in trace funnel service and span name dropdowns
* chore: properly render the -> between steps in funnel results
* fix: sync funnel step name with add details modal text fields
---------
Signed-off-by: Shivanshu Raj Shrivastava <shivanshu1333@gmail.com>
Co-authored-by: Yunus M <myounis.ar@live.com>
Co-authored-by: Shivanshu Raj Shrivastava <shivanshu1333@gmail.com>
* 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
---------
Co-authored-by: Aditya Singh <adityasingh@Adityas-MacBook-Pro.local>
* feat: new dropdown styles
* fix: added new tag
* feat: added endpoint name and port in endpoint details
* feat: endpoint details feedback
* feat: analytics added
* fix: title fixed
* fix: domain list breaking for non available data
* feat: added third party api feature flag
* fix: console removed
* feat: added traces corelation in api monitoring charts
* feat: added customondragselect in grid card full view to handle breaking flow
* fix: minor failsafes added:
* fix: minor ux fix
* feat: incorporated pr comments - 0
* fix: added default value to time,space aggregation to fix query_range getting 500 for metric
* fix: added all available operators as default when no attribute type is present
* fix: changed operator, time and space values to avg when empty attribute type
* chore: add a new tab for traces funnels
* feat: funnels list page basic UI
* feat: learn more component
* feat: get funnels list data from mock API, and handle data, loading and empty states
* chore(SignozModal): add width prop and improve button styles
* feat: implement funnel rename
* refactor: overall improvements
* feat: implement sorting in traces funnels list page
* feat: add sort column key and order to url params
* chore: move useFunnels to hooks/TracesFunnels
* feat: implement traces funnels search and refactor search and sort by extracting to custom hooks
* chore: overall improvements to rename trace funnel modal
* chore: make the rename input auto-focusable
* feat: handle create funnel modal
* feat: delete funnel modal and functionality
* fix: fix the layout shift in funnel item caused by getContainer={false}
* chore: overall improvements and use live api in traces funnels
* feat: create traces funnels details basic page + funnel -> details redirection
* fix: funnels traces light mode UI
* fix: properly display created at in funnels list item + preventDefault
* refactor: extract FunnelItemPopover into a separate component
* chore: hide funnel tab from traces explorer
* chore: add check to display trace funnels tab only in dev environment
* chore: improve funnels modals light mode
* chore: overall improvements
* fix: properly pass funnel details link
* chore: address PR review changes
* 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