From f032b883d66442365990f516d7d6ab45513bf943 Mon Sep 17 00:00:00 2001 From: Adam Amstrong Date: Mon, 30 Mar 2009 00:35:38 +0000 Subject: [PATCH] AFI/SAFI tracking for bgp and moving ifgraphs/ifs to ports git-svn-id: http://www.observium.org/svn/observer/trunk@395 61d68cd4-352d-0410-923a-c4978735b2b8 --- html/pages/device/bgp.inc.php | 67 ++++++++++++++++-------------- html/pages/device/ifgraphs.inc.php | 29 ++++++++++--- 2 files changed, 59 insertions(+), 37 deletions(-) diff --git a/html/pages/device/bgp.inc.php b/html/pages/device/bgp.inc.php index aa4a88b05c..fc973b3223 100644 --- a/html/pages/device/bgp.inc.php +++ b/html/pages/device/bgp.inc.php @@ -1,22 +1,20 @@
Local AS : " . $device['bgpLocalAs'] . "
No Graphs | - Graphs + Updates | Prefixes: + IPv4 | + VPNv4 | + IPv6
"); - echo("
"); + echo("
"); $i = "1"; $peer_query = mysql_query("select * from bgpPeers WHERE device_id = '".$device['device_id']."' ORDER BY bgpPeerRemoteAs, bgpPeerIdentifier"); @@ -33,10 +31,21 @@ echo(" if($peerhost) { $peername = generatedevicelink($peerhost); } else { unset($peername); } + $af_query = mysql_query("SELECT * FROM `bgpPeers_cbgp` WHERE `device_id` = '".$device['device_id']."' AND bgpPeerIdentifier = '".$peer['bgpPeerIdentifier']."'"); + unset($peer_af); + while($afisafi = mysql_fetch_array($af_query)) { + $afi = $afisafi['afi']; + $safi = $afisafi['safi']; + $peer_af .= $sep . $config['afi'][$afi][$safi]; + $sep = "
"; + $valid_afi_safi[$afi][$safi] = 1; + } + unset($sep); echo(" + "); - if($graphs) { - - $graph_type = "bgpupdates"; - - $daily_traffic = "graph.php?peer=" . $peer['bgpPeer_id'] . "&type=$graph_type&from=$day&to=$now&width=209&height=100"; - $daily_url = "graph.php?peer=" . $peer['bgpPeer_id'] . "&type=$graph_type&from=$day&to=$now&width=500&height=150"; - $weekly_traffic = "graph.php?peer=" . $peer['bgpPeer_id'] . "&type=$graph_type&from=$week&to=$now&width=209&height=100"; - $weekly_url = "graph.php?peer=" . $peer['bgpPeer_id'] . "&type=$graph_type&from=$week&to=$now&width=500&height=150"; - $monthly_traffic = "graph.php?peer=" . $peer['bgpPeer_id'] . "&type=$graph_type&from=$month&to=$now&width=209&height=100"; - $monthly_url = "graph.php?peer=" . $peer['bgpPeer_id'] . "&type=$graph_type&from=$month&to=$now&width=500&height=150"; - $yearly_traffic = "graph.php?peer=" . $peer['bgpPeer_id'] . "&type=$graph_type&from=$year&to=$now&width=209&height=100"; - $yearly_url = "graph.php?peer=" . $peer['bgpPeer_id'] . "&type=$graph_type&from=$year&to=$now&width=500&height=150"; + if($_GET['opta']) { + foreach(explode(" ", $_GET['opta']) as $graph_type) { - echo(""); - + echo(""); } - + } + } $i++; } echo("
$i " . $peer['bgpPeerIdentifier'] . "
".$peername."
$peer_type$peer_af AS" . $peer['bgpPeerRemoteAs'] . "
" . $peer['astext'] . "
" . $peer['bgpPeerAdminStatus'] . "
" . $peer['bgpPeerState'] . "
" .formatUptime($peer['bgpPeerFsmEstablishedTime']). "
@@ -44,36 +53,32 @@ echo(" " . $peer['bgpPeerOutUpdates'] . "
"); + if($graph_type == "cbgp_prefixes") { list($afi, $safi) = explode(".", $_GET['optb']); $afisafi = "&afi=$afi&safi=$safi"; } - echo("', LEFT".$config['overlib_defaults'].");\" onmouseout=\"return nd();\"> - "); - echo("', LEFT".$config['overlib_defaults'].");\" onmouseout=\"return nd();\"> - "); - echo("', LEFT".$config['overlib_defaults'].", WIDTH, 350);\" onmouseout=\"return nd();\"> - "); - echo("', LEFT".$config['overlib_defaults'].", WIDTH, 350);\" onmouseout=\"return nd();\"> - "); + if($graph_type == "bgp_updates" || $valid_afi_safi[$afi][$safi]) { + $daily_traffic = $config['base_url'] . "/graph.php?peer=" . $peer['bgpPeer_id'] . "&type=$graph_type&from=$day&to=$now&width=210&height=100$afisafi"; + $daily_url = $config['base_url'] . "/graph.php?peer=" . $peer['bgpPeer_id'] . "&type=$graph_type&from=$day&to=$now&width=500&height=150$afisafi"; + $weekly_traffic = $config['base_url'] . "/graph.php?peer=" . $peer['bgpPeer_id'] . "&type=$graph_type&from=$week&to=$now&width=210&height=100$afisafi"; + $weekly_url = $config['base_url'] . "/graph.php?peer=" . $peer['bgpPeer_id'] . "&type=$graph_type&from=$week&to=$now&width=500&height=150$afisafi"; + $monthly_traffic = $config['base_url'] . "/graph.php?peer=" . $peer['bgpPeer_id'] . "&type=$graph_type&from=$month&to=$now&width=210&height=100$afisafi"; + $monthly_url = $config['base_url'] . "/graph.php?peer=" . $peer['bgpPeer_id'] . "&type=$graph_type&from=$month&to=$now&width=500&height=150$afisafi"; + $yearly_traffic = $config['base_url'] . "/graph.php?peer=" . $peer['bgpPeer_id'] . "&type=$graph_type&from=$year&to=$now&width=210&height=100$afisafi"; + $yearly_url = $config['base_url'] . "/graph.php?peer=" . $peer['bgpPeer_id'] . "&type=$graph_type&from=$year&to=$now&width=500&height=150$afisafi"; - echo("
"); + echo("', LEFT".$config['overlib_defaults'].");\" onmouseout=\"return nd();\"> "); + echo("', LEFT".$config['overlib_defaults'].");\" onmouseout=\"return nd();\"> "); + echo("', LEFT".$config['overlib_defaults'].", WIDTH, 350);\" onmouseout=\"return nd();\"> "); + echo("', LEFT".$config['overlib_defaults'].", WIDTH, 350);\" onmouseout=\"return nd();\">"); + echo("
"); diff --git a/html/pages/device/ifgraphs.inc.php b/html/pages/device/ifgraphs.inc.php index 7cf5a4d9b6..fbc39ffe67 100644 --- a/html/pages/device/ifgraphs.inc.php +++ b/html/pages/device/ifgraphs.inc.php @@ -1,16 +1,33 @@ -Bits | -Packets | -NU Packets | -Errors +Details | Graphs: + +Bits | +Packets | +NU Packets | +Errors "); $dographs = 1; -if($_GET['opta']) { $graph_type = $_GET['opta']; } else { $graph_type = "bits"; } +if($_GET['opta'] == graphs ) { + if($_GET['optb']) { + $graph_type = $_GET['optb']; + } else { + $graph_type = "bits"; + } + $dographs = 1; +} -include("pages/device/ifs.inc.php"); +$hostname = gethostbyid($device['device_id']); + +echo("
"); +$i = "1"; +$interface_query = mysql_query("select * from interfaces WHERE device_id = '$_GET[id]' AND deleted = '0' ORDER BY `ifDescr` ASC"); +while($interface = mysql_fetch_array($interface_query)) { + include("includes/print-interface.inc"); +} +echo("
"); ?>