- open(my $fh, '>', $file) or die "Cannot open $file for writing: $!\n";
- print {$fh} $http->content;
- close($fh);
+ my ($http, $retry, $tries);
+ $http = undef;
+
+ do {
+ $retry = false;
+ $tries++;
+ eval {
+ $http = $mech->get($Config->{events_url});
+ } or do {
+ warn "[${\scalar localtime}] $@";
+ $retry = ($tries < $Config->{max_tries}) ? true : false;
+ sleep $Config->{sleep_secs} if $retry;
+ };
+ } while ($retry);
+
+ if (defined $http) {
+ open(my $fh, '>', $file) or die "Cannot open $file for writing: $!\n";
+ print {$fh} $http->content;
+ close($fh);
+ }
+ else {
+ warn "[${\scalar localtime}] ${\File::Basename::basename($0)} not entirely run, no http content\n";
+ exit;
+ }