in reply to Log message in Die handler

You could close FH in the handler, in which case the subsequent output to stderr (produced by the die statement the usual way) won't end up anywhere, neither in the file 'a', nor on stderr, because file descriptor 2 (which is used for both FH and STDERR in this case — as zwon pointed out) would then no longer be open at that point in time.  Or, as oshalla suggested, simply reopen STDERR to /dev/null.