From 41a34ad49f704ce4635ebec02faa390960f88bcb Mon Sep 17 00:00:00 2001 From: Sylvie Crowe <107814465+oneirocosm@users.noreply.github.com> Date: Mon, 30 Sep 2024 12:32:22 -0700 Subject: [PATCH] Add Extra Log Messages to Improve Debugging Experience (#906) This adds more debugging statements for connections and ai chat, in order to provide us more context if users run into bugs. --- pkg/remote/conncontroller/conncontroller.go | 4 ++++ pkg/remote/sshclient.go | 3 ++- pkg/wshrpc/wshserver/wshserver.go | 2 ++ 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/pkg/remote/conncontroller/conncontroller.go b/pkg/remote/conncontroller/conncontroller.go index b3ec612ab..c90db1fa3 100644 --- a/pkg/remote/conncontroller/conncontroller.go +++ b/pkg/remote/conncontroller/conncontroller.go @@ -416,6 +416,7 @@ func (conn *SSHConn) WithLock(fn func()) { func (conn *SSHConn) connectInternal(ctx context.Context) error { client, err := remote.ConnectToClient(ctx, conn.Opts) //todo specify or remove opts if err != nil { + log.Printf("error: failed to connect to client %s: %v\n", conn.GetName(), err) return err } fmtAddr := knownhosts.Normalize(fmt.Sprintf("%s@%s", client.User(), client.RemoteAddr().String())) @@ -425,14 +426,17 @@ func (conn *SSHConn) connectInternal(ctx context.Context) error { }) err = conn.OpenDomainSocketListener() if err != nil { + log.Printf("error: unable to open domain socket listener for %s: %v\n", conn.GetName(), err) return err } installErr := conn.CheckAndInstallWsh(ctx, clientDisplayName, nil) if installErr != nil { + log.Printf("error: unable to install wsh shell extensions for %s: %v\n", conn.GetName(), err) return fmt.Errorf("conncontroller %s wsh install error: %v", conn.GetName(), installErr) } csErr := conn.StartConnServer() if csErr != nil { + log.Printf("error: unable to start conn server for %s: %v\n", conn.GetName(), csErr) return fmt.Errorf("conncontroller %s start wsh connserver error: %v", conn.GetName(), csErr) } conn.HasWaiter.Store(true) diff --git a/pkg/remote/sshclient.go b/pkg/remote/sshclient.go index 0d1ec9f36..13ee56d31 100644 --- a/pkg/remote/sshclient.go +++ b/pkg/remote/sshclient.go @@ -473,7 +473,7 @@ func createHostKeyCallback(opts *SSHOpts) (ssh.HostKeyCallback, HostKeyAlgorithm offendingKeysFmt = append(offendingKeysFmt, formattedKey) } // todo - _ = fmt.Sprintf("**WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!**\n\n"+ + errorMsg := fmt.Sprintf("**WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!**\n\n"+ "If this is not expected, it is possible that someone could be trying to "+ "eavesdrop on you via a man-in-the-middle attack. "+ "Alternatively, the host you are connecting to may have changed its key. "+ @@ -485,6 +485,7 @@ func createHostKeyCallback(opts *SSHOpts) (ssh.HostKeyCallback, HostKeyAlgorithm "%s\n\n"+ "**Offending Keys** \n"+ "%s", key.Type(), correctKeyFingerprint, strings.Join(bulletListKnownHosts, " \n"), strings.Join(offendingKeysFmt, " \n")) + log.Print(errorMsg) //update := scbus.MakeUpdatePacket() // create update into alert message diff --git a/pkg/wshrpc/wshserver/wshserver.go b/pkg/wshrpc/wshserver/wshserver.go index f51953ccd..6cac789cd 100644 --- a/pkg/wshrpc/wshserver/wshserver.go +++ b/pkg/wshrpc/wshserver/wshserver.go @@ -75,8 +75,10 @@ func (ws *WshServer) StreamTestCommand(ctx context.Context) chan wshrpc.RespOrEr func (ws *WshServer) StreamWaveAiCommand(ctx context.Context, request wshrpc.OpenAiStreamRequest) chan wshrpc.RespOrErrorUnion[wshrpc.OpenAIPacketType] { if request.Opts.BaseURL == "" && request.Opts.APIToken == "" { + log.Print("sending ai chat message to waveterm default endpoint with openai\n") return waveai.RunCloudCompletionStream(ctx, request) } + log.Printf("sending ai chat message to user-configured endpoint %s\n", request.Opts.BaseURL) return waveai.RunLocalCompletionStream(ctx, request) }