-
Notifications
You must be signed in to change notification settings - Fork 5k
Open
Description
When AutoOps receives an error from the Cloud Connected API, it hides the error unintentionally.
failed to register for Cloud Connected Mode: failed to fetch data: HTTP error 400 Bad Request
However, the Cloud Connected API returns a structured error object and we should display any error presented to the end user, like:
{
"errors": [
{
"code": "clusters.create_cluster.license_already_in_use",
"message":"license is already in use in a different organization"
}
]
}
Relevant code is here:
beats/x-pack/metricbeat/module/autoops_es/metricset/register.go
Lines 145 to 153 in f6a858e
data, err := utils.HandleHTTPResponse[cloudConnectedResource](http.DefaultClient.Do(req)) //nolint:bodyclose // the handler closes the body | |
if err == nil { | |
utils.SetResourceID(data.ID) | |
logger.Infof("Registered cluster %s for Cloud Connected Mode: %s", clusterInfo.ClusterID, data.ID) | |
return nil | |
} | |
return fmt.Errorf("failed to register for Cloud Connected Mode: %w", err) |