aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xweb/api/read/distro-tree25
1 files changed, 25 insertions, 0 deletions
diff --git a/web/api/read/distro-tree b/web/api/read/distro-tree
new file mode 100755
index 0000000..5d93e1b
--- /dev/null
+++ b/web/api/read/distro-tree
@@ -0,0 +1,25 @@
+#! /usr/bin/perl
+# vim:ts=8:sw=8
+
+use CGI qw(fatalsToBrowser);
+use DBI;
+use lib '/opt/gondul/include';
+use nms;
+use nms::web;
+use strict;
+use warnings;
+use Data::Dumper;
+
+$nms::web::cc{'max-age'} = "20";
+
+my $q2 = $nms::web::dbh->prepare('select sysname,distro_phy_port,distro_name from switches where placement is not null and distro_name is not null and distro_phy_port is not null');
+
+$q2->execute();
+while (my $ref = $q2->fetchrow_hashref()) {
+ my $sysname = $ref->{'sysname'};
+ my $phy = $ref->{'distro_phy_port'};
+ my $distro = $ref->{'distro_name'};
+ $nms::web::json{'distro-tree'}{$distro}{$phy} = $sysname;
+}
+
+finalize_output();