You are here

class DbLog in Production check & Production monitor 8

Dblog report

Plugin annotation


@ProdCheck(
  id = "dblog",
  title = @Translation("PHP errors"),
  category = "server",
  provider = "dblog"
)

Hierarchy

Expanded class hierarchy of DbLog

File

src/Plugin/ProdCheck/Server/DbLog.php, line 17

Namespace

Drupal\prod_check\Plugin\ProdCheck\Server
View source
class DbLog extends ProdCheckBase {

  /**
   * Error level
   */
  public $errorLevel;

  /**
   * Threshold
   */
  public $threshold;

  /**
   * The result of the query
   */
  public $result;

  /**
   * {@inheritdoc}
   */
  public function init() {
    $this->errorLevel = 0;
    $this->threshold = 0;

    // @todo this query is broken
    $this->result = \Drupal::database()
      ->query('SELECT COUNT(*) FROM (SELECT count(wid) FROM {watchdog} WHERE type = :type AND severity <= :severity GROUP BY variables HAVING COUNT(wid) >= :threshold) subquery', [
      ':type' => 'php',
      ':severity' => $this->errorLevel,
      ':threshold' => $this->threshold,
    ])
      ->fetchField();
  }

  /**
   * {@inheritdoc}
   */
  public function state() {
    return !$this->result;
  }

  /**
   * {@inheritdoc}
   */
  public function successMessages() {
    return [
      'value' => $this
        ->t('No PHP errors reported.'),
      'description' => $this
        ->t('Status is OK for production use.'),
    ];
  }

  /**
   * {@inheritdoc}
   */
  public function failMessages() {
    $link_array = $this
      ->generateLinkArray($this
      ->title(), 'dblog.overview');
    return [
      'value' => $this
        ->t('PHP errors reported.'),
      'description' => $this
        ->formatPlural($this->result, '@count PHP error occuring more than @threshold time(s) has been reported! Check the %link for details!', '@count PHP errors occuring more than @threshold time(s) have been reported! Check the %link for details!', [
        '%link' => implode($link_array),
        '@threshold' => $this->threshold,
      ]),
    ];
  }

}

Members

Namesort descending Modifiers Type Description Overrides
DbLog::$errorLevel public property Error level
DbLog::$result public property The result of the query
DbLog::$threshold public property Threshold
DbLog::failMessages public function Returns the fail messages for the check Overrides ProdCheckInterface::failMessages
DbLog::init public function Initializes the check plugin. Overrides ProdCheckBase::init
DbLog::state public function Calculates the state for the check. Overrides ProdCheckInterface::state
DbLog::successMessages public function Returns the success messages for the check. Overrides ProdCheckInterface::successMessages
DependencySerializationTrait::$_entityStorages protected property An array of entity type IDs keyed by the property name of their storages.
DependencySerializationTrait::$_serviceIds protected property An array of service IDs keyed by property name used for serialization.
DependencySerializationTrait::__sleep public function 1
DependencySerializationTrait::__wakeup public function 2
MessengerTrait::$messenger protected property The messenger. 29
MessengerTrait::messenger public function Gets the messenger. 29
MessengerTrait::setMessenger public function Sets the messenger.
PluginBase::$configuration protected property Configuration information passed into the plugin. 1
PluginBase::$pluginDefinition protected property The plugin implementation definition. 1
PluginBase::$pluginId protected property The plugin_id.
PluginBase::DERIVATIVE_SEPARATOR constant A string which is used to separate base plugin IDs from the derivative ID.
PluginBase::getBaseId public function Gets the base_plugin_id of the plugin instance. Overrides DerivativeInspectionInterface::getBaseId
PluginBase::getDerivativeId public function Gets the derivative_id of the plugin instance. Overrides DerivativeInspectionInterface::getDerivativeId
PluginBase::getPluginDefinition public function Gets the definition of the plugin implementation. Overrides PluginInspectionInterface::getPluginDefinition 3
PluginBase::getPluginId public function Gets the plugin_id of the plugin instance. Overrides PluginInspectionInterface::getPluginId
PluginBase::isConfigurable public function Determines if the plugin is configurable.
ProdCheckBase::$configFactory protected property The config factory
ProdCheckBase::$dateFormatter protected property The date formatter service
ProdCheckBase::$destination protected property The redirect destination service.
ProdCheckBase::$linkGenerator protected property The link generator service.
ProdCheckBase::$moduleHandler protected property The module handler service 1
ProdCheckBase::$processor protected property The prod check processor plugin manager.
ProdCheckBase::buildConfigurationForm public function Form constructor. Overrides PluginFormInterface::buildConfigurationForm 3
ProdCheckBase::calculateDependencies public function
ProdCheckBase::category public function Returns the title of the check Overrides ProdCheckInterface::category
ProdCheckBase::create public static function Creates an instance of the plugin. Overrides ContainerFactoryPluginInterface::create 1
ProdCheckBase::data public function Returns the extra data of the check. Overrides ProdCheckInterface::data 1
ProdCheckBase::defaultConfiguration public function Gets default configuration for this plugin. Overrides ConfigurableInterface::defaultConfiguration 3
ProdCheckBase::generateDescription protected function Helper function to generate generic 'settings OK' description.
ProdCheckBase::generateLinkArray protected function Helper function to generate link array to pass to the t() function
ProdCheckBase::getConfiguration public function Gets this plugin's configuration. Overrides ConfigurableInterface::getConfiguration
ProdCheckBase::setConfiguration public function Sets the configuration for this plugin instance. Overrides ConfigurableInterface::setConfiguration
ProdCheckBase::setProcessor public function Sets the processor
ProdCheckBase::severity public function Defines the severity of the check. Overrides ProdCheckInterface::severity 2
ProdCheckBase::submitConfigurationForm public function Form submission handler. Overrides PluginFormInterface::submitConfigurationForm 3
ProdCheckBase::title public function Returns the title of the plugin. Overrides ProdCheckInterface::title
ProdCheckBase::validateConfigurationForm public function Form validation handler. Overrides PluginFormInterface::validateConfigurationForm
ProdCheckBase::__construct public function Constructs a Drupal\Component\Plugin\PluginBase object. Overrides PluginBase::__construct 1
StringTranslationTrait::$stringTranslation protected property The string translation service. 1
StringTranslationTrait::formatPlural protected function Formats a string containing a count of items.
StringTranslationTrait::getNumberOfPlurals protected function Returns the number of plurals supported by a given language.
StringTranslationTrait::getStringTranslation protected function Gets the string translation service.
StringTranslationTrait::setStringTranslation public function Sets the string translation service to use. 2
StringTranslationTrait::t protected function Translates a string to the current language or to a given language.