From da7e9e23caf86b6b37a9ea35e1dd1c57fa4ea9d3 Mon Sep 17 00:00:00 2001 From: Shreyas Goenka Date: Sun, 2 Mar 2025 17:18:03 +0100 Subject: [PATCH] add debug logs --- .../telemetry/upload-fails/out.upload_process.txt | 11 ++++++++++- .../upload-partially-succeeds/out.upload_process.txt | 11 ++++++++++- libs/telemetry/upload.go | 8 ++++++-- 3 files changed, 26 insertions(+), 4 deletions(-) diff --git a/acceptance/telemetry/upload-fails/out.upload_process.txt b/acceptance/telemetry/upload-fails/out.upload_process.txt index e78f05b59..ff936316e 100644 --- a/acceptance/telemetry/upload-fails/out.upload_process.txt +++ b/acceptance/telemetry/upload-fails/out.upload_process.txt @@ -1 +1,10 @@ -error: upload did not succeed after three attempts. err: &retries.Err{Err:(*apierr.APIError)(0x14000361540), Halt:true}. response body: (*telemetry.ResponseBody)(nil) +attempt 0: +err: Endpoint not implemented. +response body: (*telemetry.ResponseBody)(nil) +attempt 1: +err: Endpoint not implemented. +response body: (*telemetry.ResponseBody)(nil) +attempt 2: +err: Endpoint not implemented. +response body: (*telemetry.ResponseBody)(nil) +error: upload did not succeed after three attempts diff --git a/acceptance/telemetry/upload-partially-succeeds/out.upload_process.txt b/acceptance/telemetry/upload-partially-succeeds/out.upload_process.txt index d1f9d6f04..9ab49e42a 100644 --- a/acceptance/telemetry/upload-partially-succeeds/out.upload_process.txt +++ b/acceptance/telemetry/upload-partially-succeeds/out.upload_process.txt @@ -1 +1,10 @@ -error: upload did not succeed after three attempts. err: . response body: &telemetry.ResponseBody{Errors:[]telemetry.LogError{}, NumProtoSuccess:1} +attempt 0: +err: %!s() +response body: &telemetry.ResponseBody{Errors:[]telemetry.LogError{}, NumProtoSuccess:1} +attempt 1: +err: %!s() +response body: &telemetry.ResponseBody{Errors:[]telemetry.LogError{}, NumProtoSuccess:1} +attempt 2: +err: %!s() +response body: &telemetry.ResponseBody{Errors:[]telemetry.LogError{}, NumProtoSuccess:1} +error: upload did not succeed after three attempts diff --git a/libs/telemetry/upload.go b/libs/telemetry/upload.go index f92bfef1e..12b6faab3 100644 --- a/libs/telemetry/upload.go +++ b/libs/telemetry/upload.go @@ -79,7 +79,7 @@ func Upload(ctx context.Context) (*ResponseBody, error) { var resp *ResponseBody // Only try uploading logs for a maximum of 3 times. - for range 3 { + for i := range 3 { // TODO: Confirm that the timeout of a request here is indeed one minute. resp, err = attempt(ctx, apiClient, logs) @@ -88,6 +88,10 @@ func Upload(ctx context.Context) (*ResponseBody, error) { return resp, nil } + fmt.Fprintf(os.Stderr, "attempt %d:\n", i) + fmt.Fprintf(os.Stderr, "err: %s\n", err) + fmt.Fprintf(os.Stderr, "response body: %#v\n", resp) + // Partial success. Retry. if err == nil && resp.NumProtoSuccess < int64(len(logs)) { time.Sleep(2 * time.Second) @@ -104,7 +108,7 @@ func Upload(ctx context.Context) (*ResponseBody, error) { } } - return resp, fmt.Errorf("upload did not succeed after three attempts. err: %#v. response body: %#v", err, resp) + return resp, errors.New("upload did not succeed after three attempts") } func attempt(ctx context.Context, apiClient *client.DatabricksClient, protoLogs []string) (*ResponseBody, error) {