Handlers run multiple times since chef 13 upgrade

I have a handler that is installed (via client.rb) as both an exception handler and as a report handler which sends email if failed? is true (when running as an exception handler) or if elapsed_time is over ten minutes (when running as a report handler).

Since upgrading from chef client 12.21.26 to 13.6.4 it seems that in both cases the handler is being run multiple times meaning that I get a dozen or more emails for each failure.

The number of times then run seems to be different for each machine - possibly it is once per cookbook or something?

Is this expected? Is there a way to get the old behaviour back? or just to know when this isn’t the first run of the handler for a given chef run?