private function reportOn(MetricSet $set) : array
    {
        $errors = [];
        foreach ($this->reporters as $reporter) {
            try {
                $reporter->reportOn($set);
            } catch (\Exception $e) {
                $errors[] = $e;
            }
        }

        return $errors;
    }
private function reportOn(MetricSet $set) : array
    {
        $errors = [];
        foreach ($this->reporters as $reporter) {
            try {
                $reporter->reportOn($set);
            } catch (\Exception $e) {
                $errors[] = $e;
            }
        }

        return $errors;
    }
private function reportOn ( MetricSet $ set ) : array { $ errors = [ ] ; foreach ( $ this -> reporters as $ reporter ) { try { $ reporter -> reportOn ( $ set ) ; } catch ( \ Exception $ e ) { $ errors [ ] = $ e ; } } return $ errors ; }
Deliberately only catches `Exception` objects rather than all throwables.

Exceptions are more likely to mean that something went wrong in the reporter
vs an error (which probably means the programmer messed up).
Deliberately only catches Exception objects rather than all throwables .