![]() ![]() This status is also returned when the request provides an invalid code parameter during the OAuth token exchange process. ![]() The request wasn't understood by the server, generally due to bad syntax or because the Content-Type header wasn't correctly set to application/json. The response to the request can be found under a different URL in the Location header and can be retrieved using a GET method on that resource. For example, if a user fills out a form and submits it, then the 205 code means that the server is making a request to the browser to clear the form. The client must reset the document from which the original request was sent. The request has been accepted, but no content will be returned. ![]() For example, a client might use an update operation to save a document temporarily, and not refresh to a new page. The request has been accepted, but not yet processed. The request has been fulfilled and a new resource has been created. The request was successfully processed by Shopify. When Shopify receives a request to an API endpoint, a number of different HTTP status codes can be returned in the response depending on the original request. One convenient way to exclude readiness checks from being counted as errors is to move its response code out of the HTTP 5xx range.Shopify API response status and error codes In short: A readiness check failure is not an error. Failing the readiness check should cause the upstream haproxy to stop sending traffic to that node, so as long as the remaining healthy portion of the fleet can handle the surplus workload, it's a stable and healthy automatic response that doesn't necessarily require immediate human intervention.The readiness check is intended to fail during maintenance like deploys. ![]() Per Slack discussion, we believe it is appropriate to exclude the failures of readiness check requests from our error-rate counter because: Unfortunately, these expected HTTP 503 responses count towards the threshold for Prometheus alert "HighRailsErrorRateCritical", which needlessly pages the EOC. When those Rails instances get restarted for routine maintenance, there is a transitional period during which the readiness health check intentionally fails, returning an HTTP 503 response code. Routine deploys often trigger a false alarm in PagerDuty: "High Rails Error Rate on Front End"Įach of our many HAProxy frontend nodes frequently polls the /-/readiness endpoint on its backing the Rails instances. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |