providePermission('commands/all', 'Allow to send all commands'); $this->providePermission('commands/safe', 'Allow to to send a subset of "safe" commands'); $this->providePermission('log', 'Allow full log access'); $this->provideRestriction('filter', 'Filter accessible object'); $this->provideConfigTab('backends', array( 'title' => 'Backends', 'url' => 'config' )); $this->provideConfigTab('security', array( 'title' => 'Security', 'url' => 'config/security' )); /* * Problems Section */ $section = $this->menuSection('problems', $this->translate('Problems'), array( 'icon' => 'img/icons/error.png', 'priority' => 20 )); $section->add('unhandled hosts', $this->translate('Unhandled Hosts'), array( 'url' => 'monitoring/list/hosts?host_problem=1&host_handled=0', 'priority' => 40 )); $section->add('unhandled services', $this->translate('Unhandled Services'), array( 'url' => 'monitoring/list/services?service_problem=1&service_handled=0&sort=service_severity', 'priority' => 40 )); $section->add('host problems', $this->translate('Host Problems'), array( 'url' => 'monitoring/list/hosts?host_problem=1&sort=host_severity', 'priority' => 50 )); $section->add('service prolems', $this->translate('Service Problems'), array( 'url' => 'monitoring/list/services?service_problem=1&sort=service_severity&dir=desc', 'priority' => 50 )); $section->add('current downtimes', $this->translate('Current Downtimes')) ->setUrl('monitoring/list/downtimes?downtime_is_in_effect=1'); /* * Overview Section */ $section = $this->menuSection('overview', $this->translate('Overview'), array( 'icon' => 'img/icons/hostgroup.png', 'priority' => 30 )); $section->add('tactical overview', $this->translate('Tactical Overview'), array( 'url' => 'monitoring/tactical', 'priority' => 40 )); $section->add('hosts', $this->translate('Hosts'), array( 'url' => 'monitoring/list/hosts', 'priority' => 50 )); $section->add('services', $this->translate('Services'), array( 'url' => 'monitoring/list/services', 'priority' => 50 )); $section->add('servicematrix', $this->translate('Servicematrix'), array( 'url' => 'monitoring/list/servicematrix?service_problem=1', 'priority' => 51 )); $section->add('servicegroups', $this->translate('Servicegroups'), array( 'url' => 'monitoring/list/servicegroups', 'priority' => 60 )); $section->add('hostgroups', $this->translate('Hostgroups'), array( 'url' => 'monitoring/list/hostgroups', 'priority' => 60 )); $section->add('contactgroups', $this->translate('Contactgroups'), array( 'url' => 'monitoring/list/contactgroups', 'priority' => 61 )); $section->add('downtimes', $this->translate('Downtimes'), array( 'url' => 'monitoring/list/downtimes', 'priority' => 71 )); $section->add('comments', $this->translate('Comments'), array( 'url' => 'monitoring/list/comments?comment_type=(comment|ack)', 'priority' => 70 )); $section->add('contacts', $this->translate('Contacts'), array( 'url' => 'monitoring/list/contacts', 'priority' => 70 )); /* * History Section */ $section = $this->menuSection('history', $this->translate('History'), array( 'title' => $this->translate('History'), 'icon' => 'img/icons/history.png' )); $section->add('critical events', $this->translate('Critical Events'), array( 'title' => $this->translate('Critical Events'), 'url' => 'monitoring/list/statehistorysummary', 'priority' => 50 )); $section->add('notifications', $this->translate('Notifications'), array( 'url' => 'monitoring/list/notifications' )); $section->add('events', $this->translate('Events'), array( 'title' => $this->translate('All Events'), 'url' => 'monitoring/list/eventhistory?timestamp>=-7%20days' )); $section->add('timeline', $this->translate('Timeline'))->setUrl('monitoring/timeline'); /* * System Section */ $section = $this->menuSection('system', $this->translate('System')); $section->add('process info', $this->translate('Process Info'), array( 'url' => 'monitoring/process/info', 'priority' => 120 )); $section->add('performance info', $this->translate('Performance Info'), array( 'url' => 'monitoring/process/performance', 'priority' => 130 )); /* * Dashboard */ $dashboard = $this->dashboard('current-incidents', $this->translate('Current Incidents')); $dashboard->add( 'service problems', $this->translate('Service Problems'), 'monitoring/list/services?service_problem=1&limit=10&sort=service_severity' ); $dashboard->add( 'recently recovered services', $this->translate('Recently Recovered Services'), 'monitoring/list/services?service_state=0&limit=10&sort=service_last_state_change&dir=desc' ); $dashboard->add( 'host problems', $this->translate('Host Problems'), 'monitoring/list/hosts?host_problem=1&sort=host_severity' );