diff options
author | Jacob Vosmaer <jacob@gitlab.com> | 2017-05-03 16:06:23 +0200 |
---|---|---|
committer | Jacob Vosmaer <jacob@gitlab.com> | 2017-05-23 15:26:35 +0200 |
commit | 33d583bf077b5f7b7fbb7eda2afb209944caf79e (patch) | |
tree | b066f19660c58affb8d43d6e52b1bfc967739e36 | |
parent | 25a32cfa1e0b1c7e6af723053bad0f432ffd0b32 (diff) | |
download | gitlab-shell-33d583bf077b5f7b7fbb7eda2afb209944caf79e.tar.gz |
Change signature of logger.Fatal
-rw-r--r-- | go/cmd/gitaly-receive-pack/main.go | 6 | ||||
-rw-r--r-- | go/cmd/gitaly-upload-pack/main.go | 6 | ||||
-rw-r--r-- | go/internal/logger/logger.go | 21 |
3 files changed, 17 insertions, 16 deletions
diff --git a/go/cmd/gitaly-receive-pack/main.go b/go/cmd/gitaly-receive-pack/main.go index 741c627..11a0f7b 100644 --- a/go/cmd/gitaly-receive-pack/main.go +++ b/go/cmd/gitaly-receive-pack/main.go @@ -16,15 +16,15 @@ func init() { func main() { if err := handler.Prepare(); err != nil { - logger.Fatal(err) + logger.Fatal("preparation failed", err) } var request pb.SSHReceivePackRequest if err := json.Unmarshal([]byte(os.Args[2]), &request); err != nil { - logger.Fatal(err) + logger.Fatal("unmarshaling request json failed", err) } if err := handler.ReceivePack(os.Args[1], &request); err != nil { - logger.Fatal(err) + logger.Fatal("receive-pack failed", err) } } diff --git a/go/cmd/gitaly-upload-pack/main.go b/go/cmd/gitaly-upload-pack/main.go index c588bb1..80ead2b 100644 --- a/go/cmd/gitaly-upload-pack/main.go +++ b/go/cmd/gitaly-upload-pack/main.go @@ -16,15 +16,15 @@ func init() { func main() { if err := handler.Prepare(); err != nil { - logger.Fatal(err) + logger.Fatal("preparation failed", err) } var request pb.SSHUploadPackRequest if err := json.Unmarshal([]byte(os.Args[2]), &request); err != nil { - logger.Fatal(err) + logger.Fatal("unmarshaling request json failed", err) } if err := handler.UploadPack(os.Args[1], &request); err != nil { - logger.Fatal(err) + logger.Fatal("upload-pack failed", err) } } diff --git a/go/internal/logger/logger.go b/go/internal/logger/logger.go index bff3c2d..6a4f2e3 100644 --- a/go/internal/logger/logger.go +++ b/go/internal/logger/logger.go @@ -31,24 +31,26 @@ func Configure(cfg *config.Config) error { return err } -func logPrint(msg ...interface{}) { +func logPrint(msg string, err error) { mutex.Lock() defer mutex.Unlock() if logWriter == nil { - bootstrapLogPrint(msg...) + bootstrapLogPrint(msg, err) return } // Emulate the existing log format of gitlab-shell t := time.Now().Format("2006-01-02T15:04:05.999999") - prefix := fmt.Sprintf("E, [%s #%d] ERROR -- : %s: ", t, pid, ProgName) - fmt.Fprintln(logWriter, append([]interface{}{prefix}, msg...)...) + prefix := fmt.Sprintf("E, [%s #%d] ERROR -- : %s:", t, pid, ProgName) + fmt.Fprintf(logWriter, "%s %s: %v\n", prefix, msg, err) } -func Fatal(msg ...interface{}) { - logPrint(msg...) - fmt.Fprintf(os.Stderr, "%s: fatal error\n", ProgName) +func Fatal(msg string, err error) { + logPrint(msg, err) + // We don't show the error to the end user because it can leak + // information that is private to the GitLab server. + fmt.Fprintf(os.Stderr, "%s: fatal: %s\n", ProgName, msg) os.Exit(1) } @@ -57,7 +59,7 @@ func Fatal(msg ...interface{}) { // function attemps to log to syslog. // // We assume the logging mutex is already locked. -func bootstrapLogPrint(msg ...interface{}) { +func bootstrapLogPrint(msg string, err error) { if bootstrapLogger == nil { var err error bootstrapLogger, err = syslog.NewLogger(syslog.LOG_ERR|syslog.LOG_USER, 0) @@ -67,6 +69,5 @@ func bootstrapLogPrint(msg ...interface{}) { } } - args := append([]interface{}{ProgName + ":"}, msg...) - bootstrapLogger.Print(args) + bootstrapLogger.Print(ProgName+":", msg+":", err) } |