grafana / oncall

Developer-friendly incident response with brilliant Slack integration
GNU Affero General Public License v3.0
3.55k stars 294 forks source link

Allow setting timezone for schedule in Web UI #1530

Open thomasmitchell opened 1 year ago

thomasmitchell commented 1 year ago

Being able to set the timezone that a schedule's shifts are in from the Web UI would be useful. Daylight savings time happened over the weekend, and it's become apparent that our schedules are all in UTC, as they are now offset by an hour.

Current frontend/backend version: v1.1.32

bck01215 commented 2 months ago

https://github.com/grafana/oncall/pull/3618

Unsure if this fixed the issue or just updated an apparent gap. It would be nice to have schedules automatically update based on a timezone instead of just GMT time.

njohnstone2 commented 2 months ago

Looks like this is still an issue (v1.9.25).

Like the reporter, I'm specifically using web schedules and it would be really great to see the ability to configure a timezone per schedule for geographically distributed teams. Currently each schedules' rotations for my affected teams need to be adjusted whenever daylight savings starts/ends.

Konstantinov-Innokentii commented 1 month ago

@matiasb Could you please write down problem definition & some possible ideas here, since you seems to have most of the context here?

matiasb commented 1 month ago

@matiasb Could you please write down problem definition & some possible ideas here, since you seems to have most of the context here?

Sure! There is a summary/proposed high-level plan I drafted some time ago in this doc (will re-check/update some bits).

uschenk commented 1 month ago

Yes, we need this. After day light saving time ended the team has to start one hour earlier because the schedule was created with GMT+7 and now we are in GMT+8

1) Allow localized timezones to be set as default, so that the start dates are based on localized times when we create a schedule for the whole year. For example allow "America/Los Angeles" as time zone, and not just GMT+7 and GMT+8. That way the scheduler can pick and choose if he wants all shifts to start at a certain local time or link all shifts to a specific global time.

2) Make it possible to adjust/edit time zone for each shift in the UI. Allow localized time zones 3) Allow to set the time zone in the "Add Rotation" dialog. Allow localized time zones

zackman0010 commented 4 weeks ago

Another +1 for this. Our on-call schedules run on a weekly basis with rotation happening on Monday at 9:00. This schedule was set up during DST. After DST ended this past weekend, our schedules are now rotating Monday at 8:00.

In a testing environment, I created a schedule with a time zone through the API, and it successfully transitioned the time when DST changed. So all the code for time zones is already there, we just need the ability to actually set it through the web.