X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=main.go;h=8d9865baee82854b8ed670c37f6deeb3ee7e884e;hb=8419a866a61302538175673c2a7f2992238a8eb9;hp=4cc05e6e561a5e52c032ec6734f92dbf2788f891;hpb=9a0c120497cfe3cfdca6dfd084e999b6ab915ce8;p=src%2Fxds%2Fxds-gdb.git diff --git a/main.go b/main.go index 4cc05e6..8d9865b 100644 --- a/main.go +++ b/main.go @@ -58,7 +58,7 @@ var AppSubVersion = "unknown-dev" // Create logger var log = logrus.New() -var logFileInitial = "/tmp/xds-gdb.log" +var logFileInitial = path.Join(os.TempDir(), "xds-gdb.log") // Application details const ( @@ -100,14 +100,15 @@ func main() { logFile = logFileInitial fdL, err := os.OpenFile(logFileInitial, os.O_CREATE|os.O_TRUNC|os.O_WRONLY, 0666) if err != nil { - msgErr := fmt.Sprintf("Cannot create log file %s", logFileInitial) - exitError(syscall.EPERM, msgErr) + fmt.Printf("WARNING: Cannot create initial log file %s\n", logFileInitial) + log.Level = logrus.WarnLevel + } else { + log.Out = fdL + log.Level = logrus.DebugLevel } log.Formatter = &logrus.TextFormatter{} - log.Out = fdL - log.Level = logrus.DebugLevel - agentURL = "localhost:8000" + agentURL = "localhost:8800" logLevel = defaultLogLevel // Create a new App instance @@ -340,7 +341,13 @@ endloop: }) gdb.OnDisconnect(func(err error) { - fmt.Println("Disconnection: ", err.Error()) + errMsg := "\nXDS-Agent disconnected" + if err != nil { + fmt.Printf("%s: %v\n", errMsg, err.Error()) + } else { + fmt.Println(errMsg) + } + exitChan <- exitResult{err, int(syscall.ESHUTDOWN)} }) @@ -350,8 +357,14 @@ endloop: log.Debugf("Recv OUT: <%s>", stdout) } if stderr != "" { - fmt.Fprintf(os.Stderr, "%s", stderr) - log.Debugf("Recv ERR: <%s>", stderr) + // Filter-out ugly message (python error when cross gdb exited) + if !strings.Contains(stderr, "readline.write_history_file") && + !(strings.Contains(stderr, "Traceback") && strings.Contains(stderr, "__exithandler")) { + fmt.Fprintf(os.Stderr, "%s", stderr) + log.Debugf("Recv ERR: <%s>", stderr) + } else { + log.Debugf("Recv ERR (FILTERED OUT): <%s>", stderr) + } } // Correctly report error about init file @@ -461,8 +474,8 @@ endloop: time.Sleep(time.Millisecond * 200) } - gdb.Write(command + "\n") log.Debugf("Send: <%v>", command) + gdb.Write(command + "\n") } log.Infof("Stdin scanner exit, close stdin (err=%v)", sc.Err())