Tricks with Charts

Posted by denny.lecompte Mar 30, 2010

People like pictures.  And why shouldn’t they?  And as you might expect, charts are high on the list of things users like best about Orion.  That said, everyone wishes they could do more with charts.  So for most of you, here’s more…

There is a little-known feature within Orion that will allow you to draw and label horizontal lines on charts.  Why would you want to draw horizontal lines on charts?  The most common reason is for some type of Service Level Agreement (SLA).  For instance, you might have an SLA that requires response time on a key interface to stay below 100 ms.  Beyond SLAs, there may be little idiosyncratic reasons to mark certain values.  For instance, maybe you and your fellow engineers play a drinking game where if a device CPU crosses 75% without triggering an alert, you have to drink a shot.  Really, we don’t know, but we’ve met a lot of you folks, and it seems like something you might do.  Just an observation—not a judgment. 

So how do you draw these lines?  To create the SLA Line, you first need to add custom properties.  If you’ve never created a custom property, you must access the Orion Server directly and launch the Custom Property Editor.  Go to Start > SolarWinds Orion > Grouping and Access Control > Custom Property Editor.




When you open the custom property, click “Add Custom Property”.  When the Add Custom Properties dialog pops up, be sure that Add Predefined Properties is selected and that then check Show Advanced Properties.  Scroll to the bottom of the list.  You’ll notice a set of predefined custom properties that come in pairs.  So you have “ResponseTime_Marker” and “ResponseTime_Annotation”.  Check both.  You’ll also see them for Availability, Percent Loss, bps, Percent Memory, Disk Usage, etc.  There is one pair for the most common Node, Volume, and Interface charts.  Add a marker/annotation pair and click OK.  I added Response Time which is a node. property.


After you click OK, then select Nodes.  You’ll see a list of nodes.  You will see a column for each of the properties you checked.  I have a ResponseTime_Marker column, and a ResponseTime_Annotation column.  Enter your SLA value for each of the target interfaces.  For the RT Marker column, enter the value on the y-axis where you want a line drawn.  I chose 50 ms.  In the Annotation column, add some text, which will show up as a label for the horizontal line. 







Here’s what my Response Time chart looks like with the line at 50 ms with the “RT SLA” text. 



Follow the same method for other charts.  Here’s one I did using CPULoad_Marker and CPULoad_Annotation. 



Note that line’s value is now just a custom property of the node (or interface or volume), so once created, you don’t have to go back to the Custom Property editor.  You can click edit in the node admin section of the web console, which will also allow you to quickly edit multiple objects at once.


One critical point:  If the value is empty for a given object, no line is shown.  So in the example above, for this device, lines will appear only for Response Time and CPU Load charts.  This method is flexible enough that you can set up different lines and labels for the same charts on different devices.

Finally, one other use case for this feature.  You can use it to control the upper end of the y-axis for a given chart:  Just set the “marker” value at something high (e.g., 50 on a  Cisco Buffer Failures chart) and set no label.  The chart will always go at least to 50, regardless of the data.


And that’s it.  Simple, but handy. 




Google maps anyone?

Posted by bshopp Employee Mar 25, 2010

So once again, the community is at it again.  Dal wrote a pretty sweet little integration which allows you to display your nodes on a Google Map.


You will need to download the zip file from the thwack community exchange Google Maps for Orion NPM.  I recommend to either do this directly on your Orion server or you will have to copy it over manually if you cannot do that.


Once you have done this, next extract it to the inetpub/SolarWinds directory




There are 3 files here that are used:

  • makexml.aspx -> used to get data from the Solarwinds Database and makes a xml file.
  • data.xml -> the xml file made by makexml.aspx
  • displayxml.aspx -> the javascript that actually displays the data from data.xml.

Next, using the Orion Custom Property Editor, you will need to create 7 new node custom properties (Start –> All Programs –> SolarWinds Orion –> Grouping and Access Control –> Custom Property Editor)

  • ConnectionType: To tell what equipment has been used to make the connection between the points (Icons), Modem, fiber, etc.
  • Enhetstype: What kind of equipment is this: L3-switch, Router, Radio, etc (not used for Google Maps yet)
  • Latitude: No explanation needed
  • Longitude: No explanation needed        
  • Mapname: The cryptic link name Orion makes for maps made in Network Atlas. Needs to be pulled manually from the MapStudioFiles.
  • Polyline: The encoded polyline, between two or more points. Made with
  • Stedsnavn: (Sitename in English?) The name of the place you want to put on the map. Used to group together nodes at the same location (Site).

If you want to test his implementation, you can use the files he put in the zip and go to - http://your-server-ip/GMaps/displayxml.aspx


However, if you want to do this for your implementation, here is what you need to do:

  1. Populate the above custom properties against the nodes you want to map
  3. Obtain your own Google key, it can be done easily from here:
  5. Edit makexml.aspx database connection section with your SolarWinds Orion database information     
  7. Delete the existing data.xml from the directory
  9. Open your browser of choice and copy in the following URL - http://<yourServerIP>/GMaps/makexml.aspx.  If you have done everything right to this point, you will get something like this in return on the web page and this will create your own copy of a data.xml file     
    *Note – the first time I tried this I kept getting a permissions error and had to go in and modify the permission on the directory and turn off read-only on the files
  11. Now the Google Maps API key, you got in step 2 above, you will need to copy that into the displayxml.aspx file here     
  13. Also, within this same file, you will want to change the default map location and zoom level, which can be accomplished by changing this line     

    gmap.setCenter(new GLatLng(62.484415, 6.342545), 11);         
    The number 11 is the zoom level.


So now we are at a pivot point.  If you wanted to create an external link within Orion that shows up on your main toolbar, you can stop now and just copy the URL /GMaps/displayxml.aspx">/GMaps/displayxml.aspx">http://<yourServerIP>/GMaps/displayxml.aspx


If you want to have this show up and work on your Network Summary Home page as a Custom HTML resource, you have a couple more steps to complete


Within the displayxml.aspx file you have a couple more locations to update and put a ../GMaps in front of them.  Easiest way is to do a find in notepad

  • search for data.xml and add ../GMaps in front of it - mine looks like'GET', '../GMaps/data.xml', true);
  • search for  mm_20_green.png iconGreen.image = '../GMaps/Icons/mm_20_green.png';     
    12 locations

Now, go to the Network Summary Home page and click customize in the upper right hand corner and click the plus sign to add, under Miscellaneous, add a custom HTML resource, click submit.  This will return you back to the Network Summary Home page and for that resource click edit and enter the entire context of the displayxml.aspx file into here and click submit a voila, Google Maps on your Network Summary Home page.


One extra item of note, you will need to run the makexml file manually on a periodic basis to pick up changes to Orion database or figure out a way to schedule this.



  Here is what mine looks like now as an example: 





Here is what the author, Dal’s, map looks like:



So for you other community members out there, this work has earned Dal a SolarWinds t-shirt, which I will be sending to him.  If you have done something cool with Orion or written some customizations, let us know and we may send you a shirt too.

While working on Orion NetFlow Traffic Analyzer (NTA) v3.5, our dev staff spent a lot of time analyzing your packet captures.   What they found was really interesting!   On many networks, up to 95% of all network traffic (i.e. Top Talkers) can be captured and analyzed from as little as 4% of the total amount of Flow data received from monitored Flow sources. 

So, if you are primarily using Orion NTA to determine the "top talkers" on your network, you are probably storing a lot of unnecessary data in your Orion DB. As a result, your Orion DB may be unnecessarily large and the load times for Orion NTA resources and reports may be unnecessarily long.

Have no fear!   With Orion NTA v3.5 and v3.6, you can enable Top Talker Optimization to significantly improve the performance of your installation!

Existing v3.5

If you’re using NTA v3.5, you can still manually enable Top Talker Optimization by following the steps outlined here.

New to v3.6

If you’ve installed NTA 3.6 from scratch, Top Talker Optimization is already enabled - nothing more for you to do!  

Upgraded to v3.6

You can enable Top Talker Optimization to significantly boost the performance of your installation in just two easy steps:

1. Navigate to NTA Settings in Orion Admin area

2. Set Top Talker Optimization to 95%


That’s it!  

NOTE:  If this is an existing DB, configuring Orion NTA to keep compressed data for 14 or fewer days can accelerate the effectiveness of Top Talker Optimization. You can change this by navigating to NTA Settings in Orion Admin area and change Keep compressed data for XX days to 14 or less.  Allowing Orion NTA to run in this mode for a couple of weeks, or at least longer than the number of days provided, will ensure that all the old, unnecessary compressed Flow data you collected prior to enabling the Top Talker Optimization is flushed from your Orion database. After the old compressed Flow data is deleted from your database you should see noticeable performance improvements in Orion NTA resource load times.

So, to close out this post, let’s answer the million dollar question…what does Top Talker Optimization buy you as far as max flow rate?

Well, here's a reference implementation from a customer who's been able to obtain 40,000 flows per second and 60,000 flows per second in peak.   That’s over 3 million flows per minute!! 

  • Orion Server
    • Intel Xeon Dual Quad Core @ 2.00GHz
    • 4.00 GB of RAM
    • Disks – DELL PERC 5/I
    • 6 136GB 15K – RAID 5
    • 8706 elements
    • 279 NetFlow interfaces (spread across 6 devices)
  • Additional Poller 1
    • Same HW as Main
    • 9309 elements
  • Additional Poller 2
    • Same HW as Main
    • 10893 elements
  • SQL Server
    • Server 2008/SQL Standard 2005
    • Intel Xeon Dual Quad Core @ 2.50GHZ
    • 8.00 GB of RAM
    • Disks  -DELL PERC 6/i
    • 2 300GB 15K – RAID 1 (Operating System & DB Log)
    • 4 300GB 15K – RAID 10 (DB files)

We’d love to hear about how Top Talker Optimization is working for you.   Post your story here.  


We get the occasional support call from customers having trouble adding nodes to Orion IP SLA Manager.  They try to add the node, they see the spinner spin for a while, then they get taken back to the main page.  What gives?  As it turns out, the root cause of this issue is simple: they haven’t installed Orion IP SLA Manager on their additional pollers.  In other words, if you want to add an Orion node that is being monitored by an additional poller, Orion IP SLA Manager has to be installed on that poller too.

Now you’re going to ask, “How do I install IP SLA Manager on my additional pollers?”  Fortunately, this answer is very simple as well.  It’s the same installation package as Orion IP SLA Manager; you just install it on your additional poller.  Lastly, there is no additional cost for this.  In the past we charged a separate license for Orion modules on additional pollers; that is no longer the case.  If you’ve purchased additional pollers, you can install any Orion module on that additional poller for free.  Chris LaPoint wrote a detailed blog post on that back in January.  You can read it Orion Additional Polling Engine and Modules -- What do I buy for modules...Nothing because it’s now free!.

You know that to have nodes appear in the NCM integration module, the nodes need to exist in both NCM and NPM. So, if you add nodes and/or change node properties in Orion, you'd like to have those changes automatically propagated to NCM. However, what you might not know is that you can easily set up a job to help you with this task. In the NCM application, go to Schedule -> Create New Job -> then choose "Import Orion Database." Once you have this set up, everything will stay in sync without your needing to bring up the NCM application (unless you want to manage specific config properties on those nodes). 

Eventually, we want to bring node management completely into the Orion website, but in the meantime, try this. 


1. Choose the job and set it up according to your preferred schedule. 


2. Select the database to be imported. 


3. Map the columns. This allows you to sync nodes with custom properties as well. 



4. Customize the rows. If for some reason, there are some devices you don't want synced, you'll de-select them here.



5. Choose how you want the job to run. If you choose "Add only new nodes," then that is *all* that will happen. Info for existing nodes won't get updated. If you uncheck that box, you'll get updates and new nodes when the job runs. If a node already exists, it won't be re-added, but keep in mind that that identification is done by IP address, so if you have nodes that tend to change IP address, duplicates could happen. 

6. Click finish - and you're done!

***** UPDATE 3/30/10 **** PLEASE NOTE:  You will need to select all existing nodes you want synced, right-click and select Edit Multiple Nodes, and change Orion Node Import Allow to Yes for this to work.   We inadvertently set this value to No by default, which means that changes will be ignored unless this value is changed.   This is being fixed in the 6.0 release currently in development.

In network management, events are bad news.  At least the ones you care about are.  You can spend your whole day sifting through various informational events, but most of the ones that need your attention are telling that something is wrong.  Most network systems share their events through Syslog, and it’s generally understood that monitoring those Syslog streams is a best practice.  Based on the conversations that our PM team has had with users of VMware, it’s much less widely known that you can monitor VMware events using Syslog.  VMware host servers support sending their logs via Syslog, and Orion has a built-in Syslog Server, so it’s a plug-meet-socket situation. 


VMware has some good docs (see also here) on how to configure Syslog on a VMware box.  It’s pretty straightforward as these go, so I’ll assume that you can turn on Syslog and point it at your Orion server.


Once you are collecting Syslog from VMware, what do you do on Orion?  Actually, you don’t have to do anything and the Syslog messages will still be collected and displayed in the Syslog View on the web console.  Doing nothing is pretty lazy, though, and if you’re bothering to read this, you’re better than that.  To get more value from that Syslog stream, you should create some Syslog rules that will trigger an email or some other notification for key events.  To create a Syslog rule, go to the Orion server and launch the Syslog Viewer (Start > All Programs > SolarWinds Orion > Syslog and Traps > Syslog Viewer)






Select View > Alerts/Filter Rules… and you’ll see this:




Then click the “Add New Rule” button to see this:




You can get the complete steps for configuring Syslog Rules from the Admin Guide.  The rule system is rich, so you can narrow down your alerts based on IP address ranges, hostname pattern, and message severity, which will allow you to get an alert on errors in hosts with one naming convention but not another.  Most importantly, for VMware Events, you can create rules based on the content of the Syslog message.  The engine scans the content of the message and checks it against the string or regular expression you type.  For instance, if you want an email any time a VM is powered off, you can create a rule that triggers when a message with “*is powered off” appears.  Similarly, to alert when a VM migrates from one host to another, alert on “*migration*.”  Look through you Syslog messages to find the key phrases for your rules.






When the rule conditions are met, you can take any number of actions, including the usual send an email, but you can also do some Syslog-specific actions like tagging a Syslog, modifying the Syslog message, or  forwarding the message on as a Syslog or converting it to an SNMP Trap. 




What events should you alert on?  Some of the more common cases we’ve seen are VM cloning, VM migrations (i.e., VMotion), taking snapshots, deleting a VM, and changing resource allocations.  The exact set will depend on what matters to you.  To create those alerts, just start collecting Syslog and then scan the logs for key messages.  As you find ones that seem important, create a rule.  You don’t need to do it all at once—you can create them over time until you’ve tuned the monitoring to fit your environment.


I ran across another cool post that a member of the thwack community put together that I wanted to share with everyone.  lasher put together some new resources for Orion NPM v9.5.1 which allow you to create double and triple gauges within a resource for Universal Device Pollers.  If you wanted to accomplish this today, you would need to use a custom html resource, so this makes life much quicker and easier.





So I can hear you saying, ok you had me at double and triple gauges, how do I get this?


First, you can download this resource Double Triple Poller Guage for v9.5.1


To install:

  • Copy CustomOIDEditGaugeDoubleTriple.aspx and CustomOIDEditGaugeDoubleTriple.aspx.cs to InetPub\SolarWinds\Orion\NetPerfMon\Resources folder.
  • Copy CustomPollerRadialGaugeDoubleTriple.ascx and CustomPollerRadialGaugeDoubleTriple.ascx.cs to InetPub\SolarWinds\Orion\NetPerfMon\Resources\NodeGauges folder.
  • Copy CustomOIDEditLinearGaugeDoubleTriple.aspx and CustomOIDEditLinearGaugeDoubleTriple.aspx.cs to InetPub\SolarWinds\Orion\NetPerfMon\Resources folder.
  • Copy CustomPollerLinearGaugeDoubleTriple.ascx and CustomPollerLinearGaugeDoubleTriple.ascx.cs to InetPub\SolarWinds\Orion\NetPerfMon\Resources\NodeGauges folder.





As lasher states, there are 4 known issues with it. 

  • Auto-Scale not working and has been disabled.
  • Auto-Hide Resource not working correctly and has been disabled.
  • Must set Warning & Error Threshold or Gauges will display red.
  • Gauge labels do not set correctly when first added to page.  (Workaround is to edit the gauge and click submit.  Labels will show up correctly after that.)

First of all, mad props to byrona for Using a Macro for email alerts in Advanced Alert Manager tip with the community.  I know there’s a lot of you already using this simplified email alert management trick, but I wanted to make sure to spread the word just in case.

Here’s how it works.  Instead of configuring static email addresses in the To: field of your Orion Advanced Alert notifications, use a variable (a.k.a macro).   The value of this variable can be a custom property.  


In byrona’s case, he wanted to have emails sent to the “Primary Contact” or owners of each of the nodes in the event of an issue, so he created a custom property called “Primary Contact” and entered this value for each of his nodes.   Then, when setting up alerts, he used the ${Node.PrimaryContact} variable to specify the To: address.

Simple, right?  But, you wonder as you lie awake at night, what happens if the Primary Contact hasn’t been filled in on some nodes?  Does alerting die slowly?  Well, as Re: Using a Macro for email alerts in Advanced Alert Manager verified, blank fields don’t break email alerts.  The emails just don’t get sent out for those nodes.  Sleep well.

If this gives you a few minutes back in your day and you want some community karma for yourself, please don’t be shy, share your tips and tricks with the community!


We get many, many questions on thwack regarding Windows credentials for adding a Windows DHCP server to IPAM.  There are few tips and tricks I will share that can make this process relatively painless.  First, let me explain why you need to enter Windows credentials in IPAM.  A Windows account is required to pull scopes from a Microsoft DHCP server.  This account has to be a member of one of the three following groups on the DHCP server: local Administrators, DHCP Users, or DHCP Administrators. IPAM uses this account to log into the DHCP server and to pull scopes you want to manage.


Second tip: the DHCP server you’re adding to IPAM must already be defined as a node in Orion NPM.  If you haven’t added the DHCP server as a node in Orion NPM, you won’t be able to add it to IPAM.  When you’re adding a DHCP server to IPAM, it displays a list of devices to choose from, and this list is generated from your Orion nodes.


Add DHCP Server.


Third tip: use the Windows Credentials manager in IPAM if you’re working with more than one set of Windows credentials.  Go to IPAM Settings>>Manage Windows credentials for scope scans, which will take you here:


Windows Credentials manager.




Note the two sets of Windows credentials I’ve created: Windows 1 and Windows 2.  Once created, these are available to you when adding a DHCP server in IPAM, as shown below.


choosing credentials.


Fourth tip: when in doubt, check out our Knowledge Base articles on this topic.  You can find them here.  These two articles have some great information on errors you may encounter and how to resolve them.

Filter Blog

By date: By tag:

SolarWinds uses cookies on its websites to make your online experience easier and better. By using our website, you consent to our use of cookies. For more information on cookies, see our cookie policy.