Two virtual machines have been created automatically in my application layer and Redis cache and in the application layer I get the following error:
Health check on port 8080 has failed. Your app is not responding properly. Services exposed on ports [80, 443] will have intermittent failures until the health check passes.
Can someone help me to fix this error and restore the service. Thank you so much.
The first place to look would be the logs. There should be some indication there for why that health check is failing. For example an app error, database issue, exception, timeout … something. You can see those logs in the dashboard or by running fly logs.
If not, check the metrics for the app to check it hasn’t hit any limit (on CPU, RAM …) which could also explain why it’s not responding.
Depending what kind of app it is, you may need to configure some kind of grace period on the healthcheck if it takes a second or two to respond and so gives up waiting.
Are you able to see any other log lines ? If you have the Fly CLI installed, that is often more helpful. If you have, run fly logs from the folder your app’s fly.toml file is in. That may show a bit more about why.
flyctl logs
does not show any log in the CLI and in the Web service dashnboard not show logs. And fly admin bot change the version to v27.
Is there a way to go back to the version in which the application works?
There may be a better way as Fly keep adding stuff however you can revert to a prior version. Check out:
Or if you have it working locally, I would assume a new deploy (using that working code) would also work on Fly. I can’t see why not, assuming e.g all the secrets/environment variables it expects are present. That’s a nice thing about using Dockerfile based images: you should be able to recreate the same locally.