Merge pull request #17842 from henrybear327/gofail/show_req_error_msg

gofail: show error messages returned by gofail HTTP endpoints
This commit is contained in:
Marek Siarkowicz 2024-04-29 08:46:54 +02:00 committed by GitHub
commit 2a8f77c99a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -375,7 +375,11 @@ func (f *BinaryFailpoints) SetupHTTP(ctx context.Context, failpoint, payload str
}
defer resp.Body.Close()
if resp.StatusCode != http.StatusNoContent {
return fmt.Errorf("bad status code: %d", resp.StatusCode)
errMsg, err := io.ReadAll(resp.Body)
if err != nil {
return fmt.Errorf("bad status code: %d, err: %w", resp.StatusCode, err)
}
return fmt.Errorf("bad status code: %d, err: %s", resp.StatusCode, errMsg)
}
return nil
}
@ -404,17 +408,18 @@ func (f *BinaryFailpoints) DeactivateHTTP(ctx context.Context, failpoint string)
}
defer resp.Body.Close()
if resp.StatusCode != http.StatusNoContent {
return fmt.Errorf("bad status code: %d", resp.StatusCode)
errMsg, err := io.ReadAll(resp.Body)
if err != nil {
return fmt.Errorf("bad status code: %d, err: %w", resp.StatusCode, err)
}
return fmt.Errorf("bad status code: %d, err: %s", resp.StatusCode, errMsg)
}
return nil
}
func (f *BinaryFailpoints) Enabled() bool {
_, err := failpoints(f.member)
if err != nil {
return false
}
return true
return err == nil
}
func (f *BinaryFailpoints) Available(failpoint string) bool {
@ -449,8 +454,12 @@ func fetchFailpointsBody(member EtcdProcess) (io.ReadCloser, error) {
return nil, err
}
if resp.StatusCode != http.StatusOK {
resp.Body.Close()
return nil, fmt.Errorf("invalid status code, %d", resp.StatusCode)
defer resp.Body.Close()
errMsg, err := io.ReadAll(resp.Body)
if err != nil {
return nil, fmt.Errorf("invalid status code: %d, err: %w", resp.StatusCode, err)
}
return nil, fmt.Errorf("invalid status code: %d, err:%s", resp.StatusCode, errMsg)
}
return resp.Body, nil
}