Extract running the report into a before_filter so that it can be overridden/wrapped
Fix crash when collecting a metric for an empty result set
Add ResultSet#empty?