Descobri isso. Você precisa do proxy_next_upstream
decl para pegar esses erros, a la:
location / {
proxy_pass http://appservers;
proxy_set_header X-Scheme $scheme;
proxy_connect_timeout 5s;
proxy_next_upstream error timeout http_502 http_503 http_504;
error_page 502 503 504 http://failwhale.myapp.com;
}