EOT; if ($CONFIG['graph_type'] == 'canvas') { echo << EOT; } echo <<
EOT; } function html_end() { global $CONFIG; $git = '/usr/bin/git'; $changelog = $CONFIG['webdir'].'/doc/CHANGELOG'; $version = 'v?'; if (file_exists($git) && is_dir($CONFIG['webdir'].'/.git')) { chdir($CONFIG['webdir']); $version = exec($git.' describe --tags'); } elseif (file_exists($changelog)) { $changelog = file($changelog); $version = explode(' ', $changelog[0]); $version = 'v'.$version[0]; } echo << EOT; if ($CONFIG['graph_type'] == 'canvas') { echo << EOT; } echo << EOT; } function plugin_header($host, $plugin) { global $CONFIG; return printf("

%s

\n", $CONFIG['weburl'], $host, $plugin, $plugin); } function plugins_list($host, $selected_plugins = array()) { global $CONFIG; $plugins = collectd_plugins($host); echo '
'; echo '

Plugins

'; echo '
    '; printf("
  • overview
  • \n", selected_overview($selected_plugins), $CONFIG['weburl'], $host ); # first the ones defined as ordered foreach($CONFIG['overview'] as $plugin) { if (in_array($plugin, $plugins)) { printf("
  • %4\$s
  • \n", selected_plugin($plugin, $selected_plugins), $CONFIG['weburl'], $host, $plugin ); } } # other plugins foreach($plugins as $plugin) { if (!in_array($plugin, $CONFIG['overview'])) { printf("
  • %4\$s
  • \n", selected_plugin($plugin, $selected_plugins), $CONFIG['weburl'], $host, $plugin ); } } echo '
'; echo '
'; } function selected_overview($selected_plugins) { if (count($selected_plugins) > 1) { return 'class="selected"'; } return ''; } function selected_plugin($plugin, $selected_plugins) { if (in_array($plugin, $selected_plugins)) { return 'class="selected"'; } return ''; } function selected_timerange($value1, $value2) { if ($value1 == $value2) { return 'class="selected"'; } return ''; } function host_summary($cat, $hosts) { global $CONFIG; $rrd = new RRDTool($CONFIG['rrdtool']); printf('
', $cat); printf('%s', $cat); echo "\n"; $row_style = array(0 => "even", 1 => "odd"); $host_counter = 0; foreach($hosts as $host) { $host_counter++; $cores = count(group_plugindata(collectd_plugindata($host, 'cpu'))); printf('', $row_style[$host_counter % 2]); printf('', $CONFIG['weburl'],$host, $host); if ($CONFIG['showload']) { collectd_flush(sprintf('%s/load/load', $host)); $rrd_info = $rrd->rrd_info($CONFIG['datadir'].'/'.$host.'/load/load.rrd'); # ignore if file does not exist if (!$rrd_info) continue; if (isset($rrd_info['ds[shortterm].last_ds']) && isset($rrd_info['ds[midterm].last_ds']) && isset($rrd_info['ds[longterm].last_ds'])) { foreach (array('ds[shortterm].last_ds', 'ds[midterm].last_ds', 'ds[longterm].last_ds') as $info) { $class = ''; if ($cores > 0 && $rrd_info[$info] > $cores * 2) $class = ' class="crit"'; elseif ($cores > 0 && $rrd_info[$info] > $cores) $class = ' class="warn"'; printf('%.2f', $class, $rrd_info[$info]); } } } print "\n"; } echo "
%s
\n"; echo "
\n"; } function breadcrumbs() { $path = ''; if (validate_get(GET('h'), 'host')) $path .= ' - '.ucfirst(GET('h')); if (validate_get(GET('p'), 'plugin')) $path .= ' - '.ucfirst(GET('p')); if (validate_get(GET('pi'), 'pinstance')) $path .= ' - '.GET('pi'); if (validate_get(GET('t'), 'type') && validate_get(GET('p'), 'plugin') && GET('t') != GET('p')) $path .= ' - '.GET('t'); if (validate_get(GET('ti'), 'tinstance')) $path .= ' - '.GET('ti'); return $path; } ?>