Nesting level of the zone. Used to check that zones are exited in the correct (hierarchical) order, i.e. a child zone must be ended before its parent zone.
Note: zoneEndEvent should only be called directly where the Zone struct is not sufficient (i.e. where a zone cannot be wrapped in a scope).
Emit a zone end event, when code exits a zone.