anchor.diff:  1. Infrastructure
       - Load Balancer
       - Network
  -2. Platform - CF
  +2. Platform - <%= vars.product_name %>
       - Gorouter
       - Diego Cell(s)
   3. Application
  
positive.code: 
  <strong><%= modified_date %></strong>
  
  This topic helps operators to better understand if 502's are a result of the Cloud Foundry Platform or an application.
  
  ## <a id="points-of-failure"></a> Points of Failure
  
  
negative.code:     "error":"x509:certificate is valid for 53079ca3-c4fe-4910-78b9-c1a6, not xxx"}}
      </pre>
      - If the Gorouter successfully connects to the endpoint, but an error occurs while the request is in transport (i.e. Gorouter has not received a response from the endpoint):
      - Prior to <%= vars.routing_version %>, there was a bug that logged a 502 for requests canceled by clients before the server responded with headers. <%= vars.routing_version %> and beyond, if the same situation occurs, a 499 is returned.
  
  In an **Application**, 502's can occur in the following ways (Note: the Gorouter will not retry any error response that is returned by the application):
  
  - If 502's are only occuring from a particular application instance(s) and not all of the applications on the  platform, then it is likely an application-related error (i.e. application is overloaded, unresponsive, can't connect to database, etc.).
  - If all applications are experiencing 502's, then it could either be a platform issue (possible misconfiguration) or an application issue (i.e. all applications are unable to connect to an upstream database).
  
  ## <a id="debugging-steps"></a> General Debugging Steps
  
  Here are general debugging steps for any issue resulting with 502 error codes:
  
  - Gather the Gorouter logs & Diego Cell logs at the time of the incident. <%= vars.gather_routing_logs %>
  - Review the logs and consider the following questions:
      1. Which errors are the Gorouters returning?
      2. Is the Gorouter's [routing table](https://github.com/cloudfoundry/gorouter#dynamic-routing-table) accurate (are the endpoints for the route as expected)?
      3. Do the Diego Cell logs have anything interesting about unexpected app crashes and/or restarts?
      4. Is the application healthy and handling requests successfully? (try using [request tracing headers](../concepts/http-routing.html#zipkin-headers) to verify)
  - Was there a recent platform change/upgrade that caused an increase in 502's?
  - Are there any suspicious [metrics](<%= vars.gorouter_metrics_link %>) spiking? How is CPU & Memory utilzation?
  
  ## <a id="gorouter-error-classification"></a>Gorouter Error Classification Table
  
  