getsentry / getsentry/sentry

[Dashboards] Copy a selected time range and apply it to another dashboard

Open
#118,862 3 comments 0 reactions 0 assignees View on GitHub
3. Medium Dashboards Feature Product Area: Dashboards
Dominant language
Python
Stars
44.8k
Forks
4.9k
Avg merge
21h 10m
Merged PRs (30d)
635

Description

### Problem Statement

When investigating across multiple dashboards, users frequently need the same time window, especially an absolute custom range, on more than one dashboard. Today each dashboard holds its own time selection and there is no way to carry a selection from one dashboard to another. Users must manually re-enter the same absolute start and end on every dashboard, which is slow and error-prone during time-sensitive work like postmortems or cross-team handoffs.

**Why current behavior is insufficient**
Re-selecting an absolute window down to the minute on each dashboard is tedious and easy to get wrong, and there is no one-click way to reuse a window elsewhere. A mismatched window while correlating signals across dashboards can lead to wrong conclusions during an incident.

### Solution Brainstorm

**Proposed solution**
- A "copy time range" action on the dashboard time picker that produces a portable representation (URL param or ISO timestamps).
- A "paste / apply to this dashboard" action on another dashboard's time picker.
- The range is already encoded in URL params (statsPeriod for relative; start / end / utc for absolute), so a copy-selection-as-link or "apply last used range" affordance could reuse that and also make the window shareable, not just clipboard-local.

**Acceptance criteria**
- [ ] User can copy an active time range from dashboard A and apply it to dashboard B without re-entering dates.
- [ ] Absolute custom ranges are preserved exactly (no rounding or timezone offset).
- [ ] Works for both relative and absolute ranges.

### Product Area

Dashboards

Contributor guide

Open the contributing guide

Research direction

Start at the dashboard time picker and trace how the existing statsPeriod, start, end, and utc URL parameters are read and written. Implement a way to copy a selected range and apply it on another dashboard, then verify that relative ranges and exact absolute timestamps, including timezone information, are preserved.

Written by the indexing model from the issue text.

Assessment

Domain
frontend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.