cancel
Showing results for 
Search instead for 
Did you mean: 
Create Post

Building Simple PerfStack Project Lists With SWQL

In my opinion, PerfStack is the best new thing SolarWinds has given us, since the last best new thing they gave us. PerfStack already has plenty of things going for it, even in its infancy. There are, however, a few things I would like to see improved.

My biggest, most important, PerfStack request is definitely improving the automation of building PerfStack "Templates". Here is a very simple workaround to build basic templates for all nodes, automatically.

Building Simple PerfStack Templates With SWQL

My next request, provide an easy way for users to access all, or even a subset, of the available PerfStack projects.

While we can share links with others, giving them access to saved projects, I still found the need for a simple list of projects, easily accessible. For my environment, "hidden" PerfStack projects do us little to no good. I want my team to be able to see all projects, and access any project they need, at any given moment. The following simple SWQL query will provide an easy way to accomplish this goal.

Step 1: Customize a page, adding the "Custom Query" resource, then edit said resource.

Step 2: Copy and paste the SWQL query below, into the resource.

This simple SWQL query will generate a list of all PerfStack projects, with clickable links, taking you directly to the project.

SELECT
DisplayName AS [Project]
,'/ui/perfstack/' + ProjectID AS [_LinkFor_Project]
,AccountID AS [Created By]
,UpdateDateTime AS [Last Updated On]
,CreateDateTime AS [Created On]

FROM Orion.PerfStack.Projects

ORDER BY DisplayName ASC

Additionally, if you would like to enable search, you will need to add the following in the "Search" query box, located under the main query box.

SELECT
DisplayName AS [Project]
,'/ui/perfstack/' + ProjectID AS [_LinkFor_Project]
,AccountID AS [Created By]
,UpdateDateTime AS [Last Updated On]
,CreateDateTime AS [Created On]

FROM Orion.PerfStack.Projects

WHERE
(AccountID LIKE '%${SEARCH_STRING}%')
OR
(DisplayName LIKE '%${SEARCH_STRING}%')

ORDER BY DisplayName ASC

Step 3: View, search, sort, and click through your simple little list of PerfStack projects.

PerfStackTests - Summary_20170614_0812.png

If you name your PerfStack projects with a little bit of thought, you can filter your SWQL results, only showing a small subset of projects.

Example: If you named your projects with a pseudo-label/code, appended to the beginning of the name, you could then build a list which would only show a specific subset of projects.

Let's use the "VLAN" projects for this example.

Main SWQL Query:

SELECT
DisplayName AS [Project]
,'/ui/perfstack/' + ProjectID AS [_LinkFor_Project]
,AccountID AS [Created By]
,UpdateDateTime AS [Last Updated On]
,CreateDateTime AS [Created On]

FROM Orion.PerfStack.Projects

WHERE
(DisplayName LIKE 'VLAN_%')

ORDER BY DisplayName ASC

Search SWQL Query

SELECT
DisplayName AS [Project]
,'/ui/perfstack/' + ProjectID AS [_LinkFor_Project]
,AccountID AS [Created By]
,UpdateDateTime AS [Last Updated On]
,CreateDateTime AS [Created On]

FROM Orion.PerfStack.Projects

WHERE
(DisplayName LIKE 'VLAN_%')
AND
(AccountID LIKE '%${SEARCH_STRING}%')
OR
(DisplayName LIKE '%${SEARCH_STRING}%')

ORDER BY DisplayName ASC

This query will generate the same list of PerfStack projects/links as the first one we did, however, the results are limited to ONLY the "VLAN" projects.

Now you can build your lists based on departments, or types, or anything else you deem necessary.

PerfStackTests - Summary_20170614_0837.png

Again, nothing ground breaking here... Just a simple way to see a simple list, of very helpful projects.

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

Labels (2)
Comments

aLTeReGo​, cobrien​, serena

Any chance we will be able to use custom properties with these PerfStack projects?

Any chance we will be getting a new "PerfStack Projects List" resource, allowing us to list, filter, sort, etc., based on those new PerfStack custom properties?

Thank you,

-Will

wluther​, are you wanting to filter the 'Add Entities' search results by custom property?

pastedImage_0.png

aLTeReGo​ No sir, I was thinking more along the lines of custom properties tied to the actual PerfStack project itself. Just the same as you would do for groups, or reports, or alerts, etc... Just something I could filter/select projects on, rather than a manual naming schema. I need a resource that shows the users a list of available PerfStack projects, allowing them to click directly in to view the project. For that resource, I would want it to allow for filtering the list of projects, based on custom properties, similar to how the SWQL/SQL filters work within various resources currently.

PerfStack_Project_Custom_Properties_20170614_0953.png

Edit_Resource_ PerfStack_Projects_List_20170614_1005.png

If I could give this six stars, I would. Combines two of my favourite things in Orion: PerfStack and Custom Properties

Will, you say this is "nothing groundbreaking" but with 90+ perfstack dashboards in our environment this is a LIFE SAVER. Thank you!!

I stumbled upon this looking for how to add NetPath to some of my views.  But adding a searchable PerfStack to my main Orion summary page is AMAZING!!  Thank you.

I find myself trying to do a better job of limiting data in PerfStack when I want to simply display data throughput for multiple interfaces on one or more devices.  For example, I have a pair of Cisco Nexus 7009 core routers, and I'd like to show only throughput in bits per second (or Mb/s or Kb/s) for every active interface.

When I select an interface from a router and drag it to the PerfStack section, I get far more than I want--I get EVERYTHING about that interface, when all I may want is current throughput.

Is it possible to just get Mb/s for an interface to show up in PerfStack?  Once I had only that info, I'd do the same for ALL active interfaces on these two core routers.  And I'd have a nice option to display historic or real time throughput instead of going through the manual process of building a new page, adding many custom html sources, pasting in the html display info, and modifying the node/interface ID for every window, and manually providing names for those custom windows.  That process worked well for me in the old days, but with PerfStack it seems I should be able to do it on the fly and generate the data and display much more easily than I'm used to (See my steps here:  Rick's Favorite Report #2: Creating Simple Custom Views Showing Multiple Interfaces' Bandwidth Util...

What can I do to only display throughput for multiple interfaces on two or more nodes in PerfStack, while filtering out other information about those interfaces?

Version history
Revision #:
1 of 1
Last update:
‎06-14-2017 08:51 AM
Updated by: