Add tooltip link to navigate to traces tab with time range filter#20466
Add tooltip link to navigate to traces tab with time range filter#20466serena-ruan merged 2 commits intomasterfrom
Conversation
fe8ca16 to
9a0a822
Compare
9a0a822 to
53c395e
Compare
53c395e to
56945db
Compare
🛠 DevTools 🛠
Install mlflow from this PRFor Databricks, use the following command: |
There was a problem hiding this comment.
Pull request overview
Adds a “View traces for this period” link inside overview chart tooltips to navigate to the Traces tab with a time-range filter derived from the hovered bucket.
Changes:
- Add
timestampMsto trace requests/latency chart datapoints so tooltips can navigate based on the hovered bucket. - Extend
ScrollableTooltipto optionally render a “View traces for this period” link and navigate to the Traces tab withstartTimeLabel=CUSTOM,startTime, andendTime. - Add unit tests for the URL builder and basic tooltip/link rendering behavior.
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| mlflow/server/js/src/lang/default/en.json | Adds localized message entry for the “View traces for this period” link text. |
| mlflow/server/js/src/experiment-tracking/pages/experiment-overview/hooks/useTraceRequestsChartData.ts | Includes timestampMs in requests chart datapoints for navigation. |
| mlflow/server/js/src/experiment-tracking/pages/experiment-overview/hooks/useTraceLatencyChartData.ts | Includes timestampMs in latency chart datapoints for navigation. |
| mlflow/server/js/src/experiment-tracking/pages/experiment-overview/components/TraceRequestsChart.tsx | Passes linkConfig into ScrollableTooltip and memoizes tooltip content. |
| mlflow/server/js/src/experiment-tracking/pages/experiment-overview/components/TraceLatencyChart.tsx | Passes linkConfig into ScrollableTooltip for latency chart tooltips. |
| mlflow/server/js/src/experiment-tracking/pages/experiment-overview/components/OverviewChartComponents.tsx | Implements traces URL builder and adds optional traces navigation link in tooltip. |
| mlflow/server/js/src/experiment-tracking/pages/experiment-overview/components/OverviewChartComponents.test.tsx | Adds tests for traces URL builder and tooltip link visibility. |
| @@ -1,12 +1,138 @@ | |||
| import { describe, it, expect } from '@jest/globals'; | |||
| import { render, screen, fireEvent } from '@testing-library/react'; | |||
| import { renderHook } from '@testing-library/react'; | |||
There was a problem hiding this comment.
fireEvent is imported but not used. Either remove the import to keep the test file tidy, or use it in a click-navigation test for the new "View traces for this period" link.
| import { renderHook } from '@testing-library/react'; |
.../js/src/experiment-tracking/pages/experiment-overview/components/OverviewChartComponents.tsx
Show resolved
Hide resolved
...rc/experiment-tracking/pages/experiment-overview/components/OverviewChartComponents.test.tsx
Show resolved
Hide resolved
|
Documentation preview for 3e2871a is available at: More info
|
| linkConfig={{ | ||
| experimentId, | ||
| timeIntervalSeconds, | ||
| componentId: 'mlflow.overview.usage.latency.view_traces_link', |
There was a problem hiding this comment.
in managed codebase, there's a lint rule enforcing use of static componentIds so it will have to be addressed anyway. I think we can use static componentId="mlflow.overview.usage.latency.view_traces_link" prop on Typography.Link instead
Signed-off-by: Serena Ruan <serena.rxy@gmail.com>
56945db to
3e2871a
Compare
🥞 Stacked PR
Use this link to review incremental changes.
Related Issues/PRs
#xxxWhat changes are proposed in this pull request?
Add 'view traces' link in tooltip so that we can jump to the traces view filtered by the current timestamp. This currently only works for a single bar, if users want an easy way to filter a certain range I think we should support changing time range based on zoom in & out behavior instead later.
The selected time range is preserved between overview tab and traces tab, so when we jump back to overview tab the charts are automatically updated
Screen.Recording.2026-01-30.at.6.27.45.PM.mov
How is this PR tested?
Does this PR require documentation update?
Release Notes
Is this a user-facing change?
What component(s), interfaces, languages, and integrations does this PR affect?
Components
area/tracking: Tracking Service, tracking client APIs, autologgingarea/models: MLmodel format, model serialization/deserialization, flavorsarea/model-registry: Model Registry service, APIs, and the fluent client calls for Model Registryarea/scoring: MLflow Model server, model deployment tools, Spark UDFsarea/evaluation: MLflow model evaluation features, evaluation metrics, and evaluation workflowsarea/gateway: MLflow AI Gateway client APIs, server, and third-party integrationsarea/prompts: MLflow prompt engineering features, prompt templates, and prompt managementarea/tracing: MLflow Tracing features, tracing APIs, and LLM tracing functionalityarea/projects: MLproject format, project running backendsarea/uiux: Front-end, user experience, plotting, JavaScript, JavaScript dev serverarea/build: Build and test infrastructure for MLflowarea/docs: MLflow documentation pagesHow should the PR be classified in the release notes? Choose one:
rn/none- No description will be included. The PR will be mentioned only by the PR number in the "Small Bugfixes and Documentation Updates" sectionrn/breaking-change- The PR will be mentioned in the "Breaking Changes" sectionrn/feature- A new user-facing feature worth mentioning in the release notesrn/bug-fix- A user-facing bug fix worth mentioning in the release notesrn/documentation- A user-facing documentation change worth mentioning in the release notesShould this PR be included in the next patch release?
Yesshould be selected for bug fixes, documentation updates, and other small changes.Noshould be selected for new features and larger changes. If you're unsure about the release classification of this PR, leave this unchecked to let the maintainers decide.What is a minor/patch release?
Bug fixes, doc updates and new features usually go into minor releases.
Bug fixes and doc updates usually go into patch releases.