You can set up the alerts, which should help.
Also , Note: The number of consecutive failures for a refresh is set to five by default, but can be changed by a Tableau Server administrator, using the
tabadmin set backgrounder.failure_threshold_for_run_preventioncommand. For more information, see tabadmin configuration options.
There is no automatic refresh on fail sort of functionality in Tableau Server but you might be able to build something like this with the Rest API, tabcmd, or using tableau -refreshextract from the command line.
I run a script each morning to refresh the extracts on the Ideas and Crow's Nest pages of the community. These scripts are setup to send emails to our team with the resulting extract outputs. I suppose if someone was more cleaver than myself and could account for the null reply and then act upon that in the script then something could be done with that as well.
Let us know how things go and if you find a solution to share with the community.