Adding Custom Tabs To The Top Level Nav Bar

Adding tabs is a feature request that has been around for more than a decade. While it is not yet possible to create these via the API, they can still be easily created.

Also, while this will allow you to easily create custom tabs, I do not yet have a method to hide these tabs based on user account permissions.

So, for now, everyone will see these new tabs, and be able to click on the links within.

Having said that, if the user does not have admin permission, but clicks on the new link you created which points to the admin settings page, that use will still not be able to access the page.

So user account permissions do work.

ESTIMATED TIME TO INSTALL/PERFORM MODIFICATION: <5 Minutes

DIFFICULTY LEVEL: 1-Youngling

  1. Youngling(Easiest/Most Basic; no coding experience required, no config wizard required, no system restart required, no system downtime.)
  2. Padawan (Easy/Basic; no coding experience required, possible config wizard required, possible system/services restart required, limited/no downtime.)
  3. Jedi Knight (Moderately Difficult/Advanced; some coding experience required/recommended, config wizard required, possible system/services restart required, limited/short duration downtime.)
  4. Jedi Master (Most Difficult/Advanced; advanced coding experience required, config wizard required, system/services restarts required, 30+ minutes downtime/maintenance window recommended, and other things that I do not even know I would need to know, required...)

This mod was performed on the following SolarWinds environment/versions: (It may, or may not work on other versions)

SolarWinds Orion Platform 2018.2, NCM 7.8, WPM 2.2.2, DPAIM 11.1.0, NPM 12.3, NetPath 1.1.3, CloudMonitoring 2.0.1, SAM 6.6.1 Copyright 1999-2018 SolarWinds Worldwide, LLC. All Rights Reserved.

WHAT DO YOU NEED?

  1. Orion SDK (Installed on your Primary Orion Server) Releases · solarwinds/OrionSDK · GitHub
  2. SQL Server Management Studio (You can also just use the database tool on your primary SolarWinds server)
  3. A list of links you want to use in your new nav tab

Before we begin,

PLEASE don't edit the system files/database without backing them up first.

If you see a friend or co-worker making changes without backing up first, please alert the authorities.

Friends don't let friends mod without backups.

"If it's not broke, then fix it until it is."

     -The smartest person ever

SHOW ME WHAT YOU'RE WORKING WITH:

This is what we are all starting with, the basic, default, nav bar tabs. (My Dashboards, Alerts & Activity, Reports, Settings)

Nav_Bar_Tabs_Default_20180530_0747.png

There are a few ways to do this. You can do it all in SQL, or you can do steps 1 & 2 in SWQL Studio, and finish with step 3 in SQL.

I will show both ways, as they are both fairly straightforward and simple to accomplish.

--Creating New Menu Navigation

STEP 1:

--First, you need to create a new group.

--The groups will be displayed on the top level of the nav bar.

--TSQL

INSERT dbo.WebViewGroup (Name,DefaultTitle,Tags,SortOrder)
VALUES ('meow','Meow','navigation',5)
GO

OR, you can do this via SWQL Studio, like so:

Open SWQL Studio, navigate down to the "Orion.Web" group, and query the Orion.Web.ViewGroup table.

Then, right click on the Orion.Web.ViewGroup table and click "create".

Custom_Nav_Tab_SWQL_Studio_20180530_0753-c.pngCustom_Nav_Tab_SWQL_Studio_20180530_0753-d.png

From here, just enter the Name (I believe all lowercase, no spaces), DefaultTitle (what will be seen on the nav bar/tab), Tags (navigation is all I currently know for this), and SortOrder (I just used the next number), then click the create button.

Either way should create your new tab on the main nav bar.

Custom_Nav_Tab_SWQL_Studio_20180530_0753-e.png

Custom_Nav_Menu_20180529_1542.png

Now that we have our new tab created, let's get busy filling it up with links. Again, we can do this step entirely in SQL, or follow the same procedure for SWQL Studio as we did in the previous step, only for a different table.

STEP 2:

--Next, you need to create the links you want to see/use.

--These links will be seen when you hover over the top level nav bar groups.

--TSQL

INSERT dbo.WebView (WebViewParentID, LimitationID, Name, DefaultTitle, Type, TemplateUrl, Url, Icon, IsCustom, OpenInNewWindow, SortOrder, FeatureDependencies)
VALUES (NULL,NULL,'accounts','Accounts','legacy',NULL,'/Orion/Admin/Accounts/Accounts.aspx',NULL,1,1,0,NULL)
GO

--SWQL Studio

In SWQL Studio, navigate down to the Orion.Web.View table, query the table (just to see what already exists, using the results as a rough example, so to speak), then right click the table and click "create".

Custom_Nav_Tab_Links_SWQL_Studio_20180530_0753-a.png

I have already added the link to the "Advanced Configuration" page, so let's add another link.

Already having an internal SolarWinds link listed, let's go ahead and add a link to a public website, thwack.com.

Custom_Nav_Tab_Links_SWQL_Studio_20180530_0753-b.pngCustom_Nav_Tab_Links_SWQL_Studio_20180530_0753-c.png

So, we have created a new tab ("Meow") on the nav bar, and we have created some links we want to display in/under our new tab, which leads us to our final step.

To finish our quest, we will need to find a way to tie our new items together.

This step, for now, can only be accomplished within SQL, as there is no API magic currently built out.

STEP 3:

--TSQL

--This will bind the URL you created in the 2nd step, to the group you created in the 1st step.

INSERT dbo.WebViewGroupWebView (WebViewGroupID, WebViewID, SortOrder)
VALUES (5,12,0)
GO

This query is taking our new "Meow" tab, which has WebViewGroupID 5, and our new "Thwack" link, which has WebViewID 12, and building them together.

And now we have our brand new, top level, custom menu bar tab, loaded with the links we want/need to use.

Custom_Nav_Tab_Links_SWQL_Studio_20180530_0753-d.png

END CREDITS:

Here are some similar requests, all needing to be able to add custom tabs. Some of these appear to date back to 2007, so there have been a great many folks waiting for this.

MENU BAR AND VIEWS

Mar 27, 2007 8:45 AM

https://thwack.solarwinds.com/message/25358

ORION V10 CUSTOM TABS

May 19, 2010 2:13 PM

https://thwack.solarwinds.com/message/113077

MAIN TAB CUSTOMIZATION - ADDING CUSTOM MAIN TAB WITH SUB SELECTION OPTIONS

Oct 21, 2010 7:50 AM

https://thwack.solarwinds.com/message/126663

HOW TO ADD NEW TABS AT THE SIDE OF THE MODULES MENU TABS I ALREADY HAVE.

Nov 23, 2010 6:33 AM

https://thwack.solarwinds.com/thread/38431

CAN'T ADD MENU BARS :/

Jun 21, 2011 4:22 AM

https://thwack.solarwinds.com/message/145439

CAN WE ADD NEW TABS YET?

Feb 18, 2012 2:32 PM

https://thwack.solarwinds.com/thread/47228

WE WANT TO BE ABLE TO ADD NEW TABS TO NETWORK PERFORMANCE MONITOR

Mar 3, 2012 10:08 AM

https://thwack.solarwinds.com/message/164952

CAN MENU BARS BE RENAMED?

May 31, 2012 10:57 PM

https://thwack.solarwinds.com/message/171965

IS THERE A WAY TO ADD TABS TO THE MENU BAR IN NPM

Sep 1, 2014 7:03 AM

https://thwack.solarwinds.com/message/249667

ADDING CUSTOM TABS TO ORION WEB CONSOLE

Created on Sep 23, 2014 6:16 AM by amtizo - Last Modified: Sep 23, 2014 6:16 AM

https://thwack.solarwinds.com/ideas/4478

HOW TO CUSTOMIZE TABS AT ORION WEBSITE?

Jul 16, 2015 4:39 AM

https://thwack.solarwinds.com/message/295335

ABILITY TO CREATE CUSTOM TABS!

Created on Aug 25, 2015 2:05 PM by mbrawley - Last Modified: Aug 25, 2015 2:05 PM

https://thwack.solarwinds.com/ideas/5759

CUSTOM HEADERS / TABS IN THE MENU BAR NPM 12

Created on Jun 27, 2016 12:49 PM by kalawala - Last Modified: Jun 27, 2016 12:49 PM

https://thwack.solarwinds.com/ideas/7136

ADDING ADDITIONAL MENU BARS?

Mar 17, 2017 4:23 AM

https://thwack.solarwinds.com/message/359902

EDIT HIGHEST LEVEL MENU

Oct 2, 2017 7:24 PM

https://thwack.solarwinds.com/message/376024

FEATURE REQUEST - ADD A NEW TAB IN MY DASHBOARD

Created on May 16, 2018 8:46 AM by ccandido - Last Modified: May 16, 2018 10:38 AM

https://thwack.solarwinds.com/ideas/9971

I hope this helps you along your customized SolarWinds journey.

For more ways to customize your SolarWinds environment, make sure to check out this link, by CourtesyIT

How to do various customizations with your Solarwinds

Thank you,

-Will