person;
$_roles= $_person['role_ids'];
$header_tablesort_js='
';
$header_tablesort_css='
';
drupal_set_html_head($header_tablesort_js);
drupal_set_html_head($header_tablesort_css);
// --------------------
$nodepattern=$_GET['nodepattern'];
$peerscope=$_GET['peerscope'];
$tablesize=25;
drupal_set_title('Nodes');
require_once 'plc_minitab.php';
$minitab=array("Old page"=>"/db/nodes/index.php",
"About"=>"/db/about.php",
"Logout"=>"/planetlab/logout.php",
"And other buttons"=>"http://www.google.com",
"For demo purposes"=>"/undefined");
plc_show_options($minitab);
// --------------------
$peer_filter=array();
// fetch nodes - use nodepattern for server-side filtering
$node_columns=array('hostname','site_id','node_id','boot_state','interface_ids','peer_id');
if ($nodepattern) {
$node_filter['hostname']=$nodepattern;
} else {
$node_filter=array('hostname'=>"*");
}
// server-side selection on peerscope
list ( $peer_filter, $peer_label) = plc_peer_info($api,$_GET['peerscope']);
$node_filter=array_merge($node_filter,$peer_filter);
// go
$nodes=$api->GetNodes($node_filter,$node_columns);
// build site_ids - interface_ids
$site_ids=array();
$interface_ids=array();
foreach ($nodes as $node) {
$site_ids []= $node['site_id'];
$interface_ids = array_merge ($interface_ids,$node['interface_ids']);
}
// fetch related interfaces
$interface_columns=array('ip','node_id','interface_id');
$interface_filter=array('is_primary'=>TRUE,'interface_id'=>$interface_ids);
$interfaces=$api->GetInterfaces($interface_filter,$interface_columns);
$interface_hash=array();
foreach ($interfaces as $interface) {
$interface_hash[$interface['node_id']]=$interface;
}
// fetch related sites
$site_columns=array('site_id','login_base');
$site_filter=array('site_id'=>$site_ids);
$sites=$api->GetSites($site_filter,$site_columns);
$site_hash=array();
foreach ($sites as $site) {
$site_hash[$site['site_id']]=$site;
}
// fetch peers
$peer_columns=array('peer_id','shortname');
$peer_filter=array();
$peers = $api->GetPeers($peer_filter,$peer_columns);
$peer_hash=array();
foreach ($peers as $peer) {
$peer_hash[$peer['peer_id']]=$peer;
}
?>
Peer | Region | Site | State | Hostname | IP | Load | Avg Load | %s | ',$shortname); printf ('%s | ',topdomain($hostname)); printf ('%s | ',$site_id,$login_base); printf ('%s | ',$node['boot_state']); printf ('%s | ',$node_id,$hostname); printf ('%s | ', $interface_id,$ip); printf ('%s | ', $fake1); printf ('%s | ', $fake2); printf ( ''); if ($fake_i % 5 == 0) $fake1 += 3; if ($fake_i % 3 == 0) $fake2 +=5; else $fake2 -= $fake_i; $fake_i += 1; } ?>
---|
Notes: Enter & or | in the search area to alternate between
Hold down the shift key to select multiple columns to sort