my $logfile = "/foo/bar.log"; my $loops=0; open(FOO, ">>$logfile") || die "Could not open $logfile: $!\n"; flock(FOO, 1) or die "Could not lock $logfile: $!\n"; print FOO "**Begin timestamping**\n"; { print FOO "**", scalar localtime, "**\n"; flock(FOO, 8) or die "Could not unlock $logfile: $!\n"; $loops>500 and last; sleep(60*(rand(6)+5)); flock(FOO, 1) or die "Could not lock $logfile: $!\n"; redo; } close(FOO); exit;