/** * {@inheritdoc} */ public function getStatus() { try { $states = $this->messageManager->countStates(); } catch (\Exception $e) { return new Failure(sprintf('Unable to retrieve message information - %s (Database)', $e->getMessage())); } if ($states[MessageInterface::STATE_IN_PROGRESS] > $this->checkLevel[MessageInterface::STATE_IN_PROGRESS]) { return new Failure('Too many messages processed at the same time (Database)'); } if ($states[MessageInterface::STATE_ERROR] > $this->checkLevel[MessageInterface::STATE_ERROR]) { return new Failure('Too many errors (Database)'); } if ($states[MessageInterface::STATE_OPEN] > $this->checkLevel[MessageInterface::STATE_OPEN]) { return new Warning('Too many messages waiting to be processed (Database)'); } if ($states[MessageInterface::STATE_DONE] > $this->checkLevel[MessageInterface::STATE_DONE]) { return new Warning('Too many processed messages, please clean the database (Database)'); } return new Success('Ok (Database)'); }