coder / coder/vscode-coder

Intercept and mock failed SSH connections to provide log dumps, or even a troubleshooting link

Aperta
#235 1 commento 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
TypeScript
Stelle
130
Fork
48
Merge medio
3g 3h
PR unite (30g)
15

Descrizione

This is just an idea and was inspired by a customer-reported issue: https://github.com/coder/coder/issues/11978

## Background

Today, Coder already "mocks" real SSH by running `ProxyCommand`. This is awesome, because Coder sysadmins do not need to open port `22` on devices, but makes it difficult for `ssh`, VS Code, or other commands to get the full story of why a connection has failed. Some logs are available with `coder ssh -v`, but in cases like VS Code Remote SSH, paths to get this info are unclear to the user as they just see a "Cannot reconnect. Please reload the window." button

We are working on coder/coder#12160, which will allow admins (or pipelines with admin access) to collect diagnostic information on behalf of a workspace. However, users will not be able to request it, and in the case of #119878 there is an issue external to Coder (e.g. VPN troubleshooting) that is causing the issue.

## Proposal

If a connection to a workspace fails, we still "mock" the SSH request so that `ssh` or IDE plugins (VS Code and JetBrains) think it succeeds and then a message/hook can provide additional logging, or even link to an external wiki/service that gives the user more details on how to resolve/diagnose this issue.

By mocking an SSH connection, it allows us to inform extensions and provide a better UX than VS Code's "disconnected." It could be a useful utility for troubleshooting user connections by supplying more data or custom errors.

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Inizia leggendo la proposta e ricostruendo il modo in cui l’estensione attualmente si basa sul comportamento SSH ProxyCommand di Coder. Determina quindi come vengono segnalate le connessioni non riuscite alle integrazioni VS Code e JetBrains, poi definisci il messaggio diagnostico, l’hook o il link di troubleshooting supportato. Convalidalo rispetto al caso di errore segnalato dal cliente.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
typescript
Ambito
devtools
Tipo di issue
Funzionalità
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Ferma
Chiarezza
Da chiarire
Idoneità per principianti
25/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.