monitoring-8.x-1.x-dev/monitoring.install
monitoring.install
<?php
/**
* @file
* Monitoring base install file.
*/
use Drupal\Core\Logger\RfcLogLevel;
use Drupal\Core\Serialization\Yaml;
use Drupal\monitoring\Entity\SensorConfig;
/**
* Maps severities to their machine names.
*
* @return array
* Severity names array keyed by RfcLogLevel constants.
*/
function monitoring_event_severities() {
@trigger_error(__FUNCTION__ . ' is deprecated in monitoring:8.x-1.17 and is removed from monitoring:2.0.0. There is no replacement. See https://www.drupal.org/node/3524881', E_USER_DEPRECATED);
return array(
RfcLogLevel::DEBUG => 'debug',
RfcLogLevel::INFO => 'info',
RfcLogLevel::NOTICE => 'notice',
RfcLogLevel::WARNING => 'warning',
RfcLogLevel::ERROR => 'error',
RfcLogLevel::EMERGENCY => 'emergency',
RfcLogLevel::ALERT => 'alert',
RfcLogLevel::CRITICAL => 'critical',
);
}
/**
* Creates the used temporary files sensor config.
*/
function monitoring_update_8101() {
// Only create if the sensor config does not exist yet.
if (!SensorConfig::load('temporary_files_usages')) {
$config_path = \Drupal::service('extension.list.module')->getPath('monitoring') . '/config/install/monitoring.sensor_config.temporary_files_usages.yml';
$data = Yaml::decode(file_get_contents($config_path));
\Drupal::service('monitoring.sensor_manager')->clearCachedDefinitions();
SensorConfig::create($data)->trustData()->save();
return 'Created new sensor to monitor used temporary files';
}
}
/**
* Disable user sensors, if dblog is not installed.
*/
function monitoring_update_8102() {
if (!\Drupal::moduleHandler()->moduleExists('dblog')) {
$sensor_configs = SensorConfig::loadMultiple([
'user_failed_logins',
'user_session_logouts',
'user_successful_logins',
'user_void_failed_logins',
]);
foreach ($sensor_configs as $sensor) {
$sensor->delete();
}
}
}
/**
* Change count field to daily_count in redirect 404 sensor.
*/
function monitoring_update_8103() {
$redirect_404_sensor = SensorConfig::load('redirect_404');
if ($redirect_404_sensor) {
$verbose_fields = $redirect_404_sensor->getSetting('verbose_fields', []);
if (($key = array_search('count', $verbose_fields)) !== FALSE) {
array_splice($verbose_fields, $key + 1, 0, 'daily_count');
$settings = $redirect_404_sensor->getSettings();
$settings['verbose_fields'] = $verbose_fields;
$redirect_404_sensor->set('settings', $settings)->save();
}
}
}
