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

オープン
#235 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
5/5
見積もり時間
1週間以上
初心者へのやさしさ
25/100
issue の種類
機能追加
明瞭さ
説明が足りない
活発さ
停滞
技術スタック
typescript
領域
devtools

調査の方向性

まず提案を読み、現在この拡張機能が Coder の SSH ProxyCommand の動作にどのように依存しているかを追跡します。次に、失敗した接続が VS Code および JetBrains の統合にどのように通知されるかを確認し、サポートする診断メッセージ、hook、または troubleshooting リンクを定義します。最後に、顧客から報告された失敗事例に対して検証します。

索引モデルが issue の本文から書いたものです。

説明

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.

主要言語
TypeScript
スター
131
フォーク
48
平均マージ
4日 16時間
マージ済み PR(30日)
13

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

coder/vscode-coder のほかの issue

coder/vscode-coder の issue をすべて見る

似ている issue

TypeScript の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。