-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
When a workspace is idled for inactivity user is redirected to Che dashboard #20599
Comments
Hi, I would like to help investigate this issue |
Does anyone know how this was implemented for che-server based workspaces? I don't know how it was implemented before, but an idea I have for this issue is to use the Errors middleware https://doc.traefik.io/traefik/middlewares/http/errorpages/ to redirect requests to the dashboard when there is a 503/504 error code |
@dkwon17 I would guess that behavior with che-workspaces was similar to what's reported here. The traefik's errors middleware looks promising. |
Thank you @sparkoo , I'll take a deeper look |
@dkwon17 it was not implemented for che-server workspaces. Che-Server workspaces were displayed through an iframe of the dashboard. Now, as we're connected directly to the IDE route without being included in an Iframe this is why it needs to be handled on the routing side. |
Hi @amisevsk , when a DW stops, would having the DWO delete the workspace service ( EDIT: In other words, if I set the timeout to 5s, when an idled workspace is refreshed, we will try to establish a connection to the workspace service for 5s. If we cannot, then the Errors middlware redirects the request to the dashboard. |
Deleting the service would be controlled by the Che Operator, as it hosts the routing controller for the Currently, DWO will clean up workspace resources (including the DevWorkspaceRouting) if it has the configuration setting |
I have two WIP implementations, at the moment I'm leaning towards implementation 2 since I think it is a bit simpler: Implementation 1: Change traefik routes when devworkspace is stopped: eclipse-che/che-operator#1386
Implementation 2: Use errors middleware: Branch
I suspect it might be easier to redirect to a dashboard error page with implementation 2, because the Errors middleware has a dedicated |
I also lean towards the middleware errors approach without changing the traefik config. |
@dkwon17 all the PRs have been merged, can the issue be closed? |
@ibuziuk I would say so. For context, refreshing the editor page of a stopped workspace now results in this page from the dashboard: |
sync'd to Red Hat Jira https://issues.redhat.com/browse/CRW-3181 |
Is your enhancement related to a problem? Please describe
Let say I'm accessing an endpoint of a workspace at
https://che-eclipse-che.apps.my-cluster.com/workspace<tons-of-digits>/<endpoint-name>/8080
if my workspace is stopped, I will get like a basic 503 error (or another http error)
Describe the solution you'd like
I would like to have a page allowing to be redirected to the dashboard to restart my workspace if the workspace is down
Describe alternatives you've considered
Anything that may be more user friendly for the user if he refresh the editor page on a stopped workspace
Release Notes Text
When a workspace is stopped after an inactivity now the users are redirected to the Dashboard. Previously a 503 error was displayed.
The text was updated successfully, but these errors were encountered: