function monitoring_demo_enable in Monitoring 7
Implements hook_enable().
Executes setup of monitoring sensors to provide the demo functionality.
File
- test/
monitoring_demo.install, line 12 - Install file of the monitoring_demo module.
Code
function monitoring_demo_enable() {
require_once drupal_get_path('module', 'monitoring') . '/monitoring.setup.inc';
// Set the front page to monitoring-demo.
variable_set('site_frontpage', 'monitoring-demo');
// Create a few nodes and comments as sample data for some sensors.
$node = _monitoring_setup_create_node(array(
'type' => 'article',
));
_monitoring_setup_create_comment($node);
_monitoring_setup_create_comment($node);
_monitoring_setup_create_node();
$node = _monitoring_setup_create_node(array(
'type' => 'article',
));
_monitoring_setup_create_comment($node);
_monitoring_setup_create_comment($node);
_monitoring_setup_create_comment($node);
_monitoring_setup_create_node();
$sensor_manager = monitoring_sensor_manager();
// Setup search API.
monitoring_setup_search_api();
$sensor_manager
->resetCache();
$indexes = search_api_index_load_multiple(FALSE);
// Enable sensor for the index created above.
if (!empty($indexes)) {
foreach ($indexes as $index) {
$sensor_manager
->enableSensor('search_api_' . $index->machine_name);
}
}
// Enable content sensors.
$sensor_manager
->enableSensor('node_new_all');
$sensor_manager
->enableSensor('node_new_page');
$sensor_manager
->enableSensor('node_new_article');
$sensor_manager
->enableSensor('comment_new');
// Generate watchdog entries.
// Watchdog sensors are enabled by default, no need to enable them here.
for ($i = 0; $i < 20; $i++) {
watchdog('sensor_demo', _monitoring_setup_random_name(), array(), WATCHDOG_ERROR);
watchdog('sensor_demo', _monitoring_setup_random_name(), array(), WATCHDOG_NOTICE);
}
for ($i = 0; $i < 10; $i++) {
watchdog('sensor_demo', _monitoring_setup_random_name(), array(), WATCHDOG_INFO);
watchdog('sensor_demo', _monitoring_setup_random_name(), array(), WATCHDOG_WARNING);
}
for ($i = 0; $i < 50; $i++) {
watchdog('page not found', 'not/found');
}
// Enable Enabled modules and Disappeared sensors for the "interactive" demo.
$sensor_manager
->enableSensor('monitoring_enabled_modules');
$sensor_manager
->enableSensor('monitoring_disappeared_sensors');
}