Quantcast
Channel: THWACK: All Content - Network Performance Monitor
Viewing all 21870 articles
Browse latest View live

Using Custom Properties sending Alert emails

$
0
0

After receiving lots of queries i will try to explain in screen shots what steps needs to take if you wish to use custom properties logic to send email alerts to respective location / or team responsible for that node and group.

Basically when you have bunch of Nodes and you just wanted to send emails to the related department / Engineering Team only

Or You may have monitoring nodes for multiple customers where you would like to send emails to related customer for the nodes for that customer /

 

This post  can help in order to configure .

 

Step #1 Creating Custom Property

 

Start with Custom properties

Settings > manager custom properties.

Add Custom Properties

1.PNG

 

2.PNG

 

 

3.PNG

Leave it blank and Submit

4.PNG

Step #2 Assigning email to the nodes

 

Go to Settings Manage Nodes.

(Select multiple Node you wish to assign the email ) and click Edit Properties.

Now assign the email you wish to assign so all the alerts will be sent to respected email for these nodes .

And Submit to save changes.

5.PNG

6.PNG

Step #3 Using Custom property name under Alert Trigger Condition

 

Now in Alert use the custom property name to send the email for required email address for each node.

Select the Alert you wish to Edit and Edit Trigger Action > Send an email /page.

Add Trigger Action

7.PNG

 

When the alert will trigger it will use the email you have assigned to the Node.

 

 

***** Adding CC you can create more custom properties to include CC emails such as an example below ****

${Email}

${EmailCC}

8.PNG

 

 

PLEASE NOTE:- THIS SOLUTION WILL ONLY WORK FOR THE NODES


NPM 12.4 BETA 1 IS OUT!

$
0
0

I'm pleased to announce that the Network Performance Monitor (NPM) 12.4 Beta 1 is now available!

 

 

This beta includes certain items that are mentioned in What We're Working on for NPM (Updated June 1st, 2018) post.

 

At SolarWinds, being customer-driven and responsive to customer needs is a fundamental part of how we build software. Beta feedback is one of the key avenues we use to inform and adjust what we're building so that it can fit your needs and your environment. We'll take feedback anytime we can get it, but now is the best time to provide feedback that can affect the product.

 

 

As an added incentive, beta users who submit feedback will receive 3,000 THWACK® points to buy swag at the THWACK Store. That's enough points to score yourself all sorts of stuff.

 

To get access to the beta, you need to be a customer on active maintenance for NPM and sign up here. To share feedback, please post on the NPM Beta forum.

 

 

Sincerely,

 

NPM Team

Do you use the Network Sonar Discovery?

$
0
0

When adding new nodes to NPM, do you use Network Sonar or you add your nodes directly?

Using "Current Node" in the SQL Filter of a Widget

$
0
0

Hey Everyone!

 

I am looking to add a widget to the Node Details - Summary view that would show all other nodes with the same Custom property.  Essentially i have a custom property, "SiteCode", that groups my nodes based on their location.  When looking at the details of one of these nodes, i'd like to see the list of all other nodes at that site also.

 

I have tried using the "All Nodes" widget, then filtering it based on site code.  I can get it to work if i hard code the site code value, but this then is static and doesn't change if i'm looking at a different sites node.

 

Filters I've Tried:

SiteCode='LVG'  -- Works at only showing LVG nodes, but obviously doesnt change if im looking at a node say for CHA site.

SiteCode=${SiteCode}  -  SQL Pares Error

SiteCode='${SiteCode}' - No results

High Availability and Disaster Recovery Solution with Full Servers and Site Protection - RFC/Design Stage

$
0
0
  • Below approach is in design stage. In theory everything looks cool and I will keep you posted what's going to happen in practise, soon
  • Your comments, concerns, feedback, suggestions are highly welcome

 

Hi All,

 

Since the release of NPM 12.0.1 we have an exciting new feature - High Availability - in Orion platform. The only minor downside is that it does require HA cluster to be sitting in the same subnet. Oops... For some minor, for other major. What do you do when you have two sites and you cannot stretch subnet easily due to architectural constraints?

 

Well, I have been digging this for the past several weeks. FoE is not being sold anymore. It may well be supported, but you certainly cannot buy it if you are a new customer. I have started FoE thread here, which has great insights, although now it is not relevant anymore. At the moment it seems like there is a gap for smooth inter-site fail-over solution and I hope this will be plugged soon. As of now SolarWinds offers Active-Active approach (you can find PDF about it in FoE thread as well or just get it here directly).

 

At first I though that maintaining two instances manually will be a huge pain and massive overhead for engineers and this was stopping me from accepting this idea. However, thinking further and after consulting with SolarWinds support I have realised that we do not need to. Here is what I came up with:

 

(1)

First - you do need to purchase another additional set of licenses that you have got already (this is the most painful step). To soften this a bit - contact your SolarWinds re-seller partner (or SolarWinds directly) and ask for 50% discount. This is known as "Disaster Recovery License" and is being offered upon request

 

(2)

Deploy live environment as normal, add all nodes, configure settings, alerts, etc - as usual practise, nothing fancy here

 

(3)

Deploy exact copy of your live environment at the DR site, use Disaster Recovery License and point it to "empty" database. By "empty" I mean that you do not need to populate it with any assets, just install fresh deployment and leave it as it. You don't even need to configure any settings, views, etc - just vanilla setup (cold standby so to speak)

 

Now, you will have an Active-Active setup (although not quite Active-Active as initially suggested by SolarWinds in the above PDF. I would rather call it Active-Reserved, because at the DR site you do not add any devices and you do not configure it)

 

DR considerations:

 

SolarWinds kit at the DR site will just sit there and do nothing until DR is invoked. We have Database AG in place (mirror formally). So, in the event of main site failure SQL will fail over to mirror copy at DR site. Because we already have SolarWinds deployed at DR - all what will be left to do is to run configuration wizard and re-point DR deployment from empty db to mirror copy of live db at the DR site. Recovery process should last as long as it takes for the configuration wizard to complete its magic (haven't measured it yet, but it will depend on number of module, hardware kit, etc. I anticipate under 2 hour). Well, not instant fail-over as with HA - but good enough, providing that monitoring by itself is not business critical tool and in the event of site fail-over monitoring definitely is not on the list of priorities for the business to worry about, unless you are managed monitoring solutions provider (which I hope you are not, as otherwise 2 hours recovery may be a "killer").

 

If you do not have SQL AG, then simply ensure you backup your SQL at live site and transfer your backup over to DR site on a regular bases. No need to recover, but fresh backup should be available in the event of DR to restore DB at the DR site

 

To "complicate" things further (or I would better say to safeguard and increase availability) - we also plan to create HA cluster for application layer (new feature) at both sites, therefore protecting from local app server failures. Although HA at DR might be a bit excessive - we would like to keep things as closely mirrored as possible between DR and LIVE sites

 

And, yet another thing - NTA server. You can have it on same APP box (which is not recommended, although fully supported), or you can have a separate box. In the event of DR you simply recover NTA DB from backup at DR site and then you should be able to switch to DR box as well

 

Grey areas:

 

  • After running config wizard and re-pointing DR instance at the live db it is not clear how do we proceed with NTA recovery? Particularly, what steps involved in recovery of NTA box. So, this needs further testing, but I guess standard recover approach will be the case here
    • [update: 23/02/2017] NTA has its own backup processes that backs up db into flat file. We transfer this to Reserved copy in DR site with Robocopy and store it there in case DR needs to be invoked
  • Running two databases for different SolarWinds deployments within one SQL instance (see image below). After reading a lot of manuals I could not find any reasons for not being able to do so. Your comments are highly appreciated here.
    • [update: 23/02/2017] We are successfully running two instances of SolarWinds in one SQL instance with them pointing to different databases:

  • Restoring [App DR] <--> [HA DR] relationship after failover (after running config wizad at DR site and re-pointing to live db). Not sure what is going to happen with HA cluster at this point - again, needs testing. We have asked SolarWinds support to confirm - still waiting for them to come back
    • [update: 23/02/2017] We will be performing our first DR test next month - I will update later with the outcome
    • [update: 31/05/17] HA cluster is not recoverable and must be reinstalled. The way to do it: first, uninstall all SolarWinds software from secondary HA box, then, simply reinstall everything as per deployment documentation after you have recovered your instance. I have confirmation from Product Team that this is the way to go and there is no way to recover HA cluster in this scenario (not yet ...)

 

Final say:

 

Once again, after digging through many different options - this one seems the most appealing, with virtually no overhead for Engineers on a day-to-day running - which is key to not overload them. Running Active-Active and managing all changes manually at both ends is way too much - sorry, no, sorry

 

Diagrams:

 

Normal operation

 

 

Site failover:

 

Fortigate CPU/MEM

NPM authentication with two AD domains

$
0
0

Is it possible to configure NPM to access two different AD domains. We currently have NPM accessing a departmental AD which contains members of the department as well as customers. In the future will are going to move all of the internal user to the company AD. However, we want to maintain the customers in the other domain. That means we need to authenticate against two different domains. Is this possible?

What is the #1 networking problem you need to solve in the next 30 days?

$
0
0

Please expand on “Other” and why by adding a comment below.


Solarwinds to send out periodic "beacon" its still alive and monitoring

$
0
0

Hi guys,

 

we would like have alerts trigger on a weekly basis on Mondays 09:00 and Fridays 16:30 of solarwinds triggering an email / alert integrated in our case with pager duty integration.

 

This feature is just used to ensure us we get regular beacons of our monitoring solution, confirming its still happily doing its thing and is up and running.

 

This should occur at start of each week and at the end of the week, to avoid flying blind and or having the monitoring system down without being aware of it.

 

How would you best do this?

 

thanks

VSS vs. standalone switches

$
0
0

What percentage of all your switch ports approximately comes from stacked and standalone switches?

Are your Orion server and SQL database server in the same Active Directory domain?

Nightly Database Maintenance - Monitoring the duration

$
0
0

HI,

 

Following the "SOLARWINDS LAB #65 - Orion Database Maintenance" and after some issues with the maintenance job taking a good few hours to run i created some reports that run to check the duration without trawling the logs daily.

 

The first report is the daily report within Orion and is scheduled to run at 8am each day (maintenance runs at 2:15am), it's a simple SQL query looking for EventType 1000 in the Events DB table:

 

SELECT TOP 1000

       [EventTime]

      ,[EventType]

      ,[Message]

      ,[Acknowledged]

      ,[EngineID]

 

FROM [SolarWindsOrionNPM].[dbo].[Events]

WHERE EventType = '1000' and EventTime between dateadd(day,-1,getutcdate()) and getutcdate()

ORDER by EventTime ASC

 

this gives me:

 

 

 

if i can't or forget to check my emails everyday and i want to see how this compares to previous days i then have to rely on a native SQL job to run this script to catch the starting and completed messages and give me the duration for each day over the last 30 days:

 

WITH Starting as

(

SELECT

      [EventTime] as 'StartTime'         

      ,[Message]

      ,datepart(day,EventTime) as 'ID'

  FROM [SolarWindsOrionNPM].[dbo].[Events]

  WHERE EventType = '1000'

  and message = 'Starting Nightly Maintenance'

  and EventTime between dateadd(day,-30,getutcdate()) and getutcdate()

),

Completed as

(

SELECT

      [EventTime]  as 'Endtime'       

      ,[Message]

      ,datepart(day,EventTime) as 'ID'

  FROM [SolarWindsOrionNPM].[dbo].[Events]

  WHERE EventType = '1000'

  and message = 'Nightly Maintenance Completed'

  and EventTime between dateadd(day,-30,getutcdate()) and getutcdate()

)

SELECT starting.StartTime, Completed.EndTime, datediff(minute, starting.StartTime, Completed.endtime) 'Job Duration in Minutes' from starting left join completed on starting.id = completed.id

 

 

In my case i output to CSV and get:

 

"StartTime","EndTime","Job Duration in Minutes"

"5/24/2018 2:15:00 AM","5/24/2018 3:54:35 AM","99"

"5/25/2018 2:15:01 AM","5/25/2018 3:48:33 AM","93"

"5/26/2018 2:15:00 AM","5/26/2018 4:05:02 AM","110"

"5/27/2018 2:15:00 AM","",""

"5/28/2018 2:15:00 AM","",""

"5/30/2018 2:15:00 AM","5/30/2018 9:09:25 AM","414"

"5/31/2018 2:15:00 AM","",""

"6/1/2018 2:15:00 AM","6/1/2018 10:45:33 AM","510"

"6/2/2018 2:15:00 AM","6/2/2018 8:45:29 AM","390"

"6/3/2018 2:15:00 AM","6/3/2018 12:18:36 PM","603"

"6/4/2018 2:15:00 AM","6/4/2018 9:41:17 AM","446"

"6/5/2018 2:15:01 AM","6/5/2018 10:44:04 AM","509"

"6/6/2018 2:15:01 AM","6/6/2018 6:30:34 AM","255"

"6/7/2018 2:15:01 AM","6/7/2018 5:58:56 AM","223"

"6/8/2018 2:15:00 AM","6/8/2018 4:20:21 AM","125"

"6/9/2018 2:15:00 AM","6/9/2018 3:21:42 AM","66"

"6/10/2018 2:15:00 AM","6/10/2018 2:52:20 AM","37"

"6/11/2018 2:15:00 AM","6/11/2018 3:33:02 AM","78"

"6/12/2018 2:15:00 AM","6/12/2018 3:49:58 AM","94"

"6/13/2018 2:15:00 AM","6/13/2018 3:28:15 AM","73"

"6/14/2018 2:15:00 AM","6/14/2018 3:29:45 AM","74"

"6/15/2018 2:15:00 AM","6/15/2018 3:41:56 AM","86"

"6/16/2018 2:15:00 AM","6/16/2018 3:06:31 AM","51"

"6/17/2018 2:15:00 AM","6/17/2018 2:51:04 AM","36"

"6/18/2018 2:15:00 AM","6/18/2018 3:08:58 AM","53"

"6/19/2018 2:15:00 AM","6/19/2018 3:51:17 AM","96"

"6/20/2018 2:15:00 AM","6/20/2018 2:57:16 AM","42"

"6/21/2018 2:15:01 AM","6/21/2018 3:55:28 AM","100"

"6/22/2018 2:15:00 AM","6/22/2018 2:59:40 AM","44"

 

Any days with no end time or job duration is days that the job failed to complete and had to be killed.

 

No more trawling the swdebugMaintenance log file unless i need to see in detail whats happening.

 

Hope this helps

Make ALL Links, In A SWQL Custom Query Resource, Open In New Tabs By Default

$
0
0

This is a super simple, single file, single line, edit.

 

ESTIMATED TIME TO INSTALL/PERFORM MODIFICATION:<1 Minute

 

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...)

 

 

For all of those "tabbers", "shift-clickers", and "middle-button mashers" out there, that know the only way to truly use a tabbed browser, is to open so many tabs that you can even see the tabs anymore... this one is for you... And, of course, by you, I mean us...

 

This simple little modification may have been mentioned elsewhere before, however, I was not fortunate enough to have found it before I figured out how to do it. So, if it has been mentioned before, well, here it is again...

 

This modification will change the default behavior when clicking on a link within a SWQL Custom Query resource. (Any link, formed within the query, using the "_LinkFor_" alias.)

By default, clicking on a link will load the link in the same page/tab as the source was in.

The new behavior, after making this change, when clicking on a link, will load the link destination in a new tab/page, without the need to shift-click, or middle-mouse button click.

 

THINGS TO KNOW:

  • I have countless SWQL Custom Query resources scattered throughout my SolarWinds environment.
  • I cannot stand directly clicking links, having them open in the same page/tab.
  • If I can still see the icons on the tabs of Chrome, then I must be sleeping.
  • I am a very inexperienced, and untrained, amateur (with the exception being all things Star Wars related, which does you absolutely no good here...)
    • Always backup your system/files BEFORE making any changes, and/or test with a demo/dev system before making changes to your production environment.
    • Please don't break your system, then blame it on me.
      • If you break your system, then blame it on me, please know, "I don't give a care...", "I told you so...", and/or "Nanna nanna boo boo, stick your head in doo doo..." will most likely be my response...

 

**WARNING! THE INFORMATION YOU ARE ABOUT TO READ COMES FROM THE MIND OF AN UNTRAINED AMATEUR, AND IS MOST LIKELY FAR, FAR FROM THE BEST PRACTICE**

 

Filename:

CustomQuery.js

 

File Location:

\inetpub\SolarWinds\Orion\NetPerfMon\Resources\Misc\

 

Open the file, and look for the line that has "if (cellInfo.linkColumn) {" (it should be on/around line 160)

The change you will be making will need to be done on the next line, line 161.

 

Change the RED part, of the line below,

            element = $('<a/>').attr('href', rowArray[cellInfo.linkColumn]);

 

To match the GREEN part, of the line below,

            element = $('<a Target="_blank" />').attr('href', rowArray[cellInfo.linkColumn]);

 

Save your file, and you are done!

 

HERE IS HOW THE DEFAULT CODE LOOKS, BEFORE ANY CHANGES:

        var element;        if (cellInfo.linkColumn) {            element = $('<a/>').attr('href', rowArray[cellInfo.linkColumn]);        } else {            element = $('<span/>');        }

 

 

AND HERE IS HOW THE CODE SHOULD LOOK AFTER YOUR CHANGE:

        var element;        if (cellInfo.linkColumn) {            element = $('<a Target="_blank" />').attr('href', rowArray[cellInfo.linkColumn]);        } else {            element = $('<span/>');        }

 

 

Now, you should be able to use the "_LinkFor_" column alias in your SWQL query, on a Custom Query resource, and when you click the link, on the query results, it should, by default, automatically open in a new tab/window.

 

If you have any questions, or comments, please leave them below, and I will do my best to follow up with you.

 

Thank you,

 

-Will

 

--If you are interested in customizing, and/or modifying your SolarWinds environment, CourtesyIT has put together a terrific "Page of Pages" (PoP), "List of Links" (LoL), okay, you get the idea... Please visit his page, How to do various customizations with your Solarwinds, and discover a better way to enhance your SolarWinds environment. Make sure to bookmark, like, and rate his page, as it will help you, as well as others after you.

Agent based monitoring for Linux system

$
0
0

Hi,

 

We have tried to monitor a linux system in solar-winds using SNMPv3 polling method (Where the SNMPv2 was disabled as per policy).

We faced failures on SNMPv3 polling test (with SHA1 authentication and AES128 encryption - ensuring the same was enabled in the linux server end as well), whereas the ssh port (22) is enabled while the login is disabled.

We needed to try an alternate agent based polling method for linux based systems.

Kindly help whether this is possible in solarwinds and if yes Kindly let me know how to implement this.

NPM Design question

$
0
0

Hi Guys

I have a "small" design question to ask

Today we have 2 NPM instances one in our corp network and one in our secure enclave, witch is a secluded portion of our network, so it would be possible to be able to cut it of and operate it autonomously in case of an attack.

But our normal procedures do that monitoring both systems simply isn't an option on a day to day basis.

 

So I need to design a system where we can monitor both the the Corp network and the Enclave through a single "pain of glass"

One suggestion is the Enterprise console I understand that this will be able to receive data from several systems, but as I understand this will only give us monitoring capabilities, If we need to dig deeper we have to do it on the relevant system.

Anther suggestion is to place 2 Corp APE's in the Enclave and monitor it all through the Corp system but still retaining the Enclave system, but then I fear that if we ever had to run the Enclave autonomously equipment will not be up to date on the Enclave system.

 

I am not sure how big a problem the last one will be, because the Enclave setup is pretty static.

 

Is there anybody out there that has solved this or have some design recommendations, suggestion or anything?

What are the pro's and con's and is there another solution that I haven't thought about?

 

We have 2 NPM setups, one with unlimited nodes (Corp), and the one in the Enclave has a max of 2000 Nodes i think

If we could do this with one setup That would be sweet

Hope you can help me a little

 

Regards Jens


Can you successfully offload the Orion website from a Main Poller onto an Additional Web Server?

$
0
0

Hello All,

 

During our recent Thwack Camp 2018 Tips & Tricks session with Dez and KMSigma there was a brief mention of being able to offload the Solarwinds website off the main poller onto an additional web server. I tried to get some more detail on this during the live session chat but there was so much going on that Dez and the team just did not have enough time. Im really interested in doing this if it can be done successfully without any issues. Can you just blow away the website and adjust the entries in the database? Will the configuration wizard rebuild the site during the next product upgrade? Any information will be greatly appreciated.

 

Thanks,

mcordero

Alerting on Volume Thresholds

$
0
0

Back in April of 2015, NPM 11.5 was released and with it came a brand new Web-based Alert Engine in the Orion Platform. At the time, and ever since, one of the most valuable capabilities of this new engine was the ability to dynamically alert on multiple objects based on their own individually assigned thresholds. Setting individual thresholds for things like CPU Utilization, Percent Memory Utilization, Packet Loss, Response Time, Interface Errors, and Interface Utilization was a game changer to a lot of alerting schemas that allowed us to reduce our custom property footprint, as well as the complexity of the alert definitions. However, a glaring "omission" was that the thresholds made available for Volumes were not presented to the alerting engine (or so we thought). This was a bit mind-boggling, and talking to other MVPs, seasoned SW Admins, and SW employees over the years, I had never heard differently, so the assumption was cemented as a "missing item that requires a work-around". (On a side note, I am 42% sure that jbiggley was behind a very well orchestrated and elaborate trolling to keep me in the dark on this capability, but I digress...) But today, I'd like to present the solution that was hiding in the background this entire time, to save future admins the discomfort of maintaining "Disk_Crit" custom properties.

 

 

Background: Node and Interface metric thresholds are added to the alerting engine in a very intuitive way:

 

 

However, volume thresholds are obviously not:

 

 

The key was to take a step back and look at the alerting object options, there you shall find your salvation in the form of a "Volume Capacity Forecasting" object (as opposed to the intuitive "Volume" object type):

 

 

Which then presents those valuable thresholds!

 

 

From there, you need to setup a "Double Value Comparison" in the trigger:

 

 

And then create a comparison between the current and threshold values, respectively:

 

 

Which will then trigger on Volumes where their current percent utilization exceed the threshold you have defined on that specific volume:

 

 

 

For reference: thresholds are edited per object by editing the object's properties, and looking at the bottom of the page: (Pro Tip: you can edit multiple objects at once from the "Manage Nodes/Entities" page)

 

 

 

Verified via SQL search on the "VolumesForecastCapacity" view in the database:

 

 

SELECT TOP 100 * FROM VolumesForecastCapacity

 

 

 

There you have it. Happy monitoring everyone!

Min/Max Transmit bps

$
0
0

Hi All,

 

Can anyone please advise how these metrics for an interface are calculated and stored by Solarwinds NPM.  It looks like the values could be extremely useful for us for historic analysis where we need to track back to 2am in the morning and see if an interface was maxing out, but I was curious how this data is derived.  If Solarwinds only polls the interface every 2 minutes is the interface aware enough to give Solarwinds the max from the last 2 minutes or does the min / max counter get set and updated by a defined confguration on the switch.

 

I took a look through the documenation but this didn't seem clear - I hope this question makes sense.

 

Regards,

Rob.

11.5 and iframes

$
0
0

Prior to 11.5 I was able to embed selected orion views on other webpages using iframes with a simple html as below.  After upgrading to 11.5 I'm getting "This content cannot be displayed in a frame".  Any knows how to get this going again.

 

<html>
<body>

<iframe src="http://10.10.10.10/Orion/SummaryView.aspx?ViewID=56&isNOCView=true" width="1300" height="1200">
</iframe>

</body>
</html>

Hardware health sensors & SQL Queries

$
0
0

I know you can enable/disable hardware sensors via an SQL query but can you add conditional statements to that query? Basically, we have a lot of devices showing a Warning state because of hardware health sensors. These sensors are flagging interfaces that are either shutdown or disconnected. I don't want to disable the sensor completely for fear I'd forget to turn it back on when that interface does get used but my boss is starting to question why all our devices show up with yellow warnings... Any suggestions would be appreciated!

Viewing all 21870 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>