This discussion has been locked. The information referenced herein may be inaccurate due to age, software updates, or external references.
You can no longer post new replies to this discussion. If you have a similar question you can start a new discussion in this forum.

Interactive view for Node and Interface details and graphing updated

Hello Thwackers,

I had previously released a custom html that allowed interface bandwidth and various stats graphing in real time.  Well I went and rewrote it into a faster more efficient searching option that uses real time searching on key input similiar to predictive text.  Figured I would share and see what you think.

The default view is all nodes.  It graphs all nodes by node caption , last boot, cpu usage(assuming sw has an accurate measure), and mem percent utilized.

Screen Shot 2019-12-10 at 8.07.25 AM.png

In my example I have a drop down for node type with a few parameters that I manually set.  It could be changed to dynamically use vendor type, custom properties or whatever you like.  If you select a node type it updates the search results with live swql query(if you add a node that qualifies between changes it will be shown)

Screen Shot 2019-12-10 at 8.07.49 AM.png

Screen Shot 2019-12-10 at 8.07.37 AM.png

If you type in the box the search will compare the interface caption or node caption and look for your result with each key.  It also makes sure the node matches the node type selected (selecting all will show all matches)

Screen Shot 2019-12-10 at 8.08.14 AM.png

if you click on a node it will search the node for interfaces and push them into the page and the nodes object as children of that node(in also am creating html targets to update the targets with results later like the interface list or interface graph which I will show soon.

Screen Shot 2019-12-10 at 8.09.27 AM.png

Screen Shot 2019-12-09 at 4.23.18 PM.png

Clicking on a particular interface will produce a bandwidth graph of that interface in the hierarchy below the interfaces stats.

Screen Shot 2019-12-10 at 8.09.56 AM.png

For the future i plan to not show interfaces with zero traffic collected or have an option to select hide/show for them.  I also plan to have any stat produced that I decide to show in the final version to produce a graph of that specific metric when clicked.  Once the graph populates I will add the option to change the time range to show more history on the fly if needed.  The current version refreshes the graphs current data each time you click it.  Also if you click node again it hides and destroys its children then another click brings back the list clean without graphs chosen.  I will also be creating a function for add this graph to "Summary graph"  which will allow you to add multiple like items and see a summary of their combined metric (bandwidth, errors, etc)  with the option to remove or add interfaces , nodes whatever on demand. 

You have to actually see this thing working to truly appreciate it but its super fast.  I can pull up a list of interfaces matching a search term across several nodes and graph the ones I want in the time that you could find a node in the native view and see its interfaces.  Let me know what you think.

Full disclaimer I am self teaching myself how to code so I know even with my improvements there are better ways to do some things that I can work on.  Once huge improvement this time is I built my swql query as a function that you pass a query to and another function so you can decide at any point in the code what to do with the results and dont need seperate queries or to have multiple levels of closures like I was using before.

If you try this at home be sure to match the node type select options to values that would exist in the hostname of nodes that you wish to target or change it totally to use some custom node property or whatever. 

Enjoy

Matt