class ResourceMeterMaintainer extends ControllerMaintainer {

    @Override
    protected boolean maintain() {
        try {
            collectResourceSnapshots();
            return true;
        } catch (Exception e) {
            log.log(Level.WARNING, "Failed to collect resource snapshots. Retrying in " + interval() + ". Error: " +
                                   Exceptions.toMessageString(e));
        }
        return false;
    }

    @SuppressWarnings("WeakerAccess") public  ResourceMeterMaintainer(Controller controller,
                                   Duration interval,
                                   Metric metric,
                                   MeteringClient meteringClient);

}