async def METHOD_NAME(self, app: AppT) -> None:
    current_value: Any = self.get_value()
    prev_value = self.prev_value
    severity = app.log.info
    try:
        if prev_value is not None:
            if self.compare(prev_value, current_value):
                self.faults += 1
                self.status = self.get_state_for_faults(self.faults)
                severity = self.state_to_severity.get(self.status, logging.INFO)
                await self.on_failed_log(severity, app, prev_value, current_value)
            else:
                self.faults = 0
                self.status = states.OK
                await self.on_ok_log(app, prev_value, current_value)
        self.store_previous_value(current_value)
    except Exception as exc:
        print(f"ERROR: {exc!r}")
        raise