Sam Administrator Guide
Sam Administrator Guide
This document may not be reproduced by any means nor modified, decompiled, disassembled,
published or distributed, in whole or in part, or translated to any electronic medium or other means
without the prior written consent of SolarWinds. All right, title, and interest in and to the software,
services, and documentation are and shall remain the exclusive property of SolarWinds, its affiliates,
and/or its respective licensors.
The SolarWinds, SolarWinds & Design, Orion, and THWACK trademarks are the exclusive property of
SolarWinds Worldwide, LLC or its affiliates, are registered with the U.S. Patent and Trademark Office,
and may be registered or pending registration in other countries. All other SolarWinds trademarks,
service marks, and logos may be common law marks or are registered or pending registration. All
other trademarks mentioned herein are used for identification purposes only and are trademarks of
(and may be registered trademarks) of their respective companies.
With SAM, you can monitor public, private, or hybrid environments in a variety of ways, including:
l AppStack: Use interactive visual mapping to gain an in-depth perspective through the entire
environment to help identify the root cause of performance and availability issues.
l Performance Analysis (PerfStack) dashboards: Correlate historical and real-time data from
multiple SolarWinds products and entity types in a single view for in-depth troubleshooting
l Cloud monitoring: Monitor IaaS, PaaS, and SaaS applications and servers on-premises, with
optional agents for cloud services like AWS, Microsoft Azure, Rackspace, and more. Hybrid
cloud monitoring allows you to keep track of your applications, even when they move from on-
premises to the cloud.
l Container monitoring: View, track, and correlate key performance metrics, including CPU,
memory, and uptime, for Docker, Docker Swarm, Kubernetes, and Apache Mesos containers.
l API pollers: If you can access an external REST API, you can use the API Poller feature to collect
data from modern application stacks and display it in SAM dashboards.
l AppInsight applications: Monitor Microsoft Active Directory, Exchange, IIS, and SQL servers and
display metrics, status, and issues to manage and maintain applications and servers.
l Application monitor templates: Combine process monitors, port availability, and performance
counters to assess every aspect of an application, including status and overall health.
l Application dependencies: Detect how applications and nodes interact to ensure important data
for key applications is monitored.
l Server infrastructure monitoring: Discover and store IT Asset Inventory data on your servers,
while monitoring hardware health to ensure server and application uptime.
SAM is part of the SolarWinds Platform, making it easy to add other modules to expand your
monitoring capabilities. There are many ways to integrate SAM with other SolarWinds Platform
products, including:
l The Systems Management Bundle includes SAM and the following modules:
o Virtualization Manager (VMAN): Gain insight into performance, capacity, and usage of your
virtual infrastructure, including hosts, VMs, clusters, containers, virtual storage area
networks (vSANs), and other datastores.
o Storage Resource Monitor (SRM): Provide performance monitoring and alerting across all
performance issues before users are affected. When used with SAM, WPM can map the
relationship between web transactions and the supporting infrastructure, allowing you to
see overall status details in one place. For example, SAM may show that Microsoft IIS is
running, but WPM can notify you if sites take too long to load. After you remedy the
situation, WPM can validate that the user transactions are operating successfully.
l The Server Performance & Configuration Bundle combines SAM with Server Configuration
Monitor (SCM) to offer performance monitoring and change detection in a unified solution.
l The Log and Systems Performance Pack pairs SAM with Log Analyzer so you can aggregate,
search, and chart log data while tracking system performance.
l The Application Performance Optimization Pack includes SAM and Database Performance
Analyzer (DPA).
o Add response-time analysis to see the root cause of application issues.
o Use historic analysis and dynamic baselines to spot SQL tuning problems.
Did you know that when an alert indicates that an application failed, you can use SolarWinds
IPAM to quickly determine if a broken or missing DNS record is at fault?
SolarWinds recommends using the latest version of SAM and the SolarWinds Platform,
including hotfixes and service releases.
If you're new to SAM, review this section for details that may be helpful as you explore your
environment. To learn more, see the SolarWinds Platform Administrator Guide.
Log in to SAM in a web browser to open the SolarWinds Platform Web Console and get started
with SAM. Accessible from any computer connected to the Internet, the SolarWinds Platform
Web Console includes views (individual pages) and widgets (informational blocks on views). To
learn more, watch Navigating the Web Console.
Manage SolarWinds Platform Web Console user accounts to set user rights, reset passwords,
limit access to network segments, and enable authentication with Active Directory.
Use the SolarWinds Platform Log Viewer (OLV) to see event, syslogs, and trap messages.
If using deprecated Syslog and Traps features, note that they will be replaced by
SolarWinds Platform Log Viewer in a future release, likely in 2022.
Get alerts about issues in your environment. See Explore alerts and reports.
Run the Discovery Wizard to detect servers and applications in your environment so you can
decide what to monitor. Available polling methods include WMI, SNMP, ICMP, API, and agents
deployed on Windows, Linux, and AIX devices.
Add individual nodes or use Active Directory domain controllers to add nodes automatically.
Manage monitored nodes by editing properties, setting polling methods, toggling monitoring on
and off, or muting alerts.
Customize dashboards, colors, logo, views, widgets, and charts in the SolarWinds Platform Web
Console. Specify what other users can see on modern dashboards and views, as well as what
type of data appears for different objects.
Add widgets, from a list of available widgets, to show the data you need and arrange them in an
order that works best for you. Widgets are available for active alerts, events, reports, and much
more. You can customize some widget types, such as a chart page or a list of maps, to display
the information or nodes you want to monitor in your dashboard.
Create custom properties for nodes and applications. For example, add a custom property to
identify IIS nodes.
Create groups and dependencies to organize how monitored data is presented in the
SolarWinds Platform Web Console. Set up dependencies to represent relationships between
network objects.
Set thresholds for monitored metrics. Customize general thresholds or use baselines.
Monitor your virtual infrastructure for Amazon Web Services (AWS), Azure, ESXI, ESX, Microsoft
Hyper-V, Nutanix, and VMware.
Monitor container services for Docker, Docker Swarm, Kubernetes, Azure Kubernetes, and
Apache Mesos.
Monitor hardware health for insight into hardware issues on Dell, HP, HPE ProLiant, IBM, and
Cisco UCS devices. You can also monitor Nutanix clusters with Hyper-V and VMware hosts.
Do you need to scale your deployment? See Scalability Engine Guidelines and review tips to
optimize your deployment.
Balance the load on polling engines by specifying nodes to be polled by individual polling
engines. See also Manage Additional Polling Engines.
Use SolarWinds High Availability to provide failover protection for your SolarWinds Platform
server and Additional Polling Engines (APEs).
Use alerts to monitor your environment. See also Reduce alerting noise and learn about
generating Service Desk incidents from alerts.
Maintain the SolarWinds Platform database and use the Active Diagnostics tool.
For quick reference, here are additional links to SolarWinds Platform Administrator Guide content:
l Administrative functions
l Alerts
l Cisco UCS hardware health monitoring
l Cloud monitoring
l Container monitoring
l Custom monitors, including Device Studio and Universal Device Pollers (UnDPs)
l Custom properties
l Discovery
l Hardware health monitoring
l High Availability (HA)
l Maps, including Network Atlas, SolarWinds Platform Maps, and Worldwide Map
l Nutanix hardware health monitoring
l SolarWinds Platform agents for Windows, Linux, and AIX
l SolarWinds Platform database
l SolarWinds Platform Log Viewer
l Performance Analysis (PerfStack) dashboards
l Polling engines
l Quality of Experience (QoE) dashboard
l Reports
l ServiceNow
l Thresholds
l User accounts
l Virtualization
On the SolarWinds Platform Web Console login page, provide a User name and Password, and then
click Login.
If you're an administrator logging in to a new installation of SAMfor the first time, you'll be
prompted to add a password to the main Admin account. Afterward, SolarWinds highly
recommends setting up users to ensure your data and network remain in your control. To learn
more, see Manage SolarWinds Platform Web Console user accounts and Secure Configuration
for the SolarWinds Platform
To display licensing details for all deployed SolarWinds Platform products, click Settings > All
Settings > License Details.
The term "managed node" can be interpreted differently, depending on if you're using other
SolarWinds Platform modules with SAM:
l In a SAM-only environment, a managed node is any entity from which SAM extracts data
directly via supported polling methods (for example, WMI), SolarWinds Platform agents, or API
pollers. Nodes monitored by Asset Inventory and/or Hardware Health are also considered
managed nodes in a SAM-only environment.
l If your environment includes SAM and other SolarWinds Platform modules, the SAM node
count has the potential to be additive to other modules that use node licensing, such as
SolarWinds Network Performance Monitor (NPM). In a multi-module scenario, only nodes being
monitored by SAM application monitors or API pollers are classified as managed nodes for
SAM. Nodes monitored by Asset Inventory and/or Hardware Health do not impact licensing.
In either case, a managed node can represent a traditional server, VM, hypervisor, or Nutanix cluster,
as well as an external node, external API, or service.
A VM being monitored directly counts as a single managed node. However, individual VMs on a
hypervisor do not count as multiple managed nodes when performance metrics are gathered
from the parent hypervisor. In that case, the parent hypervisor is the managed node.
Count the number of managed nodes in your environment to determine the most suitable license tier.
SAM25 25
SAM50 50
SAM75 75
SAM100 100
SAM200 200
SAM300 300
SAM400 400
SAM500 500
SAM600 600
SAM700 700
SAM800 800
SAM900 900
SAM1000 1000
SAM1250 1250
SAM1500 1500
SAM2000 2000
SAM2500 2500
SAM3000 3000
SAM4000 4000
SAM5000* 5000
Each component monitor consumes one license. A typical application monitor (also called an
application) includes 15 — 25 component monitors, while AppInsight applications consume a flat rate
of either 30 or 50 licenses each.
In addition to application monitors, SAM features such as API Pollers also consume licenses.
For example, the Windows Scheduled Task Monitor consumes 5 licenses for each monitored
Windows server. Asset Inventory data collection does not consume SAM licenses.
You can use as many component monitors as needed, as long as the number of assigned component
monitors doesn't exceed the license count. If you exceed a license limit, component monitors beyond
the limit are not activated and their statuses change to Not Licensed. Either disable assigned
component monitors to reduce license consumption, or upgrade your license. This also applies to API
Poller metrics.
AL300 300
AL700 700
AL1100 1100
AL1500 1500
AL2500 2500
To check the number of available component monitors, navigate to the SAM License Summary:
For most application monitors, you can add, disable, or delete component monitors, as necessary.
Each active component monitor in an application monitor counts against your license. However, note
that AppInsight application behave differently, consuming licenses at a flat rate.
Example: The environment depicted on the Manage Assign Application Monitors page shown here
includes:
l The AppInsight for IIS template uses a flat rate that consumes 30 licenses per assigned
application monitor, even though 152 component monitors actively poll on behalf of each
application monitor.
l The Server Clock Drift template consumes 2 licenses for 1 assigned application monitor.
l The Web Link template only consumes 1 license for 1 assigned application monitor.
If you have an AL150 license and use all component monitors from each template, you consume 33
(30+2+1) component monitor licenses out of the available 150.
To view the number of licensed component monitors consumed per template, navigate to the Manage
Application Monitor Templates page.
To check the number of component monitors assigned to each polling engine, see:
l How to display all components polled for each polling engine
l Check the number of available component monitors in my SAM license
You can disable some component monitors in AppInsight applications, but that won't reclaim licenses
because AppInsight applications typically monitor far more components than cited in their flat rates,
as listed here:
l AppInsight for Active Directory: 50 component monitors per monitored domain controller
l AppInsight for Exchange: 50 component monitors per monitored mailbox role server
l AppInsight for IIS: 30 component monitors per monitored IIS server
l AppInsight for SQL: 50 component monitors per database instance
If you encounter heavy polling loads and need to determine how many component monitors
collect data for individual AppInsight applications, see Review polling engine loads. You can
also check the Active Components column on the Manage Assigned Application Monitors
page.
You can also check your license type in the SolarWinds Customer Portal.
If a license starts with SAM (for example, SAM200), SAM uses a node-based license.
To switch to node-based licensing, contact SolarWinds Sales. Note that, after updating
licensing, it may take one or two polling cycles for polling rate details to refresh in the
SolarWinds Platform Web Console.
You can sort licenses by product name, version, license type, or expiration date. You can also add a
license, upgrade a license, and activate licenses on new servers. The License Manager on the
SolarWinds Platform server controls all licenses for your SAM environment.
If prompted to activate your SAM license, use your individual Customer ID (also called a
"SWID") to log in to the Customer Portal. If you do not know your ID, enter a Support ticket.
With a node-based SAM license, you can add APEs at no extra cost. Note the following details about
"included" APEs:
l They collect SAM and basic SolarWinds Platform data only. For example, APEs can return
application metrics, plus basic node status and volume metrics, but not NPM interface data.
l With a unified SAM license key, polling engine licenses are stacked automatically, with built-in
scalability. You can monitor up to 40,000 component monitors per server at standard polling
frequencies. If you exceed that limit, polling intervals are automatically extended.
l APE port requirements match Main Polling Engine port requirements.
A node-based SAM license governs how many managed nodes can be monitored in your SAM
environment, while allowing for an unlimited number of component monitors per node.
A component-based SAM license is similar to an NPM license, replacing interfaces for components.
That is, SAM is licensed based on nodes, volumes, or component monitors — whichever is highest.
For example, you can monitor 150 nodes, 150 volumes, and 150 component monitors simultaneously
with an AL150 license.
If your deployment includes both SAM and NPM, the combined licenses can extend the total number
of nodes being monitored. If you have an NPM SL500 (500 nodes and 500 volumes) license and a
SAM AL150 component-based license, you can monitor:
l 650 nodes, including:
o 500 nodes, monitored by NPM, and
l 650 volumes. The number of volumes matches the node count in the license.
l 500 interfaces monitored with SNMP.
l 150 component monitors.
l An unlimited number of interfaces polled using WMI.
NAM is a bundle of the following modules: IP Address Manager (IPAM), Network Configuration
Manager (NCM), NPM, NetFlow Traffic Analyzer (NTA), User Device Tracker (UDT), and VoIP and
Network Quality Manager (VNQM), plus SolarWinds High Availability (HA). Because NAM includes
NPM, the combined NPM and SAM licenses extend the total number of nodes being monitored, as
described earlier.
If NAM and SAM are both deployed, you can use NAM APEs and add APEs at no extra cost with a
node-based SAM license. However, note that the "included" SAM APEs collect SAM and basic
SolarWinds Platform data only. For example, a SAM APE can return application metrics, basic node
status, and volume metrics, but not NPM interface data.
If you use LA and SAM, you'll only receive LA-related messages for nodes being monitored by LA. For
example, if you have NPM SL100, SAM AL100, and LA100 licenses, you can monitor up to 300 nodes
but you'll only receive LA-related messages from the 100 nodes specifically monitored by LA.
To learn how LA interacts with SolarWinds Platform Log Viewer (OLV) and SAM, see this
Success Center article.
SAM and SCM both support the Asset Inventory feature. Although that feature does not consume
extra licenses on its own, a node must be monitored if you want to track Asset Inventory, so at least
one license is consumed by the node.
See the SAM Getting Started Guide for details about adding servers. The SolarWinds Platform
Administrator Guide also provides details about Discovery, as well as how to configure polling
methods, schedule future Discoveries, and group objects.
To configure specific types of servers for monitoring via SAM application monitor templates, see the
following topics in the SAM Application Monitor Template Reference:
l Configure Linux/Unix systems for monitoring by the SolarWinds Platform agent in SAM
l Configure Java applications servers and JVMs for SAM monitoring
l Configure Oracle database servers for SAM monitoring
When finished adding and configuring servers, you can begin discovering applications on those
servers.
Credentials are tried several times during a scan, so an incorrect password may lock out
an account. To avoid potential account lockouts that affect actual users, SolarWinds
recommends that you create and use service accounts for monitoring purposes. That
way, no actual user is affected by an account lockout if a password is entered incorrectly.
8. Review the scan summary. If the wizard determines that a template was already assigned to the
node, the template is not assigned again, by default. To assign duplicate templates, select "Yes,
Assign Anyway" in the duplicates list.
9. Click Start Scan to begin the process, which runs in the background. To check progress, click
the Bell icon at the top of the page.
A message appears when scanning is complete. Click More Details to see results. Click Application
Summary to open the SAM Summary page.
Click here to watch a video about adding individual nodes. You can also assign
SAM application monitor template to nodes, or to groups of nodes.
1. To add a node, click Settings > All Settings > Add Node.
2. When the Add Node Wizard appears, provide details on the Define Node tab, and then click Next.
3. On the Choose Resources tab, select what you want to monitor.
4. On the Add Application Monitors tab, use the Show Only drop-down list to select a category of
application monitors and display a list of Component Types.
1. Click Settings > All Settings > SAM Settings > Manage Application Monitors.
2. Find an assigned Application Monitor without a Custom View.
3. Return to Applications > SAM Summary then click the Application Monitor to view its
Application Details view.
4. Click Customize Page, then proceed with your customizations.
1. Click Settings > All Settings > SAM Settings > Manage Application Monitors.
2. Select an Application Monitor and then click Edit Properties.
3. Click Modify Template Settings in the field Custom Application Details View.
4. Select "Yes, use < TemplateName > Details View in the field Custom Application Details View".
5. Click Submit, then click the name of the assigned Application Monitor to view its Application
Details view.
6. Click Customize Page and proceed with your customizations.
After creating a customized application details view for a template, you can change the Custom
Application Details View setting in the template properties to switch between the default view and the
custom view.
4. If you want applications based on this template to use the custom view, set Custom Application
Details View to "Yes, use <TemplateName> Details View" where <TemplateName> is the name
of the selected template.
5. Click Submit.
In SAM, the Application Summary view provides additional details about your applications and
servers, such as related alerts, potential warranty issues on servers, and Top 10 lists to keep you up-
to-date on your busiest servers. The page includes various default widgets (formerly called
"resources") that you can customize as necessary.
You can edit the current SAM Application Summary view, or create a custom view. For details, see
How custom views work in the SolarWinds Platform.
Node tooltips
Tooltip data Details
Node Status Current status of the node (for example, Up, Down, Unknown, or Warning).
You can adjust node status settings. See Calculate node status in the
SolarWinds Platform.
Machine Type The vendor icon and vendor description of the node.
Average Response The measured average response time of selected node, as of the last node
Time poll.
Packet Loss The percent of all transmitted packets lost by the node, as of the last node
poll.
CPU Load The percent of available processing capacity that is currently used, as of the
last node poll.
Memory Used The percent of available memory that is currently used, as of the last node
poll.
Application tooltips
Tooltip data Details
App Name The name of the application
App Status The status of the application: up, down, unknown, warning, or critical
Server Status Operational status of the server: up, down, warning, unplugged, or
unmanaged
Components with List of the components with problems and their statuses
problems
The following figure shows various SAM widgets that you can add to the Node Details - Summary
view:
You can also create site-specific views for your organization. Watch SolarWinds Lab Bits:
Creating a New View in the SolarWinds Platform.
Use links in widgets to drill down further and see details such as server resources, allocated virtual
resources, application performance, and OS metrics. To monitor immediate needs in your
environment, you can:
l Click the bell icon at the top of the SolarWinds Platform Web Console to view notifications.
l Click Alerts & Activity > Message Center to display events and alerts.
The SolarWinds Platform Administrator Guide describes features available in many products,
including:
l Monitor cloud instances and VMs
l Monitor container services
l Monitor Cisco UCS devices
l Group monitored objects
l View events, alerts, traps, and Syslogs in the SolarWinds Platform Web Console Message Center
l Troubleshoot environmental issues with Performance Analysis (PerfStack) dashboards
l Monitor SNMP traps
l Use SolarWinds Platform Log Viewer.
l Use Performance Analysis (PerfStack™) dashboards
l Monitor Quality of Experience (QOE) metrics
l Integrate SAM with ServiceNow to generate tickets based on critical events and alerts
Some benefits of using SolarWinds Platform agents for SAM polling include:
l Encryption: Neither standard SNMP nor WMI include encryption.
l Speed: Agentless protocols such as WMI and RPC were originally created for LANs, not the
Internet. SolarWinds Platform agents use HTTPS, which is bandwidth-efficient and latency-
friendly.
l Reliability: Agents run independently of the SolarWinds Platform server and can monitor hosts
even if a network outage occurs. For up to 24 hours, an agent can continue running and all
polled data remains cached on the agent. When connectivity is restored, the agent uploads
collected statistics to the SolarWinds Platform server, filling in gaps in charts.
l Flexibility: With agents, you can run Perl, VBScript, and any other Windows script language
remotely using a Windows Script Monitor. Otherwise, all Windows Script Monitors execute
locally on the Main Polling Engine or an APE; an agent allows you to execute scripts on the
system where the agent is installed.
l Fewer ports: WMI requires several open ports to function properly but SolarWinds Platform
agents can use "Server Initiated" mode to operate over a single port. TCP port 17790 listens on
the host where the agent is installed while the SolarWinds Platform server polls information in a
similar fashion to SNMP or RPC. No ports need to be opened inbound to the internal network
from the DMZ, and all communication occurs across a single NAT-friendly port.
l Cloud-friendly: Monitoring cloud-based applications and servers using traditional agentless
protocols presents many issues. In addition to the encryption and port issues mentioned above,
WMI cannot traverse NAT boundaries and its frequent communication doesn't tolerate
bandwidth congestion or high latency conditions well. Also, many ISPs block RPC traffic to
guard against hackers.
To effectively monitor Linux/Unix systems with the SolarWinds Platform agent for Linux,
additional configuration may be required. See Configure Linux/Unix systems for the SolarWinds
Platform agent for Linux and Configure SNMP for SolarWinds Platform agents on Linux/Unix
and AIX systems in SAM.
Review the latest system requirements for the Microsoft .NET Framework version used in the
SolarWinds Platform. Although SolarWinds Platform agents support some earlier
.NET versions, SolarWinds recommends upgrading. Click here for additional security-related
best practices.
For example, if you assign the FTP User Experience Monitor template to a node, you may not want to
measure response time locally from the server where the application is installed. If so, switch the
template to agentless polling.
Generally, SolarWinds Platform agents provide richer data streams, while agentless polling pulls
limited data (based on the API and security access permissions) but can isolate the load to an
external resource and does not impact applications as much. Agentless monitoring also has benefits
— no additional software to deploy or manage; less resource contention on target servers; faster
setup; fewer security concerns. Pick the best option for your environment.
Different features are available based on monitoring methods, as described in these articles:
l Decide between agent vs. agentless polling methods
l Comparison of Windows agent versus agentless, using SNMP or WMI
l Comparison of Linux agent versus agentless
l Comparison of AIX agent versus agentless
SolarWinds Platform Remote Collectors (ORCs) are also available for SAM deployments with
node-based licensing.
If you deploy an SolarWinds Platform agent to a node and use Agent as the Preferred Polling method
for an application monitor, you can use a Windows Script Monitor to run scripts in Perl, VBScript, or
another supported script language directly on target nodes. For PowerShell scripts, you can use a
PowerShell Script Monitor to execute scripts on target nodes without having to configure WinRM to
support remote PowerShell execution.
Depending on how it's used, PowerShell can make your deployment vulnerable to unauthorized
access. For details, see Use PowerShell in SAM.
To summarize:
l With agentless polling, scripts run on the Main Polling Engine or an APE. Target nodes must be
set up to accept remote commands.
l With SolarWinds Platform agent polling, scripts can run directly on target nodes.
Many application monitor templates and application monitors include a Preferred Polling Method
option in Advanced settings, as shown here:
l Monitor Linux systems reliably over WAN, satellite, and VPN connections.
l Use SAM to clearly classify Linux operating systems by distribution in the node tree.
l Use the Real Time Process Explorer to identify and monitor processes easily and terminate
them remotely.
l Deploy the SolarWinds Platform agent for Linux multiple ways: adding a node, mass deployment
when managing agents, command line, or from a repository.
To effectively monitor Linux/Unix systems with the SolarWinds Platform agent for Linux, additional
configuration may be required, as described in:
l Configure Linux/Unix systems for the SolarWinds Platform agent for Linux
l Configure SNMP for SolarWinds Platform agents on Linux/Unix and AIX systems in SAM
l SolarWinds Platform agent requirements.
The following templates support the SolarWinds Platform Agent for Windows:
l Active Directory templates (all)
l Apache (Windows)
l APC PowerChute Agent (Windows)
l AppInsight for Active Directory
l AppInsight for Exchange
l AppInsight for IIS
l AppInsight for SQL
l BlackBerry Enterprise Server 10 Services (Windows)
l BlackBerry Enterprise Server 12 Services (Windows)
l Citrix XenApp and XenDesktop 7.x (Advanced)
l Citrix XenApp and XenDesktop 7.x (Events)
l Citrix XenApp and XenDesktop 7.x (Performance Counters)
l Citrix XenApp and XenDesktop 7.x (Services)
l Errors in Application Event Log
l Exchange templates (all)
l GoodLink Server for Microsoft Exchange
l Helix Universal Media Server (Windows)
The following templates support the SolarWinds Platform Agent for Linux:
l Apache
l CUPS
l GlassFish (JMX)
l IBM DB2
l IBM WebSphere (JMX)
l JBoss (JMX)
l Linux CPU Monitoring Perl
l Linux Disk Monitoring Perl
l Linux Memory Monitoring Perl
l MySQL (5.7.9 or later) for Linux/Unix
l MySQL (5.7.8 or earlier) for Linux/Unix
l MySQL 8.0 Metrics for Linux/Unix
l MySQL 8.0 Service Availability on Linux/Unix
l Nagios Linux File & Directory Count Script
l Oracle Database
l Oracle WebLogic (JMX)
l PostgreSQL
l Squid (Linux and Unix)
l Tomcat Server
Make sure target systems are configured to support the SolarWinds Platform agent for Linux.
The following templates support the SolarWinds Platform Agent for AIX:
l AIX template
l AIX LPD template
l Nagios Linux File & Directory Count Script
l WMI Monitor
See also Comparison of Windows agent versus agentless, using SNMP or WMI.
The following component monitors support the SolarWinds Platform Agent for Linux:
l Directory Size Monitor
l DNS User Experience Monitor
l File Age Monitor
l File Change Monitor
l File Count Monitor
l File Existence Monitor
l File Size Monitor
l HTTP User Experience Monitor
l HTTPS User Experience Monitor
l JMX Monitor
l Linux/Unix Script Monitor
l Nagios Script Monitor
l ODBC User Experience Monitor
l Oracle User Experience Monitor
l Process Monitor
l SNMP Monitor
l SOAP Monitor
l TCP Port Monitor
l Tomcat Server Monitor
Make sure target systems are configured to support the SolarWinds Platform agent for Linux.
The following component monitors support the SolarWinds Platform Agent for AIX:
l Directory Size Monitor
l DNS User Experience Monitor
l File Age Monitor
l File Change Monitor
l File Count Monitor
l File Existence Monitor
l File Size Monitor
l HTTP Monitor
l HTTPS Monitor
l JMX Monitor
l Linux/Unix Script Monitor
l Nagios Script Monitor
l ODBC User Experience Monitor
l Oracle User Experience Monitor
l Process Monitor
l SOAP Monitor
l SNMP Monitor
This topic describes how to set up SNMP on Linux/Unix and AIX systems that use SolarWinds
Platform agents for:
l Automated Discovery,
l Polling by SNMP component monitors,
l Hardware health monitoring, and
l Asset Inventory monitoring.
In addition to an overview about Discovery, this topic describes tasks you may need to perform,
depending on the environment, including:
l Install SNMP daemons on Linux/Unix systems
l Configure SNMPv3 on Linux/Unix systems
l Enable SNMP daemons on AIX systems
Note that if an snmpd.conf file changes (for example, to adjust access policies), the SolarWinds
Platform will block future updates to the file. That functionality protects any changes to the file, but it
also impacts how the SolarWinds Platform interacts with a target system in the future.
For example, suppose a Linux system is initially configured for agentless SNMP polling, but then you
decide to collect Asset Inventory or Hardware Health from the node with an SolarWinds Platform
agent. SNMP polling continues but the SolarWinds Platform agent will not function.
To resolve that issue, manually edit the snmpd.conf file to add a read-only community string.
To install the snmpd daemon, use one of these commands, depending on your distribution type.
l For Ubuntu: sudo apt-get -y install snmpd
l For Red Hat/CentOS: yum -y install net-snmp
l For SUSE: zypper -y install net-snmp
If automated configuration still fails, try setting up the daemon manually. The following steps assume
the target system is already configured to support SolarWinds Platform agents.
1. Install the SNMP daemon on the target system. Steps vary by Linux/Unix distribution type.
2. For SNMPv1 or SNMPv2c, add a read-only community string to the snmpd.conf file.
3. In the SolarWinds Platform Web Console, navigate to the Node Details page and click Edit Node.
Under Polling Method, the "Windows and Unix/Linux Servers: Agent" option should be selected.
4. Switch to the UNIX/LINUX tab and select Include SNMP Credentials.
5. For SNMPv1 or SNMPv2c, add the Community String from step 2, as shown here.
For SNMPv3, add credentials and specify authentication and encryption options.
6. Click Submit.
7. On the target system, restart the SNMP daemon.
To enable snpmd logging, start the daemon with parameters for maximum file size and debug
level that vary based on snmpd version and Linux distribution. See your Linux/Unix
documentation for details.
If the SolarWinds Platform detects that SNMPv3 is already configured for a node, it won't modify the
existing SolarWinds Platform configuration automatically. You'll need to edit it manually, as described
next.
1. Navigate to the Node Details page and click Edit Node. Under Polling Method, the "Windows and
Unix/Linux Servers: Agent" option should already be selected.
2. Switch to the UNIX/LINUX tab and select the Include SNMP Credentials option.
3. Select SNMPv3 as the SNMP Version.
The proprietary IBM daemon does not support some key MIBs that expose details such as
processes and resource consumption. Consider using NET-SNMP for AIX, available at
www.net-snmp.org, as described in How to configure SNMP on Linux and Unix.
Learn more
As with other features shared by multiple SolarWinds Platform modules, you can learn more about
SolarWinds Platform agents in the SolarWinds Platform Administrator Guide, including:
l SolarWinds Platform agent requirements
l Configure Linux/Unix systems for the SolarWinds Platform agent for Linux
l Credentials and privileges used on Linux/Unix-based computers
l SNMP credentials for the SolarWinds Platform
l Deploy an agent manually to a Linux/Unix-based computer
l How to configure SNMP on Linux and Unix
l Poll SNMP information with an agent
See also:
l Installing the SolarWinds Platform Agent (video)
l Linux/AIX monitoring agent vs SNMP (THWACK)
l Linux Agent Deployment forum (THWACK)
l SolarWinds Platform AIX Agent for IBM Power Systems (THWACK)
l SNMPv3 configuration and troubleshooting in SolarWinds Platform (Success Center)
l SNMPv3 prerequisites and checks (Success Center)
AppStack automatically gathers information about objects in your environment, as well as their
respective relationships, and displays them in a customizable view. Some relationships, such as
groups and dependencies, can be customized.
To access AppStack, click My Dashboards > Home > Environment. Adjust the view with filter options
and filter properties that you can save and reuse as layouts to display specific views of the AppStack.
Hover over an item to display related data and status in a tooltip. Click an item to drill down and
determine how it relates to other items in your environment. See AppStack data overview to
understand icons for at-a-glance monitoring.
The next section describes how to use AppStack as a troubleshooting tool. To further understand and
customize the AppStack Environment, see:
l AppStack Environment categories and data
l Customize the AppStack view in SAM
l Use filters for AppStack
l Create an AppStack layout in SAM
l AppStack data overview
For example, the illustration below displays all objects in the current environment. The application,
MSSQLSERVER, is in a Critical state, as indicated by its icon. To see what this application is related to,
click the MSSQLSERVER icon.
As you select objects in AppStack, the system automatically updates the view to highlight related
objects. Here, MSSQLSERVER is selected so any related objects are highlighted.
To hide unrelated objects in the view, click Spotlight in the menu bar. You can also select an individual
object and click Spotlight to hide it.
To navigate to the Details page for a selected object, click the icon of the selected object next to the
chart at top or double-click the larger icon in the main view. You can review and managed the critical
and warning issues per node.
To help you better understand how this visualization of your environment can be used for
troubleshooting, the following analogy was designed to provide you with a simple, high-level overview
of how AppStack processes and displays information.
Now imagine you're sick and cannot work for two weeks. Certain employees in various departments
are affected by your absence. Others are not be affected. The illustration below highlights the
employees who are affected by your absence by fading those who are not affected.
Focusing on only the people who are affected by your absence can be beneficial from a task
management perspective. Therefore, completely hiding those not affected by your absence gives a
clean and concise view, displaying only the necessary information.
Now, instead of employees, imagine this is about your entire IT environment. The goal of the
AppStack Environment view is to help you quickly assess the impact a given object has on its related
objects. This relational view is the AppStack Environment view found in the SolarWinds Platform Web
Console.
The AppStack Environment view, shown below, displays the status of individual objects in your IT
environment through the SolarWinds Platform Web Console. Objects are categorized and ordered
from left to right, with the worst status being shown on the left side of the view.
Clicking an object shows everything related to that object by fading unrelated objects, as shown:
Clicking Spotlight removes the faded, unrelated objects from the view entirely.
Click the selected object at the top, or double-click it in the view to open the Details view for that
object for further investigation.
If your environment includes both SAM and SolarWinds Data Performance Analyzer (DPA), you
can use the DPA Integration Module (DPAIM) to visualize DPA data in AppStack. To learn more,
see Use the DPA Integration Module with SAM.
l Virtual Clusters
l Virtual Data Centers
l Virtual Centers
l Volumes
l API Pollers
Other SolarWinds Platform products offer more categories. For example, if your deployment
includes SolarWinds Web Performance Monitor (WPM), Transactions and Steps categories
also appear.
Category Status Summary indicators along the right side of page parse, enumerate, and display the
number of objects in each category, emphasizing the status as indicated by the colors.
SD-WAN A centralized
Orchestrators management node that
oversees all its SD-
WAN edges, handling
configuration,
performance
monitoring via API or
SNMP polling, and
enforcement of policies
across the SD-WAN.
A VServer securely
isolates the shared
virtualized data storage
and network, and
appears as a single
dedicated server to its
clients. Each VServer
has a separate
administrator
authentication domain
and can be managed
independently by a
VServer administrator.
This AppStack example provides a sample of categories and multiple nodes in various health states:
Down Red
Critical Pink
Warning Yellow
Unknown Gray
Unreachable Black
Up Green
Other Blue -
External Purple -
You can only filter against statuses actively monitored in the AppStack. For example, if no
objects have a status of Down, the Down status is not available for filtering.
Servers can only provide an Up or Down status. To check CPU, memory, or hardware health status,
hover over the server icon to view the detailed tooltip. The reported status for applications and LUNs
is based on performance thresholds.
The AppStack Environment view offers a parent/child relationship. (Parents can be either servers or
hosts.) This relationship is represented as a mixed icon. The parent is the larger of the two icons that
is hosting the child. For example, the following illustration graphically shows that an application
(child) is Down on a node (parent) that is Up.
Quick links
Use the Quick Links bar at the top of the AppStack to quickly open and close object categories. You
can also show or hide the names of objects with a distressed status.
Expand All
Open all categories to reveal objects in each category. Each category can be individually expanded
and collapsed by clicking [+] and [-] next to the category name.
Collapse All
Close all categories, hiding the objects within each category. Each category can be individually
expanded and collapsed by clicking [+] and [-] next to the category name.
Show/Hide Names
Toggle between showing and hiding the names for each object in a distressed state. If more objects
exist than can be displayed, the category name displays the number of displayed objects followed by
the total number of objects. For example, (87 of 111), meaning only 87 objects of 111 total objects in
this category are being displayed. This provides a numerical summary of your environment.
Click More (located after the last visible object in the category) to display the next 50 objects.
To change the default number of objects shown in each category, click Default Layout > Change
Layout Settings.
Overview bar
The Overview bar summarizes your environment in a compact space. If your view is currently filtered,
the filtered objects display above the Overview bar, as shown.
The doughnut chart in the Overview bar displays the ratio of objects to one another in all possible
states using indicative colored slices. The total number of objects in your environment is also
displayed.
Objects under the Issues header are parsed and enumerated according to status. Objects shown here
are in one of the following distressed states: Down, Critical, Warning, Unknown and Unreachable. An
icon and count only appear if one or more objects is currently in that state.
You may need to log in with an administrator account to perform this action.
You may need to log in with an administrator account to perform this action.
Filter options
By default, every object displays in the AppStack Environment view. To display only objects with a
certain status, filter the view by selecting one or more statuses and then applying the filter. You can
also filter objects based on various properties, as well as keywords.
Statuses only become available for filtering when an object in your environment is in that state.
For example, if no objects have a status of Down, the Down status will not be available when
filtering.
Creating filters
Creating filters using the AppStack filter properties provides more options to refine the content
displayed in the AppStack.
1. Click My Dashboards > Environment, and then click [+] Add Filter Properties.
2. In the pop-up menu, select one or more objects from the Orion Object drop down list.
To create a layout:
1. Create a filter by selecting filter options in the sidebar or selecting filter properties.
2. Apply the filter to update the AppStack.
3. Under the Layout menu, click Save As New Layout. Enter a name and save.
You can modify the layout by making changes to the filter and clicking Save. If you want to save as a
new layout, click Save as New Layout. To remove a layout, select the layout as currently used and
select Delete this Layout.
For example, to create a Layout where only IIS objects in the AppStack Environment view are shown,
add the IIS filter property. Apply the filter and save it as a new layout.
The layout is added to the Layout menu, where you can easily navigate to it. The dot next to a layout in
the menu indicates the layout currently used.
The types of events you can create alerts for vary, depending on the SolarWinds Platform products
installed. For example, in NPM you can create an alert to notify you if a node in a specific location
goes down or if the network response time is too slow. With SAM, you can receive alerts when
application response times lag, or your Exchange mailbox database is almost full.
You can create alerts for any monitored object, and alert against volumes and nodes with most
SolarWinds Platform products. To get started, click Alerts & Activity > Alerts, and then click Manage
Alerts. For details, see Use alerts to monitor your environment with the SolarWinds Platform.
The Real-Time Process Explorer displays processes related to the application and node.
Select a process and click an option at the top of the widget to control polling, use different
credentials, end a process, or start monitoring one.
Windows servers update SNMP statistics every two minutes, and it takes two updates to provide an
accurate calculation.
Change the number in the text box next to the Show All button
Pause polling
End processes
Check the boxes next to the processes you want to end and then click End Process. This
option is only available when the RTPE is using a WMI connection.
Start polling
For Windows-based nodes, change the credentials by clicking Use Different Credentials to open the
credential library dialog box.
Use the Alert Manager to create, edit, delete, enable, or disable alerts. You can access the Alert
Manager from these places:
l Settings page (recommended): Click Settings > All Settings. Under Alerts & Reports, click
Manage Alerts.
l Active Alerts Details page: Click Manage Alerts in the Management widget.
l Node Details view: Click Manage Alerts in the All Alerts this Object Can Trigger widget.
To learn more about alerts, see the SolarWinds Platform Administrator Guide.
Alerts may lag if monitoring hardware health via SNMP. It takes two updates to these statistics
to provide an accurate calculation, so an alert can take up to four minutes to reach its recipient.
To expedite this process, change the protocol to WMI, which updates every five seconds.
Consider adjusting the trigger time to a value greater than two minutes.
Variable Definition
-n ID of a Node (NodeID), which is polled.
-count The number of processes to show.
-sort The criteria used to select top processes, including:
l CPU: Processor time. This is the default value if the command line argument
is not specified.
l PhysicalMemory: Process physical memory.
l VirtualMemory: Process virtual memory.
l DiskIO: Process disk I/O per second.
Example 1
This example returns the top 20 processes with the highest virtual memory consumption running on
the host with node ID 123.
SolarWinds.APM.RealTimeProcessPoller.exe -n=123 -count=20 -sort=VirtualMemory -
timeout=300
Example 2
Example 3
This example uses the Execute an External Program alert action for an alert defined for virtual
memory:
SolarWinds.APM.RealTimeProcessPoller.exe -n=${NodeID} -alertID=${AlertDefID} -
activeObject=${NetObjectID} -sort=VirtualMemory
The Real-Time Event Log Viewer opens with a filterable list of all events and logs.
Enable pop-ups so you can display the Real-Time Event Log Viewer.
After the events of the selected Log Type are collected and appear in the window on the right, you can
filter the results with various criteria.
2. Select Custom Sources from the Event Sources drop-down menu. Select only the sources you
want to keep when the filter is applied, as highlighted:
3. Select the type of messages you want the filter to keep by selecting the Event Level.
After filtering is complete, hide and unhide the filtering pane on the left by clicking either of the two
arrows, highlighted in red:
The display window shows a list of the most recent events. Should any new events occur while this
window is open, a green bar at the top of the window indicates that new events have arrived. Click the
green bar to add these new events to the display window.
The Level column icons correspond to the Event Level icons in the legend of the events pane.
Clicking any message in the display window brings up a message box providing the entire message
along with additional details.
Monitor events
You can monitor selected events from the Real-Time Event Log Viewer by selecting an event and
creating a component monitor:
1. Select an event and click Start Monitoring in the Message Details view.
The Add Component Monitor wizard opens with the selection.
2. Modify the Component Monitor based on the application you selected, following the wizard
steps.
3. After you begin the Component Monitor Wizard, use the option to Disable Keyword Matching.
The Include Events drop-down menu provides options to help you filter results.
Services viewed in the Service Control Manager are polled every 25 seconds using WMI.
Accessed via the Management widget on Node Details views, the Service Control Manager shows all
services on the monitored computer. Hover over the row of any service to display details about it.
l You may need to log in with an administrator account to perform this action.
l Pop-ups must be enabled in your browser to view the Service Control Manager.
l The option may not appear if "Top 10" widgets are hidden.
The Service Control Manager displays services, sorted alphabetically, along with the application
assigned to the service, if it's already being monitored.
Click a row to start, restart, or stop a service. You can also pause polling or provide different
credentials for a service.
The table below shows the default settings for the Service Control Manager:
Service Action Job Timeout Reports the timeout for a service. 3 min
Note the following details about the Windows Scheduled Tasks Monitor:
l It collects data from the Task Scheduler that is native to Windows, but doesn't offer the same
functionality. You can display task details in SAM, but you cannot edit tasks.
l Only tasks in the Task Scheduler Library (also called the root folder) are monitored.
l If using component-based licensing, this feature consumes five licenses per monitored node.
l Windows Scheduled Tasks data appears in AppStack for monitored nodes.
See also:
l Requirements
l Enable the Windows Schedule Tasks Monitor
l What you can do in the widget
l Alerts and reports
l Troubleshooting
Requirements
l Windows nodes with WMI enabled
l Administrator group privileges on the remote computer, unless using the SolarWinds Platform
Agent for Windows
There are several ways to enable Windows Scheduled Tasks monitoring for nodes:
l To enable this feature during automated Discovery, click Define Monitoring Settings on the
Monitoring Settings tab of the Discovery wizard and select the Windows Scheduled Task option
in the Choose What to Monitor part of the wizard.
l To enable this feature when adding an individual node, select Windows Servers: WMI and ICMP
as the Polling Method and then select Windows Scheduled Tasks in the List Resources widget.
l To enable this feature for an existing node, navigate to the Node Details view and click List
Resources in the Management widget. Select the Windows Scheduled Tasks option and click
Submit. If the option does not appear, see Troubleshooting.
If this widget does not appear on the Node Details view as expected, click here.
Click here for a list of status codes that may appear in this widget.
At the bottom of the widget, click Edit Settings to modify the Windows Scheduled Tasks monitor
assigned to the node, which is based on the Windows Scheduled Tasks template.
SAM includes an out-of-the box (OOTB) alert that can notify you about task execution failures, Alert
me when task last run result is non successful. To learn how to use this alert, see Work
with preconfigured alerts in SAM.
Troubleshooting
Why don't I see the Windows Scheduled Tasks option in the List Resources widget for a node? The
Windows Scheduled Tasks option is hidden in the List Resources widget if:
l A node is not configured for WMI polling. See Change the polling method for a node.
l No tasks are scheduled on the target node.
Why don't scheduled tasks appear for a monitored node? Verify that the Windows Scheduled Task
Monitor is enabled for the node. If you receive a "Network path not found" message, check that node
credentials have permission to access the Task Scheduler files location. Make sure the node is Up.
Polling jobs run independently of the Main Polling Engine and any Additional Polling Engines (APEs).
Results are stored locally, and then forwarded to the SolarWinds Platform server via agents.
Note the following details about using SolarWinds Platform Remote Collector with SAM:
l SolarWinds Platform Remote Collector polling is not supported for nodes monitored by
SolarWinds Platform agents; for example, if AppInsight for IIS is assigned to a node.
l In a SolarWinds Network Automation Manager (NAM) deployment that combines SolarWinds
Network Performance Manager (NPM) with SAM, SolarWinds Platform Remote Collectors can
be used for both NAM- and SAM-supported features.
l The following SAM features do not currently support SolarWinds Platform Remote Collector
polling:
o API Poller monitoring
o Container monitoring
o Hardware Health monitoring for UCS or Nutanix devices
o JMX monitoring
l The following component monitors do not currently support SolarWinds Platform Remote
Collector polling:
o JMX Monitor
o NNTP Monitor
To learn more about SolarWinds Platform Remote Collectors, see the Scalability Engine Guidelines.
o Docker Swarm
o Kubernetes (K8s)
o Apache Mesos
l Monitor hardware health for Nutanix clusters, along with child Hyper-V and VMware nodes.
For more details, see Monitor your virtual infrastructure in the SolarWinds Platform Administrator
Guide.
Thinking about moving everything to the cloud? You can deploy SAM and other SolarWinds
Platform products, including the SolarWinds Platform server and SolarWinds Platform data-
base, to a virtual environment. See the SolarWinds Platform Products Installation and Upgrade
Guide to learn about AWS Marketplace, AWS Virtual Private Cloud (VPC), Azure Marketplace,
and Azure Virtual Network (VNet) deployments, as well as multi-tenant scenarios.
To support hybrid environments, the SolarWinds Platform can retrieve data from the AWS EC2 and
Microsoft Azure cloud service platforms to track availability, performance, applications, and more for
instances and VMs. Examples of data gathered include status, storage capacity, and memory usage.
To retrieve status and metric data for monitored clouds (cloud metrics), the SolarWinds Platform
sends API requests to the cloud service. The first 1 million requests per month are free, extra
requests are charged by your cloud provider.
By combining SAM with the cloud infrastructure monitoring capabilities built into the SolarWinds
Platform, you can:
l Manage hybrid environment metrics and status through a single console. Displaying on-
premises, virtual, and cloud systems together helps you compare performance, locate
bottlenecks, and better plan capacity and resource allocation.
l Dynamically monitor cloud instances and VMs to better handle resource churn during
provisioning. Instances and VMs can be removed as needed to support expanding
environments or performance peaks.
l Determine usage trends and troubleshoot issues. Metrics captured over time provide historical
references to track trends for resource consumption (such as CPU spikes and lulls) so you can
determine when those trends become issues.
l Use cloud monitoring data, SolarWinds Platform alerts, and the Performance Analysis
dashboard (PerfStack) to review historical performance and pinpoint when significant usage
changes began to trigger issues.
5. If you plan to use SolarWinds Platform agents, WMI, or SNMP to poll for metrics beyond those
gathered by cloud service APIs (for example, metrics retrieved by SAM application monitors),
configure cloud instances/VMs as managed nodes. See Manage your cloud in the SolarWinds
Platform as a node.
If you exceed recommended cloud monitoring limits and receive a 503 Service Unavailable
error when adding Azure accounts, click here for a workaround.
Similar to tools like Postman, the API Poller feature guides you through building an API poller that can
include one or more API requests. You need to know what each API provider requires in requests (for
example, tokens), but little coding knowledge is needed. This feature can build request URLs for you.
New to REST APIs? Watch Intro to APIs for people who hate to program and API Pollers: When
SNMP Won't Cut It.
For example, you can use Pi-hole to track incoming spam. Navigate to the URL of the host server in a
browser, and log in to see the latest values for DNS Queries Today in the main web interface.
You can access the same data via the Pi-hole API (© 2021 Pi-hole, available at discourse.pi-hole.net/).
After using the host server URL to create and send an API request ###.###.###.##/admin/api.php
in your web browser, the response should include the same values displayed in the Pi-hole web
interface, as shown in this partial example:
{"domains_being_blocked":131941,"dns_queries_today":279430,"ads_blocked_
today":28655,"ads_percentate_today";10.2544805.
To avoid the need to craft code and enter retrieved data in the SolarWinds Platform Web Console
manually, you can add an API poller instead. Besides being easier, you get benefits of the API Poller
feature, including automated polling, data integration within SAM, and alerting.
Here is an example of the initial Pi-Hole request on the API Poller page:
After deciding which values to monitor, save the API poller. When polling occurs, metrics appear in
the SolarWinds Platform Web Console and are saved to the SolarWinds Platform database.
Want to see this example in action? Watch API Pollers: When SNMP Won't Cut It.
Besides ease of use, API pollers provide the following benefits over standard API tools:
l Select only the metrics you care about, such as those needed for troubleshooting.
l Set warning and critical thresholds to trigger alerts in the SolarWinds Platform Web Console.
l Get started quickly with API Poller templates designed for popular APIs, such as Microsoft 365
and Azure.
3. Add your first API poller. Alternatively, assign an out-of-the-box API poller template to an
existing node.
Allow time for API responses — the larger the data set, the longer the response time.
When SAM receives an API response, it parses the JSON payload to glean relevant data, assigns that
data to the monitored node, and displays metrics in several areas of the SolarWinds Platform Web
Console, including:
l Node Details views: The API Poller widget displays the latest metrics being monitored for the
node with their status.
l PerfStack: Navigate directly to a Performance Analysis dashboard from the API Poller widget on
the Node Details view to see historic API metrics.
l SolarWinds Platform Maps: Click a node with an assigned API poller to display monitored
metrics.
You can use the API Poller feature to monitor metrics via external REST APIs. Define your API
endpoints, set up any required authentication, pick the metrics you want to monitor, and start
monitoring. Send and received automated API requests to quickly exchange data with APIs offered by
cloud services like Azure or any entity that make its data available via API, including SolarWinds.
SAM also includes predefined API poller templates that you can assign to nodes to monitor Azure,
other SolarWinds products, and more. Check the SAM section of THWACK for the latest templates, as
posted by solarwinds_worldwide_llc and tagged with an API Poller label.
Some cloud services limit the amount of free API requests per month and charge for extra
requests. Check with your provider for details.
1. Select a Method for the request. The default is GET, which retrieves data from an external API.
2. Enter a Request URL.
The URL specifies the location on the external API server where you want to access data, called an
endpoint. For example, the SolarWinds Platform SDK endpoint is
//##.###.##.###:17778/SolarWinds/InformationService/v3/, which includes these
elements:
l ##.###.##.###: The IP address of your SolarWinds Platform server.
l 17778: The HTTPS port for the SolarWinds Platform server.
l /SolarWinds/InformationService/v3/: The path for the SolarWinds Information Service
(SWIS) that provides API data for the SolarWinds Platform.
API URLs are similar to browser URLs that you use every day. For example, if you're an SolarWinds
Platform Administrator logged in to the main SolarWinds Platform server, you can type
https://localhost:17778/Orion/Login.aspx to access the SolarWinds Platform Web Console
Login page. The URL indicates that you have a secure HTTP connection to reach a server over a
specific port and that you're opening a specific form -- the Login page. API requests include much of
the same information.
You can add, edit, or delete API poller credentials on the Manage Credentials page.
The initial request sent from the SolarWinds Platform Web Console to the API does not
consume a license. Only subsequent requests that collect metrics consume licenses. To poll
API metrics, SAM uses the Main Polling Engine or an Additional Polling Engine, depending on
the node configuration.
Data appears in the Response area of the page, which may include Expand ( ) icons you can click to
display more data. A Monitor ( ) icon appears next to values that can be monitored.
A Response status code other than 200 indicates a failed request. Check the URL and settings
to correct them, if necessary, and then try again. Review API documentation again for
requirements. See also Troubleshoot API pollers in SAM.
You can monitor response headers, in addition to responses. For example, the SolarWinds Service
Desk API includes the latest count of active tickets in response headers. Examine the SolarWinds
Service Desk Incidents and Problems template to see how it leverages response headers.
You can also use macros and node-based custom properties in API requests.
When finished, click Save to close the dialog box and return to the API Poller page, where you can
select more values to monitor, if necessary.
The status of a value appears as Unknown until the first successful poll occurs. It's also
possible that the monitored value is not licensed (for example, if your SAM license expired or
no SAM licenses are available).
Open the following ports on the Main Polling Engine and any Additional Polling Engines (APEs).
l 38010: The SolarWinds Platform API Poller Service utilizes this default port, as referenced in the
following files:
o $(Orion.InstallDirectory)\SolarWinds.Orion.ApiPoller\SolarWinds.Orion.ApiPoller.Business
Layer.dll.config
o $(Orion.WebDirectory)\SolarWinds\api2\bin\SolarWinds.Orion.ApiPoller.WebApi.dll.confi
g,
where Orion.WebDirectory is usually C:\Inetpub\SolarWinds.
l 38008: If API pollers use credentials created on the Manage Credentials page, open this port.
See Useful APIs for SAM for documentation links from SolarWinds and other API providers.
Node-based
If you have a node-based SAM license:
l Each node with at least one API-monitored metric counts as a managed SAM node.
l A SAM node can host multiple API pollers.
l Regardless of how many metrics are consumed by API pollers, you can monitor an unlimited
number of component monitors if using node-based licensing.
For example, with a node-based SAM10 license, you can monitor API metrics up on up to 10 nodes
with either:
l Monitor 100 values with 1 API poller on 1 node, or
l Monitor 50 values with 2 API pollers on 1 node, or
l Diversify license consumption, as follows:
o Monitor 10 values with 1 API poller on 3 nodes,
Component-based
If you have a component-based SAM license:
l The number of monitored API metrics does not impact the available number of licenses that can
be consumed by SAM application monitors and component monitors.
l The number of allowed monitored metrics depends on how your component-based license
maps to an equivalent node-based license, as detailed next. For example, you can monitor up to
500 API metrics with an AL700 license.
SAM400* 4000
* Additional node-based SAM license tiers are available, up to SAM5000 and beyond.
Both
For both license types:
l Only API metrics monitored for licensed SAM nodes appear in the API Poller widget on the Node
Details page. For unlicensed nodes, API pollers display an Unknown status.
l When adding an API poller, the initial request to contact the external API is sent from the
SolarWinds Platform Web Console, not a polling engine. Until you select at least one metric to
monitor for an API poller, no license is consumed.
l API pollers stop updating metrics in the SolarWinds Platform Web Console if your SAM license
expires. The status of API pollers on the Node Details page changes to Unknown.
You can also use SolarWinds AppOptics to collect metrics via REST API calls.
API methods
When creating an API poller, your first step is selecting one of the following methods for the request.
l GET sends a request for data from a URL.
l POST creates a new record.
Similar to how you need different rights to perform various tasks in most applications, you need rights
to use different methods against an external API and get a successful response. For example, to use
a GET request to retrieve data from the SolarWinds Platform SDK, no extra rights are required other
than the SolarWinds Platform account credentials included in the parent request. However, to send a
POST request that creates a new record, you typically require extra rights. For example, to use a
POST request that adds a node to the SolarWinds Platform database, your SolarWinds Platform
account must have Node Management rights.
Here is an example of a GET request sent to the SolarWinds Platform API, asking for the names of
three polling engines from a specific database table:
GET
https://localhost:17778/SolarWinds/InformationService/v3/Json/Query?query=SEL
ECT+Uri+FROM+Orion.Pollers+ORDER+BY+PollerID+WITH+ROWS+1+TO+3+WITH+TOTALROWS
When this query is packaged with the rest of the data provided on the API Poller page, including
authorization and headers, the entire request looks like the following:
GET
https://localhost:17778/SolarWinds/InformationService/v3/Json/Query?query=SEL
ECT+Uri+FROM+Orion.Pollers+ORDER+BY+PollerID+WITH+ROWS+1+TO+3+WITH+TOTALROWS
HTTP/1.1
Authorization: Basic YWRtaW46
User-Agent: curl/7.20.0 (i386-pc-win32) libcurl/7.20.0 OpenSSL/0.9.8l
zlib/1.2.3
Host: localhost:17778
Accept: */*
For additional query examples, see REST in the SolarWinds Platform SDK wiki.
POST requests usually require authentication by the external API. For example, you can use standard
SolarWinds Platform account credentials to send GET requests that retrieve data from the SolarWinds
Platform API (perhaps to retrieve a list of available nodes), but you need Node Management rights for
the SolarWinds Platform to send a POST request (for example, to add a node), as defined on the
Manage Accounts page.
POST requests supply additional data to the target in the message body, not the URL.
Credentials, if configured for an API poller, are sent in a separate Header file.
You can chain multiple API requests to save a value from one request for use in subsequent
requests, including authorization and authentication data. This is useful for APIs that involve
tokens, sessions, or endpoint discovery.
Review API documentation to determine what's required in requests. For example, requests sent to
the SolarWinds Loggly API require an access token before a response is returned; the API uses the
token to authenticate your identity. Additional tokens are then required to reach specific segments of
data in subsequent requests; the API uses those details to verify what you can do to data.
The SolarWinds Pingdom API uses Bearer Token authorization so an API token must be included in
each request, as shown in this example:
API credentials
Depending on the type of authorization used by an API, you may only need to provide basic
credentials: a username and password. Some free APIs don't require any credentials. Sophisticated
APIs, such as the Azure API, require a client ID, client secret, access token URL, and other details.
Check API provider documentation for requirements.
API pollers created from predefined templates often require a scope. For example, the
Microsoft 365 Mobile Device Management API poller template requires OAuth 2.0 Azure
credentials with the following scope:
https://manage.office.com/.default. See the SAM API Poller Template Guide for
details.
For tips on locating Azure credentials such as Tenant IDs, see Find Microsoft Azure
credentials.
Configure credentials
To configure credentials for an API poller, you can either:
l Add a new set of credentials directly on the API poller page,
l Add a new set of credentials on the Manage Credentials page, or
l Use existing credentials, as added on the API poller page or the Manage Credentials page.
Credentials added on the API poller page are sent by HTTP with plain text, instead of HTTPS.
Consider either adding credentials by logging in to the SolarWinds Platform server directly, or
using the Manage Credentials page instead.
API permissions
In addition to credentials, many APIs limit access to data with API-specific permissions; review
API documentation for details. For example, Azure uses role-based access control with a
resource.operation.constraint pattern, as shown in these examples:
l ServiceHealth.Read grants access to read service health information in the Office 365
Management API.
l Reports.Read.All grants access to read usage reports in the Microsoft Graph API.
Work with your organization's Azure Administrator to configure Azure permissions. SolarWinds
Technical Support cannot assist with permission-related issues related to third-party products,
such as Azure, due to variations in customer environments and Program Limitations.
The following figure shows Reports.Read.All permissions configured in Azure for an API poller based
on the Microsoft 365 Teams API poller template:
When configuring Azure permissions, use Application instead of Delegate as the Type for
Microsoft Graph and Office 365 Management APIs. To learn more, see Use the portal to create
an Azure AD application and service principal that can access resources. (Excerpts and
screenshots in this section are attributed to © 2021 Microsoft Corp., available at
docs.microsoft.com, .)
For example, if an API requires tokens, the initial request can retrieve a token that is then passed
along to headers of subsequent API requests to authenticate access to data. The VMware vCenter
Inventory template uses this technique.
To see this functionality in action, watch API Pollers: When SNMP Won't Cut It.
You can save response headers for use as variables in subsequent requests, which can be
helpful if you need to reuse cookies that come from set-cookie headers.
7. When the response appears, click the Monitor ( ) icon next to the value you want to use in
subsequent requests (for example, a token needed to authenticate data).
8. In the next dialog box:
a. For "How should we store this value?" select "Use as a variable in subsequent request.
9. To create another request in the same API poller, click Options ( ) > Duplicate.
When the page displays a set of fields for the new request, you can use the variable defined in
the previous request. In the following example, the variable is added to the URL.
10. Configure the new API request, as necessary, and then save changes. To add a new request to
the existing requests, click Options > Duplicate again.
By default, SAM checks SSL certificates on servers that host REST APIs, but you can disable this
setting, if necessary.
If the SSL certificate validation option is disabled for an API poller, the following default response
appears after each API request: "The underlying connection was closed: Could not establish trust
relationship for the SSL/TLS secure channel."
The API Poller feature does not support monitoring of HP ProLiant servers via the
HP Integrated Lights-Out (iLO) REST API due to a HP known issue, even if this workaround is
applied.
To configure a value for an API poller, you can take either of the following actions:
l Click the Monitor ( ) icon next to a new value you're adding to an API poller.
Options include:
l How should we store this value?
o Keep the default setting, "New monitored value," to save the value as historical, time series
API poller without consuming another license. For example, to capture a user ID and use it
to get more data about a specific account. This is helpful for APIs that require
authentication tokens in headers; the first request retrieves a token that is then passed to
subsequent requests as a variable in headers. See Chain multiple API requests in a single
API poller in SAM for details.
l SolarWinds Platform display name
l Type
o Adjust the default setting, Numeric, if returned values will be in string format (for example,
Up, Down, True, or False). If you select String, additional fields appear where you can
convert expected values to numeric values so you can set thresholds for alerting. For
example, map "True" to 1 and "False" to 2, and then use the numeric values in the
Threshold fields.
l Thresholds. Set warning and critical thresholds for API poller alerts.
Want to learn more about chaining API requests and monitoring string values? Watch
API Pollers: When SNMP Won't Cut It.
API poller
Description
status
Response code from API is 200. All monitored values are within thresholds. OK
API poller was created but no successful API polling has occurred yet. Unknown
No licenses are available, either because SAM is not yet licensed or all licenses were
consumed. See API poller licensing.
At least one monitored value exceeded its warning threshold but no values reached a Warning
critical threshold.
The response from an API request doesn't include a monitored metric. Down
You can display the status of an individual API-monitored metric in the following places:
l Node Details view: The API Poller widget displays the latest monitored metrics with their status,
along with the name of the API poller.
l PerfStack: Navigate directly to PerfStack from the API Poller widget on the Node Details view to
see historic API metric data.
l SolarWinds Platform Maps: Click a node with an assigned API poller to display monitored
metrics.
For an overview about alerts, see Use alerts to monitor your environment with the SolarWinds
Platform.
To display all API pollers in your environment, click Settings > All Settings > Manage API Pollers.
o Assign SolarWinds Platform Web Console display names for returned to metrics.
See the SAM API Poller Template Guide to learn about out-of-the-box templates for Microsoft
365, Azure, SolarWinds, and other APIs.
For tips on locating Azure credentials such as Tenant IDs, see Find Microsoft Azure
credentials.
a. Click New.
b. Click the row for the node where you're adding the API poller.
c. Click Create API Poller.
3. At the top of the API Poller page, select a Method for the request. The default is GET, which
retrieves data from an external API.
For APIs that do not require authentication, skip ahead to step 8 and click Send Request.
If you do not add a name for an API poller, related data will not appear in
Performance Analysis (PerfStack) dashboards.
SAM checks for a valid SSL certificate during API requests, by default. For remote
API servers without valid certificates, disable this option.
You can add API credentials on the Manage Credentials page. For API pollers
created in earlier versions, recreate credentials on the Manage Credentials page
and then edit API pollers to use the new credentials.
g. Click Save.
6. If the API requires specific details in the header (for example, credentials), add them. Click + to
add multiple headers.
Headers are not encrypted; they're stored in the database as plain text.
This initial API request is sent from the web. Afterward, API polling occurs via the Main
Polling Engine (usually the SolarWinds Platform server) or an Additional Polling Engine,
depending on the node configuration.
In the Response pane, a Monitor ( ) icon appears next to each metric you can monitor. Click
Expand ( ) to show additional metrics that can be monitored. The following example shows
that 13 more metrics are available.
A Response status code other than 200 indicates the request failed. Verify API poller
settings, make sure the external API URL is available, and click Send Request again. See
also Troubleshoot API pollers in SAM.
8. For each metric you want to retrieve, click the Monitor ( ) icon to open the following dialog
box.
a. Leave "How should we store this value?" set to "New monitored value" to add only the
current metric.
Select "Use as a variable in subsequent request" to use the value for this API poller only. It
will not be stored in the database or consume a SAM license. This is useful for APIs that
require authentication tokens in headers; the first request retrieves a token that is then
passed to subsequent requests as a variable in headers. See Chain multiple API requests
in a single API poller in SAM for details.
b. Enter an SolarWinds Platform display name for the metric.
c. For Type, the default value is Numeric. If necessary, change it to String and then use the
extra fields that appear to map string values to numeric values. For example, map "True"
to 1 and "False" to 2. See API poller alerts for details.
d. (Optional) Set Warning and/or Critical threshold values. See API poller alerts for details.
e. Click Save.
9. When finished selecting and configuring values to monitor, click Save to finish creating the
API poller.
If errors occur when saving an API poller, review OrionWeb.Log and ApolloWebApi.log files.
When you return to the Node Details view, wait 2 minutes for polling to occur. When monitored
metrics appear in the API Poller widget, you can:
l Click the title of a metric display only data for that metric in PerfStack.
l Click an API poller name to display all collected metrics in PerfStack.
For API pollers created in earlier versions of SAM, add related credentials on the Manage
Credentials page and then edit API pollers to use the new credentials.
Credentials added on the API poller page are sent by HTTP with plain text, instead of
HTTPS. SolarWinds recommends adding credentials on the new Manage Credentials
page instead and then assign credentials on the API poller page. Alternatively, access the
API poller page directly from the SolarWinds Platform server to add credentials.
l Select existing credentials added for a different API poller that accesses the same API.
If you assign multiple API poller templates of the same type (for example, four Azure templates)
to a node, the resulting API pollers can share the same credentials. If you assign different types
of templates (for example, one Azure template and one Pingdom template), you'll need to
configure separate credentials for each poller.
If your organization hosts applications that you want to access via API, some applications must be
configured to allow access to data for API calls. For example, if your organization uses Azure
applications accessed via the Microsoft Graph API, you may need to consult with your Azure
Administrator to obtain credentials with the proper scope and permissions to the API, such as
Group.Read.All and Directory.Read.All.
For tips on locating Azure credentials such as Tenant IDs, see Find Microsoft Azure
credentials.
Configure credentials
To configure credentials for an API poller:
1. When adding a new API poller, click Configure on the API poller page.
2. In the API Poller settings dialog box, click New credential.
3. Add a name for the set of credentials and fill out the remaining fields.
4. Click Save.
Templates are available for various vendor and product APIs, such as:
l Atlassian
l GitHub
l Microsoft 365 (formerly "Microsoft Office 365")
l Microsoft Azure
l ServiceNow
l SolarWinds AppOptics, SolarWinds Pingdom, and SolarWinds Service Desk
l VMware vCenter
To apply one or more templates to a node, use the Assign API Pollers wizard, accessible via the
Management widget on Node Details pages.
More templates are available in the SAM Content Exchange on THWACK, as posted by
solarwinds_worldwide_llc and tagged with an API Poller label. See this example. After
you download a template from THWACK, import it into SAM on the Manage API Pollers page
and then use the Assign API Pollers wizard to create an API poller for a node.
The wizard displays available templates along with details such as version and the default
number of consumed metrics, which impacts license usage. After you assign a template to a
If you assign multiple templates of the same type (for example, four Azure templates), they can
share credentials. If you assign different types of templates (for example, one Azure template
and one Pingdom template), you'll need to configure separate credentials before sending API
requests.
5. After the API poller is applied to the node, click the API Poller template link.
The new API poller appears, along with a list of monitored metrics.
6. (Optional) Click Configure to edit the Name or Description of the template. You can also adjust
SSL, proxy, polling interval, and credential settings.
7. Use the Edit ( ) and Delete ( ) icons to modify monitored values, as necessary.
After the next poll occurs (every 2 minutes, by default), metrics appear in the API Poller widget on the
Node Details view where you can:
l Hover over a monitored metric to display details about it or display its parent API poller,
l Edit or delete monitored metrics,
l Click a metric to display related data in PerfStack, or
l Display metrics in SolarWinds Platform Maps that include the node.
l Click the Edit ( ) icon at the top of the page to change the API poller name.
l Click Configure to change the Name, Description, SSL option, Authorization type, or
credentials.
l You can add, edit, or delete API poller credentials on the Manage Credentials page.
l Click Options ( ) to duplicate a request (for example, if chaining multiple requests),
change the order of requests displayed on the page, or delete a request.
l Click Expand ( ) or Collapse ( ) to adjust the amount of details displayed for a request.
4. Click Save.
On the Manage API Pollers page, you can also reassign API pollers to a different node.
If a new version of an API poller template is released, replace each existing API poller created from
older versions of the template by:
1. Display the latest API poller template versions in the Assign API Pollers wizard:
SolarWinds recommends using Firefox, Chrome, or Microsoft Edge to run the wizard.
2. Determine the template versions that existing API pollers are based on:
a. Click Settings > All Settings.
b. Under Node & Group Management, click Manage API Pollers.
c. Examine the Template name column on the Manage API Pollers page.
For each outdated API poller, assign the latest template to the node, and delete the original API poller.
3. Click Reassign.
4. In the next dialog box, select a node and click Reassign API Poller.
More templates are available in the SAM Content Exchange on THWACK, as posted by
solarwinds_worldwide_llc and tagged with an API Poller label. For example, see the
GitHub health status API Poller Template. After you download a template from THWACK,
import it into SAM on the Manage API Pollers page, as described here.
3. In the Import API Poller dialog box, click Browse to select a file, and then click Next.
If you need to add a new managed node for the API poller, use the Add Node wizard.
5. Click Create API Poller. The size of the file determines how long it takes to import.
3. (Optional) Delete credentials for an API poller on the Manage Credentials page.
Here is an example of a URL that uses a custom property, cluster_host, to retrieve data about
Nutanix clusters hosted on a node:
https://${cluster_host}:9440/api/nutanix/v2.0/clusters
Note the following details about using macros and custom properties in API request URLs:
l The value of a node macro is unique for each node.
l Supported macros are based on the Node entity in the SolarWinds Information Service (SWIS), a
data access layer in the SolarWinds Platform.
l Wrap each value in the following characters: ${ }. For example, to use the macro that
represents the total amount of memory for a node, include ${TotalMemory} in the request URL.
Use the standard, Latin1 character set. Do not use angle brackets (<, >) as values.
Click here to learn more about custom properties in the SolarWinds Platform Administrator
Guide. See also Creative ways to use custom properties, Custom properties and how to use
them, or this THWACKcamp video (23:03).
The API Poller feature supports the following SolarWinds Platform macros in request URLs:
Macro Description
${AgentPort} Node SNMP port number.
Macro Description
${BufferBgMissToday} Device-dependent count of big buffer misses on node
in current day, queried with MIB 1.3.6.1.4.9.2.1.30.
Macro Description
${ChildStatus} Status of child objects (for example, interfaces or
applications) monitored on a node.
${CustomPollerLastStatisticsPollSuccess} Day, date, and time that node was last successfully
polled.
Macro Description
${GroupStatus} File name of status icon for node and its interfaces.
Macro Description
${LastSystemUpTimePollUtc} Time and date, in UTC format, when node was last
polled for sysUpTime.
Macro Description
${NodeName} Node host name. Defaults to node IP address ${IP_
Address} if host name does not resolve.
${SkippedPollingCycles} The date and time of the last skipped polling cycle.
Macro Description
${Status} Numerical identifier that denotes node status. For
details, see Status Icons and Identifiers.
For example, you can create an API poller to monitor the Nutanix API and check data resiliency by
setting alert thresholds for the number of nodes in monitored Nutanix clusters so you're notified when
changes occur. You can also chain multiple API requests together to drill down into data endpoints
and collect metrics such as cluster Read IOPs.
The following topics describe more ways to use the API Poller feature:
l Use the API Poller feature with the SolarWinds Platform SDK
l Useful APIs for SAM
l API poller use case: Monitor a Nutanix cluster
l API poller use case: Monitor AppOptics services
Use the API Poller feature with the SolarWinds Platform SDK
The SolarWinds Platform SDK is a set of tools, published on GitHub, that you can use to interface with
the SolarWinds Platform API. The API is not specific to any one SolarWinds Platform module; it's the
infrastructure that all of those products run on.
Each time you use an SolarWinds Platform product, you interact with the API -- it's open and waiting
for requests that come from within the products (for example, when you add a node for SAM
monitoring). The API is already running on your Main Polling Engine, as well as any Additional Polling
Engines (APEs) or Additional Web Servers.
SolarWinds provides the SolarWinds Platform SDK as a tool to enhance the flexibility and ease of
manipulating certain aspects of the SolarWinds Platform. The SDK offers direct access to portions of
the SolarWinds Information Service (SWIS) using SQL-like queries in SolarWinds Query Language
(SWQL). It allows for higher-level operations than would be allowed when making changes in SQL,
returning results similar to what SWQL or SWIS tools return.
New to the SolarWinds Platform SDK and API? Read Intro to API, SDK, & SWQL on THWACK, or
watch Orion SDK 101: Intro to PowerShell and the Orion API.
Just as SAM can be used in many ways by different members of an organization, you can use the
SolarWinds Platform SDK for a variety of tasks, depending on what's available in your environment
and how you use the SolarWinds Platform to interact with other systems. In this topic, we'll discuss
how to use the API Poller feature to interact with the SolarWinds Platform SDK.
The SolarWinds Platform SDK is a powerful tool that can impact SolarWinds Platform data.
Users should be well-versed in SQL queries with a background in programming. SolarWinds
does not provide pre- or post-Sales support on any SolarWinds Platform SDK customizations,
including code. Do not run untested PowerShell scripts against a production instance.
See the SolarWinds Platform SDK wiki to learn more about the API. Here are some highlights:
l API requests should include the following details:
o Authentication: Use your SolarWinds Platform account credentials.
o Authorization: Read-only requests don't require extra permissions, but you'll need Node
If you're new to the SolarWinds Platform SDK, the following definitions for basic terms may be helpful:
l Software Development Kit (SDK). An SDK is a set of tools and libraries, provided by vendors,
that allow others to more easily consume their API. You can download the SolarWinds Platform
SDK from GitHub at https://github.com/solarwinds/OrionSDK. It includes documentation, code
samples, and tools like SWQL Studio, a GUI you can use to build custom SWQL queries and
browse through available data.
You don't need to deploy the SolarWinds Platform SDK to use SAM's API Poller feature,
but the included SWQL Studio app may be helpful.
The GitHub site is the main resource for the SolarWinds Platform SDK, where issues are tracked.
If you have questions, post them in the SolarWinds Platform SDK forum on THWACK instead of
contacting SolarWinds Support. That forum is frequented by SolarWinds staff and THWACK
MVPs, as well as other customers that can provide feedback.
l SolarWinds Query Language (SWQL): SWQL (rhymes with "pickle") is a proprietary, read-only
subset of SQL that you can use to query your SolarWinds Platform database for specific
network information. For syntax and query examples, see Use SWQL in the SolarWinds Platform.
l SolarWinds Platform API: In software development terms, an Application Programming
Interface (API) is an access point that allows one piece of software to access another. In a
multi-tier system that is engineered to have its web, polling, reporting, and coordination
communicate via separate layers, an API allows different parts of a system to be developed
independently. The SolarWinds Platform is that type of system (also called N-tier architecture),
and you can use SWQL to read data through the API, as well as add, delete, or update data.
l SolarWinds Information Service (SWIS). The implementation of the API within the SolarWinds
Platform is embodied as a Windows service called SWIS. This service supports communication
between the SolarWinds Platform server, the SolarWinds Platform database, SolarWinds
Platform modules like SAM and NPM, and Additional Polling Engines (APEs). You can also use
SWIS to access the SolarWinds Platform when working with various scripting and programming
technologies.
l CRUD: SWIS supports the ability to Create, Update, and Delete SolarWinds (CRUD) objects so
you can add nodes, add interfaces to nodes, and manage many other processes
programmatically.
New to REST APIs? Watch Intro to APIs for people who hate to program.
Azure API Azure REST API © 2021, Microsoft Corp., available at docs.microsoft.com
Reference
See also:
l Find Azure credentials
l Use the portal to create an Azure AD application and
service principal that can access resources.
Cisco UCS Cisco UCS Manager © 2020, Cisco Systems, Inc., available at cisco.com
Manager XML API
XML API Programmer's Guide
Office 365 Welcome to Office 365 © 2021, Microsoft Corp., available at docs.microsoft.com
APIs Management APIs
SolarWinds Use the DPA REST API Database Performance Analyzer (DPA) offers anomaly
DPA detection powered by machine learning that gets smarter
REST API API details are over time to help identify bottlenecks slowing down your
also available in applications.
the DPA UI.
SolarWinds Use the SWIS API to IP Address Manager (IPAM) provides centralized
IPAM API perform IPAM management and monitoring of IP addresses, subnets, and
operations DHCP/DNS services.
SolarWinds API overview Loggly offers unified log management, monitoring, and
Loggly API analysis across SolarWinds products.
SolarWinds SolarWinds Platform Tap into the infrastructure that all SolarWinds Platform
SolarWinds SDK wiki modules run on. Download and install the SolarWinds
Platform API Platform SDK to access documentation, samples, and tools
that help you leverage the SolarWinds Platform API.
SolarWinds SolarWinds Service Service Desk is a cloud-based, IT help desk solution with
Service Desk Desk REST smart ticket routing, automated workflows, and integrated
API API documentation asset management.
vSphere API VMware API and SDK © 2020, VMware, Inc., www.vmware.com/support/pubs
Documentation
To create an API poller that monitors hardware health for a Nutanix cluster:
1. Navigate to the Node Details view for the Nutanix node that hosts the cluster.
2. In the Management widget, hover over the API Poller link and click Create.
By default, SAM checks for a valid certificate in each API request. For this use case,
we'll disable that option.
b. In the "Configure a value to monitor" dialog box, provide a name for the metric and set the
warning threshold as less than 3.
10. Click Save
Next, drill down into the Response data to find more metrics to monitor. You can add metrics to the
request we just created, or duplicate the original request and edit the metric that's retrieved. For this
use case, duplicate the existing request so you don't have to provide authorization details again.
b. In the "Configure a value to monitor" dialog box, provide a name for the metric and set the
warning threshold to 200.
6. Click Save.
When you return to the Node Details view, the API Poller widget shows the new pollers: one for the
number of nodes in the Nutanix cluster and one for read IOPs. Wait 2 minutes for polling to occur.
After monitored metrics appear, you can see the latest metrics received in the API Poller widget, click
the Performance Analyzer link in the Management widget to display data in PerfStack, or display
metrics in SolarWinds Platform Maps that include the node.
host the remote API URL. For this use case, we created an external node named
appoptics.com that recognizes an application endpoint, AppOptics.
o See AppOptics API documentation to learn about API request requirements, endpoints,
and so on. For example, API requests required Basic Authorization, HTTPS, and an
AppOptics token.
o See the SAM API Poller Template Reference to learn about template requirements and
default metrics.
l Gather AppOptics organization credentials. You'll need them to copy an API token from
AppOptics to SAM. For steps, see Retrieve a SolarWinds Cloud Token to integrate AppOptics
with SAM.
3. SolarWinds recommends using Firefox, Chrome, or Microsoft Edge to use the wizard.
4. On the Choose API Pollers page of the Assign API Pollers wizard, select the SolarWinds
AppOptics Monitored Services template and click Next.
AppOptics API token as the Username, and click Save. No password is required.
c. Add a Credential name.
d. Click Assign Pollers.
6. After you apply the API poller to the node, click the API Poller template link.
7. (Optional) Click Configure to edit settings for the template, such as Name, Description, and
credentials.
8. Use the Edit and Delete icons to modify monitoring for the Average response time metric.
9. When finished, click Save to return to the Node Details view.
When you return to the Node Details view, the API Poller widget shows the new pollers. Wait 2
minutes for polling to occur. After monitored metrics appear, you can see the latest metrics received
in the API Poller widget, click the Performance Analyzer link in the Management widget to display
data in PerfStack, or access metrics from SolarWinds Platform Maps that include the node.
Issue: An "Out of API Poller metrics" message appears after sending an API request.
Each monitored metric counts against your SAM license. The way licenses are consumed depends on
your SAM license model. For details, see API poller licensing
Issue: Error messages appear when you save a new API poller.
When you add an API poller, the Send request is routed to a Website or Additional Website. Make sure
the endpoint is accessible from the URL.
In your web browser, open the developer tools (also called DevTools) and examine the results of the
send request on the Network tab. If errors occur in a header, try removing the header.
If an external API is unstable, you may be able to drill down into the response data to find
exception messages.
Issue: A message similar to the following example appears: "Bad Request: Cannot resolve macro
value for SUBSCRIPTION_ID. It is not defined or has no value."
This message indicates that a macro is not configured correctly. See Use macros and custom
properties to populate API requests in SAM.
Periodically, SolarWinds updates API poller templates, as announced in SAM release notes or on
THWACK. This message appears if an API poller is based on an outdated template. Recreate the
API poller based on the latest template.
Issue: An API poller stopped when the node moved to a different polling engine.
API pollers are not updated when you change a node's polling engine. Edit the API poller and save it
again.
Issue: API poller responses are returned but metrics are not updated in the SolarWinds Platform
Web Console.
The API Poller feature does not currently support XML output.
Run the following PowerShell script on the server that hosts the polling engine:
$uri = "Request-URL"
$method = "Get | Post"
The scripts are not supported under any SolarWinds support program or service. The scripts
are provided AS IS without warranty of any kind. SolarWinds further disclaims all warranties
including, without limitation, any implied warranties of merchantability or of fitness for a
particular purpose. The risk arising out of the use or performance of the scripts and
documentation stays with you. In no event shall SolarWinds or anyone else involved in the
creation, production, or delivery of the scripts be liable for any damages whatsoever (including,
without limitation, damages for loss of business profits, business interruption, loss of business
information, or other pecuniary loss) arising out of the use of or inability to use the scripts or
documentation.
By default, API poller requests timeout in 60 seconds. You can change that value in Advanced
Configuration settings.
4. Paste text into your browser address bar, after /Orion, as shown in this example, and press
Enter.
5. On the Global tab, scroll to RequestTimeout, adjust the default value (60), and then click Save.
6. Restart services.
Polling occurs every two minutes, by default. You can change that interval on the Advanced
Configuration Settings page in the SolarWinds Platform Web Console, accessible by following the
steps above.
Note that the Advanced Configuration Settings page includes two tabs: Global and Server-specific:
l <your production server>/Orion/Admin/AdvancedConfiguration/Global.aspx
l <your production
server>/Orion/Admin/AdvancedConfiguration/ServerSpecific.aspx
Issue: API response is "The underlying connection was closed: Could not establish trust
relationship for the SSL/TLS secure channel."
This response appears if the default SSL certificate verification option was disabled for an API poller.
Issue: When assigning an API poller template to a node, the following message appears: "API poller
cannot be created. Could not load template."
Issue: Pollers based on Microsoft 365 and Azure API Poller templates don't work.
InvalidAuthenticationToken error codes appear and this message: Access token validation failure.
Invalid audience.
Navigate to the API poller and click Configure to check API Settings.
l Verify that OAuth 2.0 is selected as the Authorization type.
l Make sure credentials include a scope to define endpoints. For example, pollers based on the
Microsoft 365 Mobile Device Management API poller template require the following scope:
https://manage.office.com/.default.
l Check permissions.
For example, the Microsoft Azure Active Directory API poller template requires credentials with
these Microsoft Graph permissions:
o Directory.Read.All
o Group.Read.All
o SecurityEvents.Read.All
Issue: A "No connection could be made because the target machine actively refused it" message
appears.
Make sure required ports are enabled. See API poller requirements.
The HP Integrated Lights-Out (iLO) REST API is not supported due to a known HP issue, even if this
workaround is applied (©2021 HP Enterprise Development LP, available at support.hpe.com).
Need to get started quickly? Watch this video, and then assign a template to a node to create
an individual application monitor on that node.
1. Click Settings > All Settings > SAM Settings, and then click Manage Templates.
2. On the Manage Application Monitor templates page, select a template and click Assign to
Node.
3. On the Create Assigned Application Monitor page, select a node and click Next.
4. Provide credential details, and then test for component results.
5. Click Assign Application Monitors.
You can customize and assign templates to individual nodes, or assign templates to groups of nodes
automatically.
When you assign a template to a node, SAM creates an individual application monitor (also called an
"application") for the node. When the next polling cycle occurs (every five minutes, by default),
component monitors gather data and results appear in the SolarWinds Platform Web Console.
3. Click Manage Templates to open the Manage Application Monitor Templates page.
Want to poll data from remote APIs? The API Poller feature also offers prebuilt templates.
Instead of creating individual application monitors for every server, you can assign a prebuilt template
to multiple node, which creates an individual application monitor on each node. The template can
either be one included with SAM, or a custom template you make yourself. For example, you can
assign the Active Directory 2016 Services and Counters template to domain controllers to begin
monitoring services and counters immediately.
A template is only a blueprint and does not perform any monitoring on its own. You must assign a
template to a node that represents a physical or virtual server before the individual application
monitor and its child component monitors can collect data via polling.
AppInsight templates are specialized templates designed for in-depth monitoring of Microsoft Active
Directory, Exchange, IIS, and SQL. In addition to monitoring virtually every aspect of these key
business tools at the server level, you can drill down into the datastore layer for performance data. For
details, see Monitor with AppInsight applications.
Component monitors
Component monitors are the building blocks of SAM. Each monitors the status and performance of a
different aspect of an application. There are several types of component monitors, each containing
settings that define what is monitored and how to monitor it. Some have prerequisites, configuration,
and credentials requirements for target systems. Click here for a list of available component
monitors.
For some component monitors, you can set thresholds on the monitored values to indicate warning
and critical conditions. For example, to monitor the percentage of free space remaining on a volume,
you can set a warning threshold at 15% and a critical condition at 5%, and then configure alerts to
notify key staff if monitored values exceed set thresholds.
As an analogy, pretend SAM is monitoring a car. You can configure a variety of component monitors
to check tire pressure, water temperature, battery voltage, and other important subsystems, and then
set up alerts to be notified if the water gets too hot or the battery voltage drops too low. To monitor a
fleet of 50 Honda vehicles, you can create a Honda template with the necessary component monitors
for all cars, and then assign the template to all cars at the same time.
The difference between an assigned application monitor and a template is that the template is only a
blueprint and does not perform any monitoring on its own. Only after assigning the template to a
server node does SAM begin any actual monitoring on the node.
To continue the car analogy, you can assign the Honda template to each car to create individual
application monitors. Collectively, the application monitors can provide the overall status for your
entire Honda fleet. For example, the fleet may be 95% available at a given time due to warnings for
some of the cars.
The following diagram shows an example workflow for assigning application monitors:
You can override the template settings at any time by disabling the Inherit From Template option for
an individual application monitor, which breaks the inheritance relationship between the component
monitor and its template. For example, credentials usually differ for each node so you can select a
different credential for each assigned application monitor, thus overriding the template setting for the
Credentials field.
To restore the inheritance relationship between a component monitor and its template, click Inherit
From Template next to the setting.
Continuing the car analogy, when you assign the Honda template to a Honda vehicle, component
monitors and settings from the parent template automatically appear in the individual application
monitor for that vehicle. If you have a Honda with battery problems, you can customize thresholds for
the component monitor to check battery voltage and be notified about fluctuations.
Note the following details about application monitor templates, application monitors, and component
monitors:
l Many templates, application monitors, and component monitors can use SolarWinds Platform
agents to collect data from target servers.
l To learn about prerequisites and port requirements for predefined templates, see the SAM
Application Monitor Template Reference.
l (Recommended) Check THWACK periodically for application monitor template updates that you
can download and import into SAM. Only AppInsight templates are updated automatically
during upgrades, to avoid overwriting custom changes made to other templates.
Learn more
See also:
l About the template and application monitor relationship
l Manage SAM application monitor templates and application monitors
l Work with SAM component monitors
l Manage application monitor thresholds in SAM
l Use PowerShell in SAM templates, application monitors, and component monitors
l Example tasks for SAM application monitors
If you change a configuration setting or component monitor at the template level, all application
monitors based on that template are affected. For example, if you adjust a threshold for a component
monitor, that change is applied to the same component monitor in all application monitors based on
the template.
This inheritance relationship helps you make bulk changes quickly. Rather than change one item in
100 application monitors based on a single template (requiring 100 changes), you can make the
change once in the template and that change is inherited by all child application monitors.
If you go one level deeper and edit a component monitor in an application monitor, the change only
impacts the application monitor, not the original template. If you change thresholds at the component
monitor level, only thresholds of the individual component monitor are affected. Thresholds on the
parent template, or other application monitors based on the parent template, are not impacted.
Note that many application monitors include an Override Template option for various settings so you
can block the inheritance of settings from the original template. Any future changes to a component
setting made at the template level will not affect that node's component setting for that application.
l AppInsight templates are addressed in a different section, Monitor with AppInsight applications,
which includes Best practices for AppInsight for Active Directory.
l SolarWinds recommends checking THWACK periodically for updates to predefined SAM
templates. Except for AppInsight templates, templates are not updated automatically during
upgrades to avoid overwriting custom changes made to templates. For details, see Import and
export SAM application monitor templates.
If the polling rate reaches or exceeds 85% of the maximum polling rate for a single polling engine, the
following message appears in the SolarWinds Platform Web Console and polling intervals are
automatically adjusted to decrease the polling rate.
Poller Status Warning: A poller is either approaching or in excess of its
polling rate limit.
To determine when to adjust polling rates and notify users, the SolarWinds Platform products uses an
internal calculation that includes both the number of network objects polled and the configured
polling interval, along with the general assumption that 10,000 component monitors are running at
default polling intervals.
With this data, the SolarWinds Platform establishes two polling rate thresholds:
l A polling warning level, and
l A maximum polling limit level.
Due to how the SolarWinds Platform calibrates polling dynamically, you don't need to compensate for
performance issues by manually setting polling rates higher than required to ensure that data is
polled frequently. The SolarWinds Platform adjusts rates automatically to ensure that all polling jobs
are completed. If the polling rate exceeds what the server can handle, polling intervals are increased
to handle the higher load.
Altering the polling rate or the number of components polled by a polling engine is the primary way to
reduce the polling load on the server. Although the SolarWinds Platform may compensate for a
heavily populated installation by increasing the polling interval on the back end, SolarWinds
recommends staying under the polling limit to avoid compounding issues with your installation.
WinRM fallback can negatively impact polling times. Make sure this feature is properly
configured or disable it on specific nodes, as necessary. Otherwise, SAM will attempt to
use WinRM during all future polling cycles and fallback will continue until the
configuration is updated. See Configure WinRM polling in SAM 2024.4.1 and earlier.
l You can disable fallback methods if you know they aren't relevant for certain component
monitors in your environment, or you know they will fail. In addition to saving time, adjusting
fallback methods can reduce polling loads and improve overall performance, especially in large
environments. See Use the Fetching Method Skip Fallback option for component monitors. If
the selected protocol fails, no fallback occurs.
l For low-priority nodes, consider extending polling intervals or stopping polling entirely.
l Examine SAM application monitor templates and individual application monitors to determine if
any component monitors can be disabled. See also:
o Determine how many SAM component monitors are assigned per polling engine, and
o Best practices for AppInsight for Active Directory.
l Consider how often you need to poll hardware health statistics. The default polling rate is every
10 minutes but you may decide to extend intervals for some nodes. Asset Inventory polling
occurs daily but can also be adjusted.
l For AppInsight for SQL, increase the number of open SQL connections on polling engines for
large databases instances.
l Many SolarWinds Platform statistics use the term "elements" which typically refers to
managed nodes, interfaces, or volumes. For SAM, polling statistics are usually expressed
as "components," a reference to component monitors within SAM application monitors
that gather specific metrics for applications, processes, and so on. To learn more, see
Work with SAM component monitors or watch SolarWinds Lab Bits: Common SAM
Template Elements.
Use Active Components data on the Manage Assigned Application Monitors page to troubleshoot
heavy polling loads
Use the new Active Components column on the Manage Assigned Application Monitors page to gain
insight into scalability by determining how many component monitors are polling on behalf of
individual application monitors.
This data can be useful if analyzing heavy polling loads for AppInsight applications, which consume
licenses at a fixed rate in environments with component-based licensing. The following example
shows that a Microsoft IIS application monitor based on the AppInsight for IIS template only
consumes 30 licenses, but 152 component monitors contribute to polling loads.
The difference in Licensed Components and Active Components values is due to the complexity of
AppInsight applications; more component monitors poll for data than are licensed. Each component
monitor that polls for data consumes memory and CPU resources that contributes to polling loads so
the Active Components value may be more useful for large environments that leverage AppInsight.
Determine how many SAM component monitors are assigned per polling engine
4. To investigate a specific issue, click the arrow at the end of the row. Review details that appear
and follow any links provided to resolve the issue.
You can also check logs for SolarWinds Platform agents. See How to gather NPM and SAM agent
diagnostics.
Experiencing high CPU or memory usage? See this Success Center article: Ephemeral Port
Exhaustion On SolarWinds Platform server.
Each monitor has different options to execute scripts, add credentials, set working directories, and
then generate and display returned values as output.
SAM's Component Monitor Library includes the following predefined script monitors:
l Windows PowerShell Monitor
l Windows Script Monitor
l Linux/Unix Script Monitor
l Nagios Script Monitor
To learn about modifying script monitors, or how to write your own scripts, see the SAM Custom
Application Monitor Template Guide.
Disclaimer: Scripts provided outside of the SolarWinds Platform Web Console are not
supported under any SolarWinds support program or service. Scripts are provided AS IS
without warranty of any kind. SolarWinds further disclaims all warranties including, without
limitation, any implied warranties of merchantability or of fitness for a particular purpose. The
risk arising out of the use or performance of the scripts and documentation stays with you. In
no event shall SolarWinds or anyone else involved in the creation, production, or delivery of the
scripts be liable for any damages whatsoever (including, without limitation, damages for loss
of business profits, business interruption, loss of business information, or other pecuniary loss)
arising out of the use of or inability to use the scripts or documentation.
Your organization should internally review and assess to what extent PowerShell is
incorporated into your environment. This is especially important when importing scripts from
third parties, including content posted by other customers in the SolarWinds online IT
community, THWACK. For details, see Use PowerShell in SAM.
Verify that credentials have permission to execute scripts on the SolarWinds Platform server
and target servers. Script monitors may provide fields for credentials, or you may need to
provide credentials in the script code, arguments, or command line. Test the script in SAM prior
to verifying credentials and access. For details, see the SAM Custom Application Monitor
Template Guide.
When adding and configuring script component monitors, test scripts before using them. When
the test completes, SAM registers each returned metric as a numbered output in the SolarWinds
Platform database. You can configure the display of collected metrics and values through the
component monitor. Each script monitor supports up to 10 different outputs.
Until tested, scripts and component monitors return an initial "Unknown" status. After testing,
polling returns accurate application status.
Add comments to describe how the script works and track changes. SolarWinds recommends
using code comments to keep detailed steps and responses in your code. If additional
administrators work in the script monitors, the comments provide context for the code.
<#
For lengthy comments per code section.
#>
In the command line for executing scripts, always add the parameter per value. Do not assume
the position of data in the command dictates the parameter. For example, use -h for hostname.
Create a header in your code to reuse throughout your scripts. The header could include
example code and code comments for:
l A list of exit codes.
l Set variables for return metrics commonly used in your scripts.
l Use code to determine if you are testing code on the SolarWinds Platform server or target
server. For example, the following PowerShell code returns a message identifying if the server is
a test system or the SolarWinds Platform server:
Additionally, you could add a step to save the code to the SolarWinds Platform server if it's not
already there.
Use macros
When using macros, consider assigning them to named variables in your scripts.
In some languages, you need to surround the macro with quotation marks (for example,
“${Node.Caption}”).
The following macros are available for Linux/Unix, Nagios, Windows Script, and PowerShell
script monitors:
l ${USER}
l ${PASSWORD}
l ${PORT}
l ${Node.SysName}
l ${Node.Caption}
l ${Node.DNS} - Use this instead of ${IP}.
l ${Node.ID}
l ${Component.ID}
l ${Component.Name}
l ${Application.Id}
l ${Application.Name}
l ${Application.TemplateId
l ${Threshold.Warning}
l ${Threshold.Critical}
l Node Custom Property Macros ${Node.Custom.CustomPropertyName}
l Application Custom Property Macros ${Application.Custom.CustomPropertyName}
For nodes monitored by SolarWinds Platform agents, use the macros ${Node.SysName} and
${Node.DNS}. The ${IP} may return a loopback IP before polling starts.
Scripts must report their status by exiting with the appropriate exit code, which determines how
the status of the monitor appears in the SolarWinds Platform Web Console.
A script should return an exit code which results in an Up (0), Warning (2), or Critical (3) status.
When an exit code is received, a dynamic evidence table structure is created to support all
further exit codes. If the component only returns Down (1) or Unknown (4) on first use, the
appropriate dynamic evidence table structure is not created appropriately.
l 0 - Up
l 1 - Down
l 2 - Warning
l 3 - Critical
l Any other value - Unknown, for example 4
You can return one of multiple options for exit codes and messages using IF/ELSE or case
statements in scripts.
Using error trapping code such as try/catch blocks help capture and report errors, thus blocks
providing more details about an issue.
Depending on the length of calls and amount of data pulled for a monitor, you may want to
modify the frequency. For script monitors you may need to only run the script once per day or
once per week. For example, to compare MIBs using the SolarWinds MIB Database template,
you may only need to run the comparison once a day or week.
For scripts with lengthy calls for large amounts of data, extend the polling timeout. The default
300 seconds may not be long enough to process scripts. If the call may take longer, especially
during peak times, increase the timeout. For example, for MIB database comparison scripts
using the SolarWinds MIB Database template, multiple files are called, downloaded, and
compared to return status messages and complete specific actions.
When executing script component monitors in a template, SAM affects performance and
latency making calls to a target server. Complete calls for up to 10 metrics per script to reduce
the number of calls, increasing performance. Depending on the size and processing of scripts,
balance scripts and lengthy calls across multiple instances of a script monitor.
See also:
l Manage application monitor thresholds in SAM
l SAM Custom Application Monitor Template Guide
l SAM Application Monitor Template Reference
Create a template
SAM includes two options for creating templates:
l (Recommended) Use the Component Monitor Template Wizard to create component monitors
and add them to a new template. This option adds instances of a component monitor type with
fewer steps to create a template.
l Create a new template and add component monitors manually.
The fastest way to build a template is to use the Component Monitor Wizard, which provides the most
common and popular component monitors per platform. You can use it to add multiple instances of a
selected component monitor to a new or existing template, and then edit the template to add more
component monitors as needed.
For example, you may need to monitor 20 services on servers and run custom PowerShell scripts. Use
the wizard to generate a template with 20 process or service monitors (depending on your use case),
and then add PowerShell script monitors as needed.
When you enter credentials for component monitors, a connection test runs. Depending on the
components, you may need to enter additional server and credentials data.
See Use script component monitors in SAM to learn about PowerShell, Nagios,
Linux/Unix, or Windows scripting in custom templates.
Avoid spaces at the beginning or end of the name. Otherwise, application monitors based
on the template may not appear in widgets.
If you do not want to use the wizard, you can also create a new, empty template and add component
monitors as needed. For example, you may only want to create a template with PowerShell script
monitors to gather data on your systems and applications.
1. Click Settings > All Settings > SAM Settings and select Manage Templates.
2. Click New Template.
3. Add general information and settings for the template including name, description, and tags.
Avoid spaces at the beginning or end of the name. Otherwise, application monitors based
on the template may not appear in widgets.
4. Based on the number of component monitors, set the polling frequency and timeout.
l HTTP component monitor to monitor port 80, the default port for the SolarWinds Platform Web
Console.
To learn more, see the SAM Custom Application Monitor Template Guide.
When creating templates, modify these instructions based on the services you are monitoring:
1. Click Settings > All Settings > SAM Settings > Create New Template.
2. Add general information to the template including a name, description, and tags. Tags are used
for searching or opening lists of templates.
3. Click Add Component Monitor, expand the Network Protocol Component Monitors list, and
select TCP Port Monitor. Click Submit to add.
4. Click Rename and name the TCP port monitor, and click OK.
5. Ensure the Port Number field corresponds to the port used to communicate with the SolarWinds
SQL Server instance. By default, this is port 1433.
6. Click Add Component Monitor, expand the Process and Service Component Monitors, and
check Windows Service Monitor and click Submit.
7. Click Rename, name the SolarWinds Alerting Engine monitor, and click OK.
8. Enter or select the credential set to use when accessing the Windows service information.
9. Enter the name of the SolarWinds Alerting Engine service in the Net Service Name field.
10. Click Add Component Monitor then expand the User Experience Component Monitors list, and
then check HTTP Monitor.
11. Click Rename, name the HTTP port monitor, then click OK.
12. Ensure the Port Number corresponds to the port used for the SolarWinds Platform Web Console,
then click Submit.
1. Click Settings > All Settings > SAM Settings > Manage Templates.
2. Check the template(s) to assign, and click Assign to Node.
3. Specify the node(s) to monitor and click Next.
4. Enter or select the appropriate credentials.
5. Click Assign Application Monitors.
Want to learn how to use SolarWinds Platform groups to automatically assign or remove SAM
templates? Check out the Using Automation to Apply SAM Templates video. See also Group
monitored objects, in the SolarWinds Platform Administrator Guide.
Edit a template
Every template, including default SAM templates, can be modified. You can change the name,
description, general settings, and application monitors. You can also create a copy of a template and
modify the copy.
1. Click Settings > All Settings > Settings > Manage Templates.
Setting a polling frequency below 30 seconds can result in erratic monitor behavior.
4. To add a monitor, click Add Component Monitor. Expand and filter through the options to add
one or more monitors to the template.
5. You can edit one or more monitors, update settings per monitor, and more. See Edit component
monitors in templates and application monitors for details. To review help information per
monitor, use the help option in the SolarWinds Platform Web Console.
6. When done, click Submit to save the changes.
1. Next to Add Component Monitors, click the option button and select Manually add Component
Monitors.
2. In the list of component monitors that appears, select the check box for the monitor you're
adding to the template.
3. (Optional) Click inside the Quantity field and enter a digit to add multiple versions of the same
monitor.
4. Click Add.
5. Modify the configurations and custom settings per monitor, as necessary.
6. When you return to the Edit Template page, expand each component monitor to configure
settings, add scripts, and more.
Click Save and Continue Working as you add and complete component monitors.
Copy a template
You can modify current templates, or create a copy. With copies, you can use a base template from
the default templates, imported templates, or templates you created. Using a copy for a new template
can make the process much faster than starting a new template without pre-filled monitors and
configurations.
The copied templates use the same name of the original name with "- Copy" appended.
If you want to completely modify a current template, use a copy to keep the original.
1. Click Settings > All Settings > SAM Settings > Manage Templates.
2. Select the template you want to copy, and click Copy. A new template is added with the same
component monitors and configured settings, which you can modify, as necessary.
Delete a template
Deleting a template also deletes all of related application monitors assigned to nodes, both modified
and unmodified.
Template-related data is not immediately removed from the SolarWinds Platform database, but
systematically updated every few minutes in the background.
Instead of deleting a template, consider exporting it to a file so you can restore it later, if
necessary.
1. Click Settings > All Settings > SAM Settings > Manage Templates.
2. Check the template(s) to delete and then click Delete.
3. Confirm deletion by clicking Yes.
Tag a template
Tags are descriptive labels that help you classify and sort templates on the Manage Application
Monitor Templates page. Most SAM templates are already tagged with descriptive labels that you can
modify.
1. Click Settings > All Settings > SAM Settings > Manage Templates.
2. Select the templates you want to tag, then click Tags.
3. Click Add existing tag(s) or select the tags from the list.
4. Type the tags, separating multiple tag entries with commas, then click Submit.
To remove tags:
1. Click Settings > All Settings > SAM Settings > Manage Templates.
2. Select the templates you want to tag, then click Tags > Remove Tags.
3. Select the tags from the list, then click Submit.
4. In the Platform to run polling job field, change the value to x64.
5. Click Submit.
1. Click Settings > All Settings > SAM Settings > Manage Templates.
2. Select an AppInsight application and click Edit.
To begin monitoring with a template, you need to assign it to a node. At that point, the template is
considered to be an "application monitor" (sometimes called an "application") that collects and
reports on polling data to the node according to the application monitor's configuration.
The quickest way to assign a template to a node is through the Add New Application Monitors
Wizard. You can also assign them on the Manage Application Monitor Templates page, or by adding a
new node with the Add Node Wizard, as described below.
Add an application monitor to a new node being added to the SolarWinds Platform with
the Add Node Wizard
1. To add a node, click Settings > All Settings > Add Node.
2. Provide details on the Define Node tab, and then click Next.
3. On the Choose Resources tab, select what you want to monitor.
4. On the Add Application Monitors tab, use the Show Only drop-down to select a category of
application monitors and display a list of Component Types.
Scan nodes and assign SAM application monitor templates automatically with the Applic-
ation Discovery Wizard
SAM can scan nodes for you and automatically assign the application monitor templates it deems
suitable for each node. You select the nodes to be scanned, the templates to use, and the parameters
to determine a match.
The Application Discovery Wizard compares applications located on nodes with parameters to
automatically assign templates to nodes, thus creating application monitors.
The Application Discovery Wizard does not work for User Experience (UX) monitors; assign
them to nodes manually instead.
To minimize scan time, limit the number of templates in your first scan. To see more
templates, select a different template group from the Show Only list.
5. Some SAM application monitors require credentials either to access restricted resources, or to
run within the context of a specific user. To scan for these templates, add the necessary
credentials to the list and sort them accordingly. If a template requires credentials, SAM checks
credentials in this list in the order in which they appear. You can add credentials or allow
credentials to inherit from the node's local credentials. Click Next.
Recommended: If domains share user names with different passwords, run a separate
application discovery in each domain.
Credentials are tried several times during a scan. If credentials are incorrect, the account
can become locked after several failures. To avoid potential account lockouts that
affects an SolarWinds Platform user account, consider adding a dedicated service
account to use only for monitoring.
6. Review selected options before scanning. If a specific template is already assigned to a node as
an application monitor, the template is not automatically assigned a second time. To assign a
template again, click "Yes, Assign Anyway" in the "Do you want to assign duplicates" list.
7. Click Start Scan. The scan runs in the background.
8. When a message at the top of the SolarWinds Platform Web Console indicates the scan is
complete, click View results.
You can modify assigned applications monitors on the Manage Application Monitors page. Click
Settings > All Settings > SAM Settings > Manage Application Monitors.
1. Click Settings > All Settings > SAM Settings > Manage Application Monitors.
2. On the Manage Assigned Application Monitors page:
a. Select the application monitor.
b. Click Maintenance Mode.
c. Click Unmanage Now
3. (Optional) Click Schedule to mute related alerts, or set time for scheduled maintenance.
4. To resume polling later data for an application monitor, select it, click Maintenance Mode, and
then click Manage Again. The application monitor status refreshes after the next polling cycle.
1. Click Settings > All Settings > SAM Settings > Manage Application Monitors.
2. Change the Group By drop-down menu to Application Monitor Template.
3. Find the template in the list on the left and select it.
4. Select the nodes you want to delete the Application Monitor from, then click Delete.
After creating a group, you can add nodes to the group so that any templates and application
monitors linked to the group are automatically added to the new nodes. Likewise, if you add a new
template or application monitor to the group, all node members receive the new additions.
Note the following details about assigning templates and application monitors to groups:
l Templates are assigned to selected nodes even if nodes doesn't meet template requirements.
For example, if a template assigned to a group requires a specific OS version such as Windows
Server 2012, it's automatically assigned to all nodes in the group, even if they're running a
different OS.
l Nested groups are not supported.
l AppInsight applications cannot be assigned to groups.
l Application assignment to a group happens in the background and can take some time to be
created depending on the size of the application.
l If an OS-specific template, such as the Apache (Windows) template, is assigned to a group with
Linux nodes, the template is assigned and reports a status of Unknown due to OS mismatch.
l If a node added to the group already has the template assigned to it, no changes occur.
l If a node is part of two groups with shared templates, the node only receives one copy of each
assigned template and application monitors.
l If you delete a group, the assigned templates may remain assigned depending on the Advanced
section configuration. In the Auto Delete Application Monitor option, select Yes to remove the
templates if the group is deleted or nodes are removed from the group.
l You cannot assign credentials to a node and have all templates assigned to the group use those
credentials. Credentials are not associated by group. You can select Inherit Credentials from
Node when using WMI or an agent. The new application created from the template will use
credentials from the node that is assigned to.
See also:
l Create groups (SolarWinds Platform Administrator Guide)
l Assign a SAM application monitor template to groups of nodes
l Remove SAM application monitor templates and application monitors from a group of nodes
Tip: You can use dynamic queries to create groups of nodes, and then assign templates
to groups. Alternatively, use automation scripts that interact with the SolarWinds
Platform SDK.
2. Click Settings > All Settings > SAM Settings > Manage Templates > Application Monitor
Templates.
3. Select one or more templates, and then click Assign to Group.
4. Select a group from the Available Groups column, click the green arrow, and then click Next.
5. (Optional) Expand Advanced options to adjust default assignment and Auto Delete settings.
Allow 5 to 10 minutes for SAM to assign templates to the group of nodes. Complex
AppInsight templates may take longer.
d. On the Group Details page, examine the Application Templates Assigned to Group widget.
Remove SAM application monitor templates and application monitors from a group of
nodes
If you assigned templates and application monitors to a group of nodes, follow these steps if you
need to unassign (that is, remove) them from nodes to stop monitoring.
1. Click Settings > All Settings > SAM Settings > Manage Templates > Application Monitor
Templates.
2. Select the templates and application monitors you want to remove from the group, and then
click the link in the Assigned To column.
3. On the Template Assignments page, click the Group tab and then click Unassign > Yes,
Unassign.
4. Click Close.
Disclaimer: Any custom scripts or other content posted herein are not supported under any
SolarWinds support program or service. The scripts are provided AS IS without warranty of any
kind. SolarWinds further disclaims all warranties including, without limitation, any implied
warranties of merchantability or of fitness for a particular purpose. The risk arising out of the
use or performance of the scripts and documentation stays with you. In no event shall
SolarWinds or anyone else involved in the creation, production, or delivery of the scripts be
liable for any damages whatsoever (including, without limitation, damages for loss of business
profits, business interruption, loss of business information, or other pecuniary loss) arising out
of the use of or inability to use the scripts or documentation.
Watch a THWACK Tuesday Tips video about importing templates from THWACK.
1. Click Settings > All Settings > SAM Settings > Manage Templates.
2. Switch to the Shared Templates on THWACK tab.
3. Locate and select the template you want to import and then click Import.
4. Enter your THWACK credentials, and then click Log In.
5. When the confirmation message appears, click View Imported Templates or Close.
If a template is in a ZIP file on your local drive, extract the file and verify it is in XML format with
the following extension: .apm-template. Otherwise, you'll receive an Invalid File error.
1. Click Settings > All Settings > SAM Settings, and click Manage Templates.
2. Click Import/Export, and click Import.
3. Browse and select the template file from your local drive.
4. Click Submit.
After verifying the file type and format, SAM imports the template.
1. Click Settings > All Settings > SAM Settings > Manage Templates.
2. On the Application Monitor Templates, tab, select the template(s) to export.
3. Click Import/Export > Export to THWACK.
7. On the Upload page, fill out the fields and upload apm-template file.
8. Click Post.
You can also import a template from THWACK and customize it.
Add component With the base component monitors added to a new template, add other
monitors component monitors as needed per application.
Assign a template to a Templates assigned to nodes begin collecting data with the next poll,
node providing specific metrics and data responses based on the component
monitors and configurations. For script monitors, the script collects data
and returns metrics and values according to the code you enter.
For example, you can use the wizard to create a template with 20 process monitors or service
monitors (depending on your use case) for the services. Then you can add more PowerShell script
monitors later.
4. To select a Target server, enter an IP address or browse to an existing node. Provide all required
information and click Next to display a list of available processes, services, and performance
counters for the server.
5. On the Select Component tab, select the services you want to add as component monitors for
the template, and then click Next.
6. On the Edit Properties tab, customize each component monitor by selecting its check box and
clicking [+].
Do not begin or end a Name with a space. Otherwise, application monitors based on the
template may not appear in widgets. Edit the name to remove extra spaces.
8. Assign the template to nodes in your environment according to server type (such as Windows or
VMware).
Expand and select one or more servers where you want to add the template.
9. Review the template and click Submit to save it.
After you create a template, you can add more component monitors, as described next.
1. You have two options for adding component monitors. This scenario uses the Manually Add
Component Monitor option.
l Manually Add Component Monitors allows you to select and add multiple types of
component monitors to the template
l Browse for Component Monitors opens the Component Monitor Wizard to add multiple
instances of a selected component monitor
2. When added, you can modify the configurations and custom settings per monitor.
3. Select a component monitor, use the Quantity field to specify how many copies you want, and
click Add.
4. Expand each component monitor to configure settings, add scripts, and more.
1. Click Settings > All Settings > SAM Settings and click Manage Templates.
2. Check the template(s) to assign, and click Assign to Node.
3. Specify the node(s) to monitor and click Next.
4. Enter or select the appropriate credentials.
5. Click Assign Application Monitors.
For example, to monitor CPU usage, a Critical threshold set at 90% would be typical. After setting
thresholds, you can configure alerts so SAM sends an email when a Critical status threshold is
breached.
If thresholds are set too low, you'll receive frequent alerts. If set too high, problems can occur
without your knowledge.
The SolarWinds Platform includes predefined, general thresholds for most statistics, but you can
override these thresholds and customize them on a per-object basis. For example, global thresholds
exist for Disk Usage and Response statistics for all monitored nodes, but can be updated for specific
nodes.
The following statistics have global thresholds that apply to each node monitored in the SolarWinds
Platform, by default:
l Average CPU load
l Disk Usage
l Percent memory Used
l Percent Packet Loss
l Response Time
Baseline data, as well as Warning and Critical thresholds for application monitors, can also be
gathered and calculated automatically, as described in Adjust threshold settings and apply baseline
data in SAM. The option to enter thresholds manually remains available. In general, you should
monitor applications for several weeks to collect enough data to use as a baseline, and then make an
educated guess about how to set Warning and Critical thresholds for component monitors.
For an overview about SAM application monitor alerts, watch Alerting on an application.
If you change thresholds at the component monitor level, only thresholds of the individual component
monitor are affected. Thresholds on the parent template, or other applications based on that parent
template, are not be affected.
The following screenshots display the multiple display names used in a script for the warning and
critical threshold values.
1. Click Settings > All Settings > SAM Settings > Manage Templates.
2. Select a template and click Edit from the toolbar.
3. Select a component monitor, click [+] to expand the monitor details.
4. Select Use thresholds calculated from baseline data:
Once this box is checked, the Warning and Critical fields automatically populate with the macro,
${USE_BASELINE}. This macro can be used when configuring alerts.
5. Select the options for sustained thresholds, and then click Submit.
You can edit multiple component monitors and their thresholds if the monitors are the same
type and thresholds are available. Multi Edit only become available when the selected
component monitors are the same type, as shown. After you click Multi Edit, select Statistic
Threshold > Use thresholds calculated from baseline data. Edit thresholds, click Save > Submit.
You may need to log in with an administrator account to perform this action.
1. In the SolarWinds Platform Web Console, click My Dashboards > Applications > SAM Summary.
2. From the All Applications widget, expand the tree and then click an application.
3. From the Application Details widget, click Edit Application Monitor.
4. If selecting only one Component Monitor, click [+] to expand the monitor details.
a. Click Override Template.
The current values for the thresholds appear in the Warning and Critical fields.
c. When applied, the values change and a blue icon appears indicating that baseline
thresholds are being used.
5. If selecting more than one component monitor, use the check boxes to select the monitors you
want to edit, and then click Multi-Edit.
a. Click Multi-Edit.
Multi-Edit only becomes available when the selected component monitors are of the
same type.
b. Check the Statistic Threshold check box on the pop-up window, then check the Use
thresholds calculated from baseline data.
Once the second box is checked, the Warning and Critical fields automatically
populate with the macro, ${USE_BASELINE}.
In general, baseline data is calculated on demand; however, seven days of data is the recommended
minimum amount of data needed for baseline calculations to be considered accurate. Baseline data
for macros, such as ${USE_BASELINE}, are automatically calculated during nightly database
maintenance.
After thresholds are calculated and applied to component monitors, the thresholds remain static until
manually re-applied. This is not a moving baseline that is calculated nightly based on the last seven
days of data. A moving baseline would mask data spikes and other anomalies that need to be
highlighted.
Thresholds set manually to meet the needs of your environment may yield more desirable
results.
Macro Description
${USE_ Calculates the currently used baseline in SAM, as used in threshold fields of SAM
BASELINE} component monitors. Recommended baseline values are calculated using the
following formulas:
Warning: ${MEAN} + 2 * ${STD_DEV} (or ${MEAN} - 2 * ${STD_DEV})
Baseline thresholds are not suitable for all metrics. If calculated values do not
meet expectations, consider setting the thresholds manually.
${MEAN} Calculates the Current Mean or Average. You can use this macro with math functions
in threshold fields.
${STD_DEV) Calculates the Standard Deviation. You can use this macro with math functions in
threshold fields.
The value for the Baseline Data Collection Duration field cannot exceed the value defined for
the Detail Statistics Retention field, as displayed at the top of the Data & Database Settings
section.
4. If selecting more than one component monitor, select monitors by checking the boxes next to
their names.
a. Click Multi-Edit.
Multi-Edit is only available if selected component monitors are the same type.
b. Review Statistic Threshold data that on the pop-up window, then check the Use thresholds
calculated from baseline data.
The Use thresholds calculated from baseline data check box is not available until
Statistic Threshold is checked. After Use thresholds calculated from baseline data
is checked, the Warning and Critical fields automatically populate with the macro,
${USE_BASELINE}.
The current values for the thresholds appear in the Warning and Critical fields.
c. When applied, values change and a blue icon indicates that baseline thresholds are used.
5. If selecting more than one component monitor, use the check boxes to select the monitors you
want to edit.
a. Click Multi-Edit.
b. Multi-Edit is only available if selected component monitors are the same type.
c. Check the Statistic Threshold check box on the pop-up window, then check the Use
thresholds calculated from baseline data.
d. Once the second box is checked, the Warning and Critical fields automatically populate
with the macro, ${USE_BASELINE}.
6. Click Save, then click Submit.
4. Make your selections, then click Submit on both the Orion General Thresholds screen and the
Edit Properties screen.
You may need to log in with an administrator account to access this page. Also, note that the
Use Baseline Thresholds option mentioned in the last step does not appear for complex
component monitors, such as some AppInsight for SQL component monitors.
WinRM is the default transport method used to collect data for WMI-based component monitors (for
example, Performance Counter Monitors) from target nodes for SAM templates and application
monitors. A fallback mechanism automatically switches to legacy RPC/DCOM polling, if necessary.
If you're building a new environment with SAM, WinRM application polling is automatically enabled for
the SolarWinds Platform server and WMI component monitors. By default, WinRM application polling
is also applied to any Windows network nodes that you decide to add later, although you still need to
make sure that the SolarWinds Platform server can connect to the nodes.
If upgrading from an earlier version of SAM, see Configure WinRM polling in SAM 2024.4.1 and earlier
to learn how to start leveraging this functionality.
This feature is SAM-specific. It differs from the main polling method selected when adding
nodes to the SolarWinds Platform, that controls how basic metrics such as node status and
packet loss are collected. The WinRM option described here only controls SAM-based polling
for WMI-based component monitors on target nodes that do not use SolarWinds Platform
agents to collect data.
Using WinRM instead of RPC/DCOM for WMI queries can increase SAM's scalability while collecting
the same data with higher reliability and in less time. The following table provides more details about
these methods.
WinRM RPC/DCOM
Protocol Web Services (WS)- RPC is a legacy protocol, originally created for LANs, that
Management is a could be deprecated in the future.
faster protocol
developed for
Windows Server
2012 R2 and the
modern internet.
Firewall Requires a single Requires multiple open ports, starting with TCP Port 135 to
requirements open port: 5985 initiate communication with a server, and then switching to
(HTTP) or 5986 random ports between 1024 and 65535.
(HTTPS).
Execution Runs queries locally Executes queries remotely so the Round-Trip Time (RTT)
on target machines. between SAM and target machines can increase overall
Switches to DCOM if scan times. No fallback mechanism.
WinRM fails.
WinRM RPC/DCOM
Scalability Asynchronous API Multiple application monitors assigned to a node can collect
support means data in parallel, but each component monitor in a single
caller threads can application monitor can only collect data serially. The more
execute other parts application monitors you assign to a single node with WMI-
of code while based component monitors, the more ports may be
waiting for results. consumed and the longer polling may take.
l WinRM is the default fetching method for WMI-based component monitors. SAM automatically
switches to DCOM as a fallback method to collect data if WinRM fails during a polling cycle, and
then works through other methods until polling succeeds.
WinRM fallback can negatively impact polling times. Ensure it is configured properly on
target nodes or consider disabling WinRM on them.
l WinRM application monitor polling is enabled on all Windows network nodes added to the
SolarWinds Platform, by default.
l WinRM is enabled by default on the SolarWinds Platform server. The global SAM WinRM toggle
is enabled on the SolarWinds Platform server.
Use the following procedures to adjust WinRM settings to suit your business needs.
See also Choose a fetching method for Performance Counter Monitors in the SAM Template
Reference.
If target nodes are hosted in a separate domain from the SolarWinds Platform server, adjust
TrustedHost settings on the SolarWinds Platform server.
See Installation and configuration for WinRM for details. Use PowerShell in SAM also describes how
to enable WinRM.
When finished, the target node should include the following elements:
l The WinRM service to receive requests from other IP addresses.
l An SSL certificate to secure data.
l A firewall exception to allow external requests to reach the WinRM service.
l A WinRM Listener to accept external requests.
l You can also use a Group Policy Object (GPO) in Active Directory to configure WinRM
settings.
l If a node is not in the same domain as the SolarWinds Platform server, add it as a trusted
host, as described next.
l See also Set up AppInsight for Active Directory monitoring under the context of a "Least
Privileges" account.
Add target nodes that use WinRM polling as trusted hosts on the SolarWinds Platform
server
To use WinRM polling on target nodes that exist in a different domain than the SolarWinds Platform
server, add them to the WS-Management TrustedHosts list on the SolarWinds Platform server, to
support WinRM communication between the client (the SolarWinds Platform server) and the server
(the target node).
The following steps assume that the SolarWinds Platform server is used as the Main Polling
Engine. In large environments with Additional Polling Engines (APEs), use these steps to create
trust relationships between target nodes and related polling engines.
1. On the SolarWinds Platform server, add each target node as a TrustedHost with this PowerShell
command:
Install-Module psTrustedHosts -Force
If using the method above, you can replace the * wildcard character with a specific
IP address for added security. Use commas to separate multiple IP addresses, if
necessary.
3. Verify the WinRM connection from the SolarWinds Platform server to each target node by
entering:
If the SolarWinds Platform server and a target node have the same credentials, results will look
similar to this example.
Review logs on nodes for the following error. The default log location is:
C:\ProgramData\SolarWinds\Logs\APM\ApplicationLogs.
The following log file contains details about the WinRM configuration process:
C:\ProgramData\Solarwinds\Logs\APM\RunWinRMConfigurator.log
1. In the SolarWinds Platform Web Console, navigate to the relevant Node Details view and click
Edit Node.
2. When the Edit Properties page opens, scroll down and clear the Enable WinRM check box.
3. Click Submit to save your changes.
4. On the Global tab of the Advanced Configuration page, scroll down to APM.WMI.Settings.
5. Clear the WinRemoteManagementforWmiEnabled check box, and then scroll down to click Save.
6. Restart SolarWinds Platform services in the SolarWinds Platform Service Manager, and then
wait a few minutes for changes to occur.
Neither SolarWinds Platform agents nor SolarWinds Platform Remote Collectors respect
centralized settings adjusted on the Advanced Configuration page.
5. On the Global tab of the Advanced Configuration page, scroll down to APM.WMI.Settings.
6. Select the WinRemoteManagementIgnoreCertificateErrors check box, and then scroll down to
click Save.
7. Restart SolarWinds Platform services in the SolarWinds Platform Service Manager, and then
wait a few minutes for changes to occur.
Following are issues you may encounter when using WinRM as the fetching method for WMI-based
polling for SAM application monitor templates, application monitors, and component monitors that do
not use SolarWinds Platform agents to collect data from target nodes.
When WinRM polling fails, a predefined "Attempt to use WinRM for application template polling failed"
alert is sent to the NetPerfMon Event Log, and SAM uses DCOM/RPC as the fallback method instead.
o If a firewall exists, allow exceptions for the SolarWinds Platform server on port 5985
o Confirm that the SAM WinRM toggle is enabled on the SolarWinds Platform server, at the
global level
o If a target node is in a separate domain, check the TrustedHosts list on the SolarWinds
Platform server and update it, if necessary.
In large environments with Additional Polling Engines (APEs), make sure that target
nodes are TrustedHosts on related polling engines.
3. Verify that the ListeningOn value lists valid IP addresses. If the value is null, add a WinRM
HTTPS Listener.
To confirm that the SAM WinRM toggle is enabled on the SolarWinds Platform server, at the global
level:
1. Navigate to the Advanced Configuration page in the SolarWinds Platform Web Console:
a. Copy the following text to the Windows Clipboard:
/Admin/AdvancedConfiguration/Global.aspx
b. Paste text into your browser address bar, after /Orion, as shown in this example.
<your product server>/Orion/Admin/AdvancedConfiguration/Global.aspx
2. On the Global tab of the Advanced Configuration page, scroll down to the APM.WMI.Settings
section.
3. Verify that the WinRemoteManagementforWmiEnabled option is selected.
This option is enabled in fresh installations by default. If you decide to disable it, use the
SolarWinds Platform Service Manager to stop the SolarWinds Job Engine v2 service, and then
Add all target network nodes across a domain as trusted hosts for the SolarWinds Plat-
form server
1. Open PowerShell as an Administrator.
2. Run this command:
set-item wsman:\localhost\Client\TrustedHosts *.domain.com
See Add target nodes that use WinRM polling as trusted hosts on the SolarWinds Platform server.
Configure trusted hosts on both the target server and the polling engine
1. Log in to the polling engine, which may be the SolarWinds Platform server.
2. Open PowerShell as an Administrator.
3. Run this command to view the TrustedHosts value:
Get-Item WSMan:\localhost\Client\TrustedHosts
This command sets the TrustedHosts value to *, a wildcard character you can replace with
comma-separated IP addresses of servers to trust. Target servers must trust the polling engine
IP address, and the polling engine must trust target server IP addresses. SolarWinds
recommends setting this value to * for polling engines that gather data from multiple target
servers.
5. To confirm trust settings, run the Get-Item command from step 2 again.
WinRM application alert: Attempt to use WinRM for application template polling failed
If WinRM polling fails, the following predefined alert is sent to the NetPerfMon Event Log, and SAM
uses DCOM/RPC as the fallback method instead:
The following message appears if a WinRM URL prefix is not configured correctly:
Compare the WinRM URL prefix settings with Node settings on the Manage Nodes page. Navigate to
the Manage Nodes page, click Edit Node, and scroll down to the WinRM Settings section.
The following message appears if SAM cannot connect to the WinRM service:
This message may indicate that a target node resides in a different domain than the SolarWinds
Platform server. See Add target nodes that use WinRM polling as trusted hosts on the SolarWinds
Platform server.
3. Run the following PowerShell commands to check for a mismatch between WinRM
configurations on the SolarWinds Platform server and the target node:
l
Get-WSManInstance -ResourceURI winrm/config/listener -SelectorSet @
{Address="*";Transport="http"}
l
Get-WSManInstance -ResourceURI winrm/config/listener -SelectorSet @
{Address="*";Transport="https"}
4. Navigate to the Manage Nodes page, click Edit Node, and scroll down to the WinRM Settings
section to review settings.
The following message appears when SAM cannot connect to the WinRM service:
To add all nodes across the domain to trusted hosts, run the following command:
set-item wsman:\localhost\Client\TrustedHosts *.domain.com
See Add target nodes that use WinRM polling as trusted hosts on the SolarWinds Platform server.
The following messages indicate that WinRM authentication may not be configured correctly at the
component level:
Follow these steps to check the SAM WinRM toggle setting for the following types of component
monitors:
l Directory Size Monitors
l File Count Monitors
l Performance Counter Monitors
l Process Monitors for Windows
l Windows Event Log Monitor
l Windows Service Monitors
l WMI Monitors
1. Navigate to the Application Details -Summary page and click Edit Application Monitor.
2. On the application monitor page, scroll down to the Component Monitor section and expand
details.
3. Review the WinRM Authentication Mechanism setting:
SAM application monitor templates are collections of component monitors that you can assign to
nodes as "application monitors" that are also called "applications." A single component monitor can
be used on its own and applied to a node in an application monitor, or it can be used in multiple
templates.
1. Navigate to Settings > All Settings > SAM Settings >Manage Templates.
2. On the Manage Application Templates page, click the Application Monitor Templates tab.
3. Select an existing template and click Edit.
The following example shows some of the component monitors in the AppInsight for Active Directory
template:
To learn more about individual component monitor types, see the SAM Application Monitor Template
Reference. For database values assigned to component monitor types that you can use to configure
alerts, see Component monitor properties for alerts.
You can also configure some component monitors to use SolarWinds Platform agents to
collect data.
WinRM is the default transport method used to collect data with the following WMI-based component
monitor types:
l Directory Size Monitors
l File Count Monitors
l Performance Counter Monitors
l Process Monitors for Windows
l Windows Event Log Monitor
l Windows Service Monitors
l WMI Monitors
See also:
l Configure WinRM polling in SAM 2024.4.1 and earlier
l Choose a fetching method for Performance Counter Monitors (SAM Template Reference)
The Active Directory 2016 Domain Controller Security template includes component monitors that use
scripts to collect data:
l Locked out users uses a PowerShell script to pull metrics for currently locked out users.
l Disabled users uses a PowerShell script to return the number of currently disabled users; you
can adjust thresholds as necessary.
l SAM Template Reference (Learn about component monitors included in predefined templates.)
o Configure Linux/Unix systems for monitoring by the SolarWinds Platform agent in SAM
Component monitors are grouped by monitor type in the tree view; each includes two numbers:
l The first number represents the number of application monitor templates that contain the
specified component monitor.
l The second number represents the number of application monitors that contain the specified
component monitor.
Expand a category to display the names of the templates or application monitors in the category.
Click the name of a template or application monitor to open a page where you can edit the item.
When adding a component monitor to a template, change its default name to identify exactly
what's being monitored. For example, if you add a Windows Service Monitor, specify the
service name.
This extra step clarifies the purpose of the component monitor when it appears in alerts and
system messages later. To change a component monitor name, click Rename at the top of the
Component Monitors section.
4. The browsing method opens the Component Monitor Wizard. Add component monitors as
needed.
Add component monitors to a new template and then assign that template to nodes
1. Click Settings > All Settings > SAM Settings > Manage Component Monitors within Templates.
2. Select the component monitors you want to add to the new template.
3. Click Create New Template.
4. On the New Template page, provide a name and description for the template, and then configure
the template and its component monitors.
5. Click Save to return to the Manage Component Monitors within Templates page.
6. Follow the steps in Assign templates to nodes manually to create application monitors.
2. Select the component type or assigned Application Monitor whose component monitors to list.
3. Select the component monitor(s) to copy to an assigned Application Monitor, then click Copy to
Assigned Application Monitor.
4. Select the Application Monitor(s) to copy to and then click Submit.
5. Click OK.
3. Select the component monitor whose assigned Application Monitor you want to edit.
4. Click Edit Assigned Application Monitor.
5. Edit the settings and then click Submit. The edited Application Monitor appears in the list of
Assigned Application Monitors.
Changes made to component monitors in templates are automatically applied to application monitors
created from the template, which occurs when you assign a template to a node. You can use this
inheritance relationship to make bulk changes quickly.
You can edit monitors individually, edit multiple monitors of the same type simultaneously, as well as
disable or delete monitors in a template. To modify the specific configuration of a monitor, edit it
individually.
Some component monitors in AppInsight templates have default settings that cannot be
modified due to dependencies.
Options include:
l Multi-Edit: A prompt displays with editing options specific to the type of monitors selected. For
example, the Fetching Method for the three Services selected can be changed from RPC to WMI.
To reorder monitors, drag and drop them in the table view, or use the green arrows. This new order is
respected only in the All Applications and Application Details widgets.
1. When editing a template, select the monitor you want to remove and click Delete.
2. Confirm by clicking Yes. The monitor is permanently removed from the template.
In addition to the predefined component monitors included in SAM, you can use the Component
Monitor Wizard to create custom component monitors for a specific process, performance counter,
or service, and then add that new component monitor to a template or existing application monitor
(that is, a template already assigned to a node).
1. Click Settings > All Settings > SAM Settings > Component Monitor Wizard.
2. Select a component monitor type.
3. Based on the component monitor type selected, the wizard guides you through various steps.
For example, if you select Process Monitor, you're prompted to select a target system from a list
of available systems in your environment. You may also need to select a platform type and enter
credentials for the target system. Provide all required information and click Next.
If creating a component monitor for a performance counter, do not use a "*" wildcard in
the Instance field. Only one instance can be polled per component monitor.
4. If you entered target system credentials, a connection test runs. If it passes, continue adding
component monitors and properties. Depending on the components, you may need to enter
additional server and credentials data.
5. After creating a component monitor, add it to templates and application monitors, as necessary.
See Manage component monitors in SAM templates and application monitors.
After polling occurs, data gathered by the application monitors appears on Node Details views.
Use the Fetching Method Skip Fallback option for component monitors
SAM includes predefined component monitors, comprised of code and scripts, that you can use to
assess the status and performance of applications, services, processes, and event on nodes
throughout your environment.
SAM application monitor templates are collections of component monitors that you can assign to
nodes as "application monitors" that are also called "applications." A single component monitor can
be used on its own and applied to a node in an application monitor, or it can be used in multiple
templates with other component monitors.
For quick overviews, watch Understanding Application Templates and Common SAM template
elements.
For some component monitor types, you can control how data is collected by adjusting the Fetching
Method. For example, if you select WinRM/DCOM as the Fetching Method for a Windows Service
Monitor, SAM will try to use WinRM for application polling. If WinRM fails, DCOM is used as the
fallback method. Depending on how the component monitor is configured, SAM will try each fallback
method, one at a time, until it succeeds
You can disable fallback methods if you know they aren't relevant for certain component monitors in
your environment, or you know they will fail. In addition to saving time, adjusting fallback methods can
reduce polling loads and improve overall performance, especially in large environments. If the
selected protocol fails, no fallback occurs.
The following steps describe how to set the Fetching Method Skip Fallback option for
component monitors within an individual application monitor, but you can also adjust it at the
template level. Related application monitors inherit settings from parent templates
automatically unless you select the Override Template option for an application monitor.
You can also access application monitors on the Application Summary page. Drill down
to the application monitor in the All Applications widget and click it to display details.
4. When the list of component monitors appears, select one and click + to expand its details.
5. Select a Fetching Method for the component monitor, such as WinRM.
6. Select the Fetching Method Skip Fallback check box.
For more ways to reduce polling loads, see SAM polling recommendations.
Select the Convert Value option to expand fields where you can select either a common function or
enter a custom formula. The Custom Conversion option provides flexibility through basic arithmetic
operators (+, -, *, /), plus built-in mathematical functions for more advanced conversions. For a list of
functions, see Available data transformations for SAM monitors in online help.
Here is an example that uses predefined formula, XtoMega, to convert bytes to megabytes.
When the formula is applied, the returned value transforms from 318767104 bytes to 304 MB, an
easier value to read.
Click Retrieve Current Value to test the application monitor. Note that data transformation will
be skipped and the original statistic value will be returned.
Many SAM features, such as AppInsight for IIS and AppInsight for Exchange, leverage PowerShell to
execute commands and gather data from remote systems. You can also use PowerShell with other
SolarWinds Platform products; for example, in SolarWinds IP Address Manager (IPAM), you can use it
to create subnets. The SolarWinds Platform SDK includes a specialized module for PowerShell called
PowerOrion.
The ability to deploy PowerShell scripts to remote systems from within the SolarWinds Platform is a
powerful advantage for system administrators. With an interactive prompt and scripting environment,
PowerShell provides access to the file system on remote computers, along with datastores such as
the registry. It includes built-in commands with a consistent interface — the PowerShell Integrated
Scripting Environment (ISE).
PowerShell does not process text; it processes objects based on the .NET Framework.
PowerShell also includes default cmdlets, which are lightweight commands you can use to
manipulate objects. Cmdlets have a unique format — a verb and noun separated by a dash (-), such as
Get-Help. You can use them separately, combine them in scripts that perform complex tasks, or
create your own cmdlets.
SolarWinds provides customer support for PowerShell scripts and functionality built into SAM,
but not for scripting languages or custom scripts. For scripting support from the SolarWinds
online IT community, visit THWACK.
When used in SolarWinds Platform modules such as SAM, PowerShell can be a powerful tool that
provides the ability to:
l Access file systems on computers.
l Access datastores, including the system registry.
While PowerShell enhances SAM functionality, it's important to consider the security risks inherent in
using PowerShell scripts. Do not run untested PowerShell scripts against a production instance of the
SolarWinds Platform. SolarWinds recommends using a dedicated Windows account with low-level
privileges for PowerShell monitors, especially for scripts executed on polling engines that use the
same Windows account as the SolarWinds Platform server.
You can also avoid security risks, such as malicious OS command injections, by using PowerShell's
built-in security, as described in Microsoft PowerShell documentation (© 2021 Microsoft Corp., link
available at docs.microsoft.com, obtained on May 24, 2021).
PowerShell requirements
Following are PowerShell requirements for a typical SAM environment:
l PowerShell version: SolarWinds recommends upgrading to the latest version of PowerShell. At
a minimum, use PowerShell 5.1.
For best results, match the PowerShell version to the OS and application configurations on a
server. For example, on a 64-bit Main Polling Engine that polls a 64-bit server, use PowerShell 64
bit (x64).
l Accounts and permissions: Local Admin rights are required to run scripts on the SolarWinds
Platform server. To execute scripts on target servers, select a Windows credential with rights to
log in to the SolarWinds Platform server plus sufficient rights on the target node to execute
tasks in the script. For example, if a script does something with WMI, the credentials also need
WMI rights on the target node.
SolarWinds recommends using a dedicated Windows account with minimal privileges for
PowerShell monitors, especially for scripts executed on the Main Polling Engine.
Without the correct permissions for a target server, scripts return an Unknown status.
l Microsoft .NET Framework: Many PowerShell scripts require .NET 3.5.x but most SolarWinds
Platform products include later versions. For example, SAM 2019.4 includes .NET 4.8. If
necessary, use Server Manager's Add Roles and Features wizard to add .NET Framework 3.5.x.
l Remote access: To use Remote Host as the Execution Mode for a PowerShell script, enable the
Windows Remote Management (WinRM) service on the SolarWinds Platform server so it can
access remote target servers, as described next.
l AppInsight for Exchange: If manually configuring target servers for AppInsight for Exchange,
use RestrictedLanguage mode for PowerShell instead of FullLanguage mode.
For security reasons, SolarWinds recommends that you do not set FullLanguage mode
on IIS endpoints. RestrictedLanguage mode is required.
There are several automated ways to enable remote access for PowerShell on servers, including:
l Add the server as a new node.
l Configure the target server as an AppInsight for IIS node via the Node Details view.
If you deploy an SolarWinds Platform agent to a target node and use Agent as the Preferred
Polling method in an application monitor, PowerShell scripts can be executed directly on the
node without the need to configure WinRM for remote PowerShell execution. See Use
PowerShell with SolarWinds Platform agents.
1. On the SolarWinds Platform server, open a command prompt as an Administrator, and enter:
winrm quickconfig –q
winrm set winrm/config/client @{TrustedHosts="*"}
See also Installation and configuration for WinRM (© 2021 Microsoft Corp., available at
docs.microsoft.com, obtained on March 12, 2021).
Another way to enable remote access for PowerShell manually is to follow these steps:
1. On the SolarWinds Platform server and each remote server you want to run PowerShell on:
a. Change the startup type for the WinRM service to Automatic.
b. Start the WinRM service.
c. Run the get-service winrm PowerShell command to verify WinRM is running.
2. On the SolarWinds Platform server, click Start > Accessories > Windows PowerShell > Windows
PowerShell.
3. In the PowerShell console, run:
Set-PSSessionConfiguration Microsoft.PowerShell -ShowSecurityDescriptorUI -
force
When finished, each target server should include the following elements:
l An SSL certificate
l A WinRM Listener
l A firewall exception to allow outside requests to reach the WinRM service
l The WinRM service to receive requests from other computers
The following log file contains details about the WinRM configuration process:
C:\ProgramData\Solarwinds\Logs\APM\RunWinRMConfigurator.log
Otherwise, agentless polling executes locally on the polling engine itself (that is, either the SolarWinds
Platform server or an Additional Polling Engine).
To summarize:
l With agentless polling, the local execution of the script is local and the script is executed on the
polling engine.
l With SolarWinds Platform agent polling, the local script execution allows the script to be run
directly on the target node. There is no need to configure WinRM.
Application Name
Application Status
Indicate the status you want to receive alerts for: Critical, Down, Unknown, Up, or Warning.
Component Name
Specify the component name you want to base alert criteria on.
Component Type
FTP Monitor 7
HTTP Monitor 6
HTTPS Monitor 14
IMAP4 Monitor 13
JMX Monitor 49
NNTP Monitor 11
POP3 Monitor 12
SMTP Monitor 10
SOAP Monitor 58
SNMP Monitor 32
WMI Monitor 19
Component Status
Trigger alerts based on Critical, Down, Unknown, Up, and Warning status.
Response Time
Statistic Data
Trigger alerts based on a process or service name. For example: dns.exe, or AlertingEngine.
Percent CPU
Trigger alerts based on the percentage of CPU in use of a monitored process or service.
Trigger alerts based on the percentage of physical memory used for a process or service.
Trigger alerts based on the percentage of total memory used for a process or service.
Trigger alerts based on the percentage of virtual memory used for a process or service.
Trigger alerts based on the amount of virtual memory, in bytes, used for a process or service.
A default
description is
provided but
can be
changed.
Updates are
saved
automatically.
You will create a template with added monitors, configure the monitors, then apply the template to
nodes for monitoring. We also provide information for creating an alert for the WMI application to
send email notices based on monitored thresholds.
You may need to log in with an administrator account to perform this action.
You may need to log in with an administrator account to perform this action.
1. Click Settings > All Settings > SAM Settings > Manage Templates.
2. Locate your template and click Assign to Node.
3. Select the Windows node from the left pane, click the green arrow to move it to the right pane,
and click Next.
4. Choose the credentials, click Assign Application Monitor, then click Done.
To add the second trigger condition, click [+]. The first trigger condition tests for Status
(Down); the second tests for the specific application instance (indicated by 1 Object).
5. For Trigger Actions, click Add Action, select Send an Email/Page, then click Configure Action.
6. Enter required information and click Next to advance through the wizard.
7. Review and edit the Reset Actions and the Summary, then click Submit.
The Manage Alerts page indicates the alert was created successfully.
You may need to log in with an administrator account to perform this action.
1. Click Settings > All Settings > SAM Settings > Scan Nodes for Applications.
2. Select nodes by clicking [+] to expand the node groups, then select the nodes you want to scan,
and then click Next.
3. Select applications to find, and then click Next.
4. Enter the credentials for the servers you are scanning, and then click Start Scan.
5. Click View SAM Summary Page, then click View results after the SAM scan is complete.
To learn more, see Scan nodes and assign SAM application monitor templates automatically with the
Application Discovery Wizard.
6. On the Change Properties page, make any changes, and then click OK, Add Node.
7. Wait 5 to 10 minutes for polling to occur.
8. To view results:
a. Click My Dashboards > Applications > SAM Summary.
b. In the All Applications widget, drill down to the Web Link instance on the specific node.
c. Click the link to see related data on the Application Details - Summary page.
1. Click Settings > All Settings > SAM Settings > Component Monitor Wizard.
2. Select a VMware Performance Counter Monitor, and then click Next.
3. Enter the IP address of the VMware node, or click Browse to select a node from a list.
4. Select or enter the appropriate credentials, then click Next.
5. Select whether you want to monitor a single system or multiple systems.
l Choosing a single system provides specific counters that apply to the target system only;
choosing Multiple systems provides more generic counters that can be applied to multiple
systems.
Note the following details about creating alerts to restart stopped Windows services:
l The action to restart the service uses the credentials which the component is currently being
monitored with.
l WMI requires administrator privileges on the target machine by default; permission issues can
occur if the accounts have limitations.
SolarWinds Support cannot assist with creating a least-privileged Windows user account
or assigning permissions. Click here to learn about creating a non-administrator user for
SAM polling.
l If polling the service via Windows agent, the agent runs under the context of the LocalSystem
account on the target machine so it requires sufficient privileges to restart the service.
l The action to restart the service will only work with a component monitor-based alert. If the alert
is set up as an "I want to alert on an application monitor" on the Trigger Condition tab, the restart
service alert action will not function.
Click here to learn more about alerts, or watch a SolarWinds Lab Bits video, Automating Alert
Trigger Actions.
Create an alert to restart stopped Windows services and then send an email
1. Click Alerts & Activity > Alerts.
2. On the All Active Alerts page, click Manage Alerts.
3. On the Manage Alerts page, click Add New Alert.
4. In the Add New Alert wizard, provide alert details on the Properties tab and click Next.
5. On the Properties tab, provide alert details.
6. On the Trigger Condition page:
a. For "I want to alert on", select Component.
b. Choose an alert scope.
c. Configure a trigger condition as follows:
i. Component > Component Type (Component Alerting Properties) > Is equal to > 9.
ii. Component > Component Availability (Component Alerting Properties) > Is equal to >
Down.
Configuring only these two conditions will allow for any Window service being
monitored across all application templates. If you need to be more refined with your
service restarts, consider adding additional items to limit the scope to a specific
application template, specific nodes, etc.
${N=SwisEntity;M=ComponentAlert.ComponentID} -c=RESTART
1. Click Settings > All Settings > SAM Settings > SAM Settings > Create a New Template.
2. Name the template, click Add Component Monitor, select Windows Script Monitor, and click
Add.
3. Provide a brief Description.
4. Select credentials with appropriate permissions to run the script on the target server.
5. In the Script Arguments field, type the Universal Naming Convention (UNC) path name for the
directory to monitor.
Use the variable ${IP} for the IP address of the target node to which the monitor is
assigned when the Windows Script Monitor runs.
6. Copy the following Visual Basic script, which retrieves the directory size, into the Script Body
field:
Dim folderPath
folderPath = WScript.Arguments(0)
Set fs=WScript.CreateObject ("Scripting.FileSystemObject")
Set folder= fs.GetFolder(folderPath)
WScript.Echo "Message: Folder " &folderPath & " is " & folder.Size & "
bytes large"
WScript.Echo "Statistic: " & folder.Size
7. Specify the critical and warning thresholds for the desired directory size, and then click Submit.
8. Create an assigned Application Monitor by assigning the Large Directory Monitor template to
the node.
a. In the SolarWinds Platform Web Console, click Settings > All Settings > SAM Settings >
Manually Assign Application Monitors.
b. Select All in the Show only list.
c. Click Large Directory Monitor and then click Next.
d. Locate and select the desired node, and then click Next.
e. Enter itadmin in the Credential Name field and then enter your credentials.
f. Click Test, click Assign Application Monitors, and then click Done.
When monitoring occurs, the Visual Basic code in the template will:
1. Read the first argument passed to the UNC path name for the directory to monitor and store it in
FolderPath.
2. Create the Scripting.FileSystemObject and store it in fs.
3. Retrieve the folder name from the saved command line argument and store it in FolderPath.
4. Display the folder name and folder size as output.
5. Display the folder size, measured in bytes.
g. Change Monitor Name to Webpool1, then enter webpool1 in the Command Line Filter
field.
h. Change the CPU Warning Threshold to greater than 40, then Change the CPU Critical
Threshold to greater than 50.
i. Click Add Another Component. After creating the monitors for all five w3wp.exe instances,
click Next.
j. Select New Application Monitor and enter Web Server Application Pools as the
Application Monitor Name, and then click Next.
k. Select the web server node, and then click Next, then click OK, Create.
You can use the following SAM component monitors within an application monitor assigned to an
external node:
l HTTP Monitor
l HTTPS Monitor
l HTTP Form Login
l SSL Certificate Monitor
l TCP Port Monitor
Another alternative is to add an API poller to gather metrics for nodes via an external REST API.
Create an API poller on the Node Details view, pick values to monitor, provide credentials, and then
begin polling the external node.
Offering a level of detail and expert knowledge far beyond what standard templates provide, you can
assign AppInsight templates to nodes in many ways, including automatically during Discovery. Just
as standard SAM templates convert to application monitors after being assigned to nodes,
AppInsight templates become AppInsight applications that monitor nodes.
The following AppInsight applications are available to monitor business-critical functions in your
SAM environment:
l AppInsight for Active Directory
l AppInsight for Exchange
l AppInsight for IIS (shown below)
l AppInsight for SQL
Note the following details about using AppInsight templates and applications:
l WMI is the preferred polling method because some node data, such as disk I/O, is only available
via WMI.
l WinRM is the default transport method used to fetch data for WMI-based component monitors.
l All AppInsight templates support the SolarWinds Platform agent for Windows. See Monitor with
SolarWinds Platform agents in SAM.
l Due to the complexity of these templates:
o Allow extra time for configuration to finish when assigning AppInsight to nodes.
o Some component monitors have default settings that cannot be modified due to
dependencies.
o Some AppInsight component monitors cannot be disabled. However, if situations arise
that cause component monitors to fail (for example, a known server outage), you can
disable most dynamic component monitors to reduce false-positive alerts and logs. See
AppInsight for IIS and AppInsight for SQL for details.
o You cannot import or export AppInsight templates in the SolarWinds Platform Web
versions from THWACK, AppInsight templates are updated automatically during product
upgrades.
l If using component-based SAM licensing, AppInsight applications consume licenses at flat
rates.
l To configure large environments quickly, add AppInsight applications to nodes with automation
scripts.
The dynamic behavior of complex AppInsight component monitors can impact polling loads in
large deployments (for example, if monitoring a large quantity of SQL servers). If heavy polling
slows down your environment, see SAM polling recommendations.
AppInsight for Active Directory monitors physical and virtual Active Directory environments to identify
issues about domain controllers, replication, and more. You can use this AppInsight application to
track many key aspects of Active Directory by getting relevant performance data from the server level.
You can also drill down into the datastore layer for performance data.
You can add AppInsight for Active Directory to domain controllers automatically during Discovery or
manually via the Node Details view. After it's assigned to a node, AppInsight for Active Directory is
considered an application and reports data to SAM through a set of component monitors included in
the AppInsight for Active Directory template, such as:
l Windows Event Log Monitors that scan event logs for server-related events.
l Performance Counter Monitors that collect Windows Performance Counter data.
Here are some ways to use the status and metrics provided by AppInsight for Active Directory:
l File replication service: Identify replication failures or network issues that lead to slow
replication rates between websites.
l Directory services: Watch critical directory services to ensure your email and phone contacts
are always synchronized.
l Service outages: Monitor domain controllers continuously to prevent service outages. Diagnose
performance issues by tracking CPU usage, connected users, failed logins, account lockouts,
and more. Discover domain controllers on unmonitored nodes.
l Dependencies: Troubleshoot Active Directory dependencies with widgets that show in-depth
details about issues impacting performance.
A Microsoft Azure Active Directory API Poller template is also available. To learn more about
API pollers, watch API Pollers: When SNMP Won't Cut It.
l Assign AppInsight to monitored domain controllers running Active Directory Domain Services.
l Configure AppInsight for Active Directory for specific domain controllers. For example, adjust
component monitor thresholds, certificate handling, and LDAP ports.
To learn more, review the Domain Controller Health Check and Monitoring use case and watch
Deep Dive on using AppInsight templates.
Requirements
Host systems Configure systems as DCs running Active Directory (AD) Domain Services on a
supported OS, including:
l Windows Server 2012 R2
l Windows Server 2016
l Windows Server 2019
l Windows Server 2022
Permissions Provide domain credentials for an account that SAM can use to log in to AD to
collect data.
l The account must be in the same domain as the DC, with read/write access
to monitored AD instances and services.
l Local admin privileges are required to assign AppInsight to nodes, but they
are not needed for monitoring after setup.
Ports The default ports for AppInsight for Active Directory appear below. To adjust port
settings for individual domain controllers, see Configure AppInsight for Active
Directory on nodes.
l LDAP: 389
l LDAPS: 636
l Global Catalog (GC): 3268
Requirements
Encryption AD does not support encryption so the encryption method to connect to domain
controllers is set to None, by default.
Authentication By default, authentication is set to Negotiate so SAM can use Kerberos or NT LAN
Manager (NTLM) authentication.
The following diagram shows how AppInsight uses various protocols to collect AD data:
AppInsight applications provide tremendous value within SAM while consuming a fixed number
component monitor licenses. However, they cannot be partially unlicensed because the way they
collect data differs significantly from traditional application monitor templates.
For example, if you have an active license for 1,500 component monitors and use AppInsight for
Active Directory to monitor 5 domain controllers, 250 component monitors count against your total
license. The number of licenses used is strictly per monitored AppInsight for Active Directory
application. The quanitity of Active Directory instances you have on domain controllers affects the
number of component monitors.
This leaves you with 1,000 component monitors available for use elsewhere.
1,500 component monitors – 250 component monitors used for AppInsight for Active
Directory = 1,250 component monitors remaining.
If you choose not to use AppInsight for Active Directory, you are not penalized any number of
component monitors.
l To add a node for a domain controller, select Windows Servers: WMI and ICMP as the polling
method so AppInsight widgets can display node status and names properly. ICMP-only nodes
do not supply DNS or SysName values required to compute replications for destination domain
controller FQDN names. See this article in the SolarWinds Success Center for details.
l Configure AppInsight to collect domain-related data from a specific domain controller, while
continuing to poll for replication-related data from other domain controllers in the same domain.
See Customize AppInsight for Active Directory on individual domain controllers to boost
performance,
l Several "Total" performance counters (for example, Total Inactive Users) are initially disabled to
avoid performance issues in environments with large quantities of users and computers,
especially clients. To enable those component monitors for individual nodes, see Configure
AppInsight for Active Directory on nodes.
l During initial setup, assign alerts to one or two email addresses only. Watch and monitor the
alerts for two weeks to generate stable baselines that you can use to refine monitoring and alert
actions for the usage and performance in your specific environment. Your environment's
baseline and performance expectations may vary, as compared to the default thresholds.
To learn more about this feature, review the Domain Controller Health Check and Monitoring
use case and watch Deep Dive on using AppInsight templates.
There are several ways to assign AppInsight for Active Directory to nodes:
l Use the Discovery Wizard.
l Assign the AppInsight for Active Directory template to nodes.
l Add AppInsight for Active Directory via the Node Details view.
Regardless of the method used, an application monitor is created for each node, based on the
AppInsight for Active Directory template. In the SolarWinds Platform Web Console, the default name
displayed for the application monitor is "Active Directory," as shown in this example from the Node
Details page:
Add AppInsight for Active Directory to nodes via the Manage Templates page
You can add AppInsight for Active Directory monitoring to a domain controller already being
monitored as a node via the Manage Templates page.
1. Click Settings > All Settings > SAM Settings > Manage Templates.
2. On the Manage Templates page, switch to the Application Monitor Templates tab.
3. In the Template Name column, select the AppInsight for Active Directory check box.
4. Click Assign to Node.
5. Complete fields on the Set up AppInsight for Active Directory page and click Assign Application
Monitor.
6. Proceed to Configure AppInsight for Active Directory on nodes.
Add AppInsight for Active Directory to nodes via the Node Details view
Follow these steps to add AppInsight for Active Directory to a domain controller already monitored as
a WMI node in SAM.
4. Select Microsoft Active Directory to enable AppInsight for Active Directory data collection. When
done, click Submit.
After assigning AppInsight for Active Directory to nodes, customize settings for individual domain
controllers. For example, you can enable "Total" performance counters or adjust certificate handling.
See Configure AppInsight for Active Directory on nodes.
For a related SAM use case, see Domain Controller Health Check and Monitoring.
1. Click Settings > All Settings > SAM Settings > Manage Application Monitors.
2. Select the node, which will list "Active Directory" as the Assigned Application Monitor, and then
click Edit Properties.
3. (Optional) Click Advanced to display settings for credentials, ports, encryption, and more.
When working with component monitors, note that AppInsight uses domain controller IP
addresses instead of domain names for polling; LDAP components do not include the
$DomainName parameter in configuration fields. This use of IP address enables different
applications to get data from all monitored domain controllers in a single domain. Click
here to learn more about individual component monitors.
4. Adjust values and settings, as necessary, and then click Submit to save changes.
5. If you changed settings for an existing domain controller, use SolarWinds Platform Service
Manager to restart the SolarWinds Collector Service.
l Encryption Method: Active Directory does not support encryption so this value is set to None, by
default. To use SSL or StartTLS, add an LDAP certificate to the server manually.
l Ignore Certificate Errors: By default, the AppInsight ignores certificate errors encountered
during polling. Enable this setting if you want users to verify a server connection when
SAM encounters an invalid certificate during polling.
l Authentication Method: By default, authentication is set to Negotiate so SAM can use Kerberos
or NT LAN Manager (NTLM) authentication.
l Enable Domain Components: For each domain controller, AppInsight uses component monitors
to collect domain-related metrics, as well as metrics about replication. To reduce polling loads,
you can limit polling for domain-related metrics to a single domain controller within each
domain. See below for details.
l Restart the SolarWinds Collector Service if you change this setting after initial setup. Otherwise,
the status of the Active Directory application displays as Down in the SolarWinds Platform Web
Console and warnings appear in application logs.
l Enable Total Counters: By default, some component monitors are disabled in the AppInsight for
Active Directory template to avoid performance issues when setting up domain controllers in
environments with large quantities of users and computers. After adding AppInsight to
individual nodes, you can enable the following counters for a node.
o Total User Accounts
o Total Disabled User Accounts
o Total Computer Accounts
Customize AppInsight for Active Directory on individual domain controllers to boost per-
formance
As described in Best practices, adding AppInsight for Active Directory to one domain controller per
site is sufficient for general visibility because all domain controllers within a single domain should
report identical data.
You can edit application monitors assigned to most domain controllers at a site to turn off the Enable
Domain Components setting. AppInsight will continue polling replication-related metrics, but only
collect domain-specific data (for example, about sites and trusts) for domain controllers where the
setting is in its default state.
By limiting the data that AppInsight polls on domain controllers, you can:
l Reduce redundant data collection.
l Improve performance, especially in large customer environments with numerous Active
Directory domain controllers in each domain.
l Enhance scalability. Instead of only 50 domain controllers — the recommended limit in earlier
SAM versions — you can monitor up to 200 domain controllers.
Note the following details about adjusting the Enable Domain Components setting:
l Although this option is not available at the template level, you can adjust it in application
monitors already assigned to individual domain controllers.
l Use the SolarWinds Platform Service Manager to restart the SolarWinds Collector Service if you
change this setting after initial deployment. Otherwise, the status of the Active Directory
application displays as Down in the SolarWinds Platform Web Console and warnings appear in
application logs.
l Domain Controller Details and Site Details widgets are hidden on related Application Details
views if this setting is disabled.
The primary reasons to edit most application monitor templates is to adjust polling frequency, polling
methods, and thresholds for warning and critical states for monitored metrics before assigning
templates across multiple nodes. Like the other AppInsight templates, the AppInsight for Active
Directory template includes component monitors with several default settings that cannot be
modified due to dependencies.
Although you cannot add component monitors to this template, you can adjust Advanced settings on
individual nodes to boost performance by polling for LDAP data on a single domain controller in a
domain, while continuing to gather replication details for all domain controllers in that domain.
AppInsight for Active Directory uses domain controller IP addresses instead of domain names,
so LDAP component monitors do not include a $DomainName parameter in configuration
fields. This use of IP address enables different applications to collect data from all monitored
domain controllers in a single domain.
1. Click Settings > All Settings > SAM Settings > Manage Application Monitors.
2. On the Manage Assigned Application Monitors page, select the AppInsight for Active Directory
template.
3. Click Edit Properties to display component monitor details.
When you assign this template to individual nodes that represent domain controllers, you create
individual application monitors (also called "applications") with Advanced settings, including:
l LDAP Port Number
l Global Catalog Port Number
l Ignore Certificate Errors
l Enable Domain Components
l Enable Total Counters
To learn how these settings can impact domain controller performance, see:
l Configure AppInsight for Active Directory on nodes
l Best practices for AppInsight for Active Directory
Alert Trigger
Alert me when a user account is locked out The user is
locked out
of account.
AppInsight for Active Directory alerts appear in the Active Alerts widget on the following pages:
l Active Directory Summary page
l Application Details view
l Domain Details page
Trigger conditions related to AppInsight for Active Directory that you can use in alerts include:
l AppInsight for Active Directory: Application
l AppInsight for Active Directory: Naming Context
l AppInsight for Active Directory: Site
To learn about using alerts, see the SolarWinds Platform Administrator Guide or watch
Managing Existing Alerts.
The following AppInsight for Active Directory reports are included in SAM:
l Active Directory Summary shows all domains monitored by AppInsight for Active Directory.
l Active Directory Summary: Trusts shows all domain trusts monitored by AppInsight for Active
Directory.
l Review AppInsight for Active Directory requirements and also Best practices.
l Check your configuration.
l Click here to learn about the AppInsight for Active Directory template.
Issue: AppInsight for Active Directory widgets do not display polled data.
After configuring AppInsight for Active Directory, you may not see active data in widgets or receive
alerts immediately because polling may occur at different intervals, ranging from minutes to hours.
After 24 hours, widgets and alerts should start reporting data.
The default polling interval for AppInsight for Active Directory is 10 minutes.
You can also check AppInsight for Active Directory logs located in this default location:
c:\ProgramData\SolarWinds\Logs\APM\ApplicationLogs.
Issue: Domain Controller Details and Site Details widgets don't appear on Application Details pages.
Check settings in the application monitor for the domain controller. These widgets are hidden if the
Enable Domain Components option is disabled.
Issue: Node status does not appear in AppInsight for Active Directory widgets, and Active Directory
widgets display IP addresses instead of node names.
To ensure that node status appears in AppInsight for Active Directory widgets with proper node
names, configure nodes to support both WMI and ICMP polling. ICMP-only nodes cannot supply DNS
or SysName values required to compute replications for destination domain controller FQDN names.
Alternatively, edit the name of an ICMP node on the Node Details > Edit Properties page.
Issue: Domain controllers display "Unknown" for several custom performance counters.
Check the server to make sure the Windows NT Directory Service (NTDS) category of performance
counters is present. If the base set of performance counter libraries is corrupt, you may need to
rebuild it. See also Performance Counter Monitor - Bad Input Parameter (THWACK).
Generic application monitors like Windows Event Log Monitor and Performance Counter Monitor may
have an Unknown status after the first round of polling. Wait 10 minutes for the next successful poll.
If the status of a domain controller remains Unknown after polling, make sure that a node exists for
the domain controller and that AppInsight for Active Directory is assigned to the node. See Configure
AppInsight for Active Directory on nodes.
Issue: After enabling Total counters in the AppInsight for Active Directory template, the AppInsight
application appears Down and warnings occur in SAM logs.
Enabling and disabling components for AppInsight applications can place the SolarWinds Collector
service in an unsynchronized state. Use the SolarWinds Platform Service Manager to restart that
service and clear its cache. See Configure AppInsight for Active Directory on nodes.
Issue: Domain Controllers display Unknown status in AppInsight for Active Directory widgets.
Make sure the node is being monitored and that the AppInsight for Active Directory template is
assigned to the node. See Assign the AppInsight for Active Directory template to domain controllers.
Windows SQL Server locking causes the SolarWinds Platform database to grow after assigning
AppInsight for Active Directory to nodes.
SQL Server locks may occur if you exceed recommended limits for AppInsight for Active Directory
monitoring; see Best practices for AppInsight for Active Directory. Locks can prevent rows from being
deleted during daily database maintenance jobs, so the number of rows grows as polling continues.
Delete rows from the database manually, or remove AppInsight for Active Directory from nodes, wait
for daily database maintenance to finish, and add AppInsight back to the nodes. Click here for details.
The Replication widget displays domain controllers (shown on the right, below) that replicate with the
monitored domain controller (shown on the left) in the same domain, by design.
Issue: The Trust Summary widget does not display expected data.
If expected data does not appear in the Trust Summary widget, here are some ways to investigate:
l Navigate to My Dashboards > Applications > Active Directory to check the status of the
AppInsight for Active Directory application.
l Verify that domain controllers are assigned the Global Catalog (GC) role. You can use
PowerShell to check if the IsGlobalCatalog flag is set to True:
Get-ADDomainController-Filter {Site-eq 'Default-First-Site-Name'}} | FT
Name,IsGlobalCatalog
Get-ADDomainController | ft Name,IsGlobalCatalog
l Verify that domain controllers configured as GC servers use port 3268, the default port to collect
trust data. If domain controllers use port 3269 instead, update that setting. See Configure
AppInsight for Active Directory on nodes.
l Check SAM logs and AppInsight for Active Directory logs located in this default location:
c:\ProgramData\SolarWinds\Logs\APM\ApplicationLogs.
Active Directory applications appear as Down in the SolarWinds Platform Web Console and
warnings appear in application logs, or
If AppInsight monitors multiple domain controllers in the same domain, each domain controller will
report the same LDAP domain data, such as sites and trusts. You can adjust Advanced settings for
individual domain controllers to poll LDAP data for only a single domain controller, while polling
replication details for all domain controllers in the domain.
If applications appear Down after adjusting those settings, use the SolarWinds Platform Service
Manager to restart the SolarWinds Collector Service.
Domain Controller Details and Site Details widgets are hidden on the Application Details page if
the Enable Domain Components option is turned off for a domain controller.
You can add AppInsight for Exchange automatically during Discovery or add it to nodes manually via
the Node Details view. After it is applied to a node, AppInsight for Exchange is considered an
application and reports data to SAM through a set of component monitors.
l AppInsight uses the Exchange credentials you provide to directly access the servers, complete
configuration, and collect data during polling. Before adding AppInsight to nodes, review
requirements and account permissions.
l Manually configure AppInsight for Exchange on target servers in SAM provides additional
configuration and usage options, but is recommended for experienced Exchange administrators
only.
l You cannot edit component monitors in the AppInsight for Exchange template to exclude or
include specific databases. To monitor specific databases, and not the entire Database
Availability Group (DAG), consider using Exchange templates that provide a starting point for
PowerShell scripts that monitor metrics for specific databases.
l After configuring AppInsight for Exchange, you may not see active data in widgets or receive
alerts immediately because polling may occur at different intervals, ranging from minutes to
hours. After 24 hours, widgets and alerts should start reporting data.
l After configure alerts to be notified about Exchange server usage and issues, monitor alerts for
two weeks to generate stable baselines. Your environment's baseline and performance
expectations may vary, as compared to the default thresholds.
l Create custom views with different AppInsight for Exchange widgets for user groups in your
organization.
l Use AppStack to troubleshoot performance and availability issues. This visual mapping tool
provides health and status information about related applications, servers, hosts, volumes, and
more.
l For virtual servers, SolarWinds Virtualization Manager (VMAN) can display in-depth information
about your Exchange environment in AppStack. VMAN also correlates virtual disks to the
physical disks in the back-end storage layer so that you can identify and correct storage
problems. Use VMAN to troubleshoot disk usage issues in a virtual environment, such as
storage I/O problems caused by a "noisy neighbor" that is consuming I/O resources needed by
Exchange.
l SolarWinds Storage Resource Manager (SRM) monitors the storage arrays used to store
Exchange data. SRM correlates disks to storage devices on the network, and provides data
about the capacity and performance of your storage devices. With SRM, information about
storage devices (including array, volumes, and LUNs) is shown in the AppStack.
l SolarWinds Web Performance Monitor (WPM) can run synthetic user transactions from office
locations to the load balancer and Exchange servers. For example, WPM can provide
information about what users experience when they access Microsoft Outlook, and alerts you if
Outlook takes significantly longer than usual to load or if users cannot access the site.
1. Navigate to the All Applications widget by clicking My Dashboards > Applications > SAM
Summary.
2. On the Applications Summary page, expand the AppInsight for Exchange tree in the All
Applications widget.
3. Expand the node tree and click the application. The default name is Microsoft Exchange.
The AppInsight for Exchange Details view includes customizable widgets that display statistics about
your Exchange servers and services. Click links within widgets to drill down and review details about
related performance counters, databases, mailboxes, and more.
l Click any performance counter in a widget to view the Exchange Performance Counter Details
page.
l Click any database within a Database widget to view the AppInsight for Exchange Database
Details page.
l Click any user name within a Mailbox widget to view the AppInsight for Exchange Mailbox
Details page.
AppInsight applications provide tremendous value while consuming a fixed number component
monitor licenses. However, they cannot be partially unlicensed because the way they collect data
differs significantly from traditional application monitor templates. You can disable some
components within AppInsight applications but they will not reclaim component monitor licenses
because AppInsight applications typically monitor more than 50 components.
For example, if you have an active license for 1,500 component monitors and use AppInsight for
Exchange to monitor 88 mailboxes over 10 Exchange servers, 500 component monitors count against
your total license. The amount of licenses used is strictly per server instance.
(1,500 component monitors – 500 component monitors used for AppInsight for Exchange =
1,000 component monitors remaining).
If you choose not to use this AppInsight, you are not penalized any number of component
monitors.
The example below illustrates a situation where you have 40 available component monitors available,
but surpassed your allowed number of 300 monitors by 60. AppInsight applications are licensed as 50
monitors per application and cannot be partially licensed, as described above. Although you may be
able to disable some components in an AppInsight application, they will not reclaim component
monitor licenses because AppInsight applications typically monitor far greater than 50 components.
See also SAM licensing model and Scalability Engine Guidelines for SolarWinds Platform products.
AppInsight for Exchange works only with the Mailbox Role, which is used for data storage. All other
Exchange servers running different roles should use the Exchange application monitor templates
included with SAM if you intend to monitor them. Data is collected at the same default five-minute
polling interval as traditional application monitor templates.
The following permissions are required to modify Exchange and WinRM settings on target servers, as
well as poll performance counters:
l Local administrator permissions are needed for automatic configuration of the exchange
account, but they are not needed for monitoring after configuration is complete. However,
remember Full Control permissions are necessary for PowerShell to facilitate the monitoring.
For additional details, see Setting PowerShell Permissions.
l To provide organization-wide capability, the service account (Domain User) must be a member
of the View-Only Organization Management group. Membership to this group gives the User
object read-only access to the entire Exchange environment, without providing any domain or
local access on the Exchange server. It also prevents unauthorized access to the account.
l To gather data, the User object must be assigned the Mailbox Search management role within
Exchange.
This role is only required to modify Exchange and WinRM settings on server. It's not
necessary for standard polling.
l For Mailbox statistics, Hub Transport Servers need to be accessed via RPC.
PowerShell requirements
l PowerShell is usually installed with Microsoft Server. Install PowerShell 5.1 on target servers, if
it's not already installed.
l Set PowerShell permissions for Exchange.
A third option is recommended only for experienced Exchange administrators: Manually configure
AppInsight for Exchange on target servers in SAM.
Before you begin, review AppInsight for Exchange requirements and permissions and note these
details:
l Starting in SAM 2020.2, AppInsight for Exchange uses WinRM as the default polling method. If
upgrading from an earlier SAM version, see Configure WinRM polling on target nodes to update
existing nodes.
l SAM does not support multiple instances of Exchange on the same server.
l Nodes that are not added via WMI do not display in the List Resources dialog box.
l Monitoring an Exchange Database Availability Group (DAG) by way of a Virtual IP address (VIP)
is not supported. AppInsight for Exchange should only be applied to the physical IP address of
each mailbox server in the DAG, individually.
Earlier versions of SAM used FullLanguage mode on target Exchange servers. Starting in SAM
2020.2.6, use RestrictedLanguage as the minimum PSLanguageMode setting in PowerShell
on target servers. For a script to configure existing servers, see this Success Center article.
7. Enter Exchange credentials when prompted, and then click Configure Server.
Due to the complexity of AppInsight templates, allow extra time for configuration to finish when
assigning to multiple nodes.
4. Select Microsoft Exchange to enable AppInsight for Exchange data collection. When done, click
Submit.
When you click Configure Server, SAM runs custom PowerShell scripts to:
l Add the Mailbox Search Role to the Exchange server with the credentials provided.
l Enable the WinRM service to provide the SolarWinds Platform server with remote access to
target servers.
l Enable Windows Authentication for the PowerShell website.
l Configure Windows Authentication.
The process initiated when you click Configure Server is sometimes called "Zero Config."
See also:
l Manually configure AppInsight for Exchange on target servers in SAM
l Troubleshoot AppInsight for Exchange
l Troubleshoot permissions
The primary reason to edit most SAM templates is to set general configurations such as polling
frequency, polling method, and thresholds for warning and critical states for monitored metrics before
assigning templates to nodes. The AppInsight for Exchange template includes several component
monitors with default settings that cannot be modified due to dependencies. Also, you cannot add
component monitors to this template.
See the SAM Application Monitor Template Reference for a list of component monitors included in
this AppInsight template. You can also select the template on the Manage Application Monitor
Templates page and click Edit to display component monitor details, and then make any necessary
changes.
See also:
l Troubleshoot AppInsight for Exchange
l Troubleshoot permissions
To verify Exchange credentials, run this PowerShell cmdlet in the Exchange Management Shell (EMS):
Get-ManagementRoleAssignment -RoleAssignee “USER_IDENTITY”
Use domain accounts to access Exchange Management interfaces; AppInsight for Exchange does not
support local accounts. Select an existing Active Directory account or create one to use with
AppInsight for Exchange. See Verify Microsoft Exchange credentials.
1. On the server where you are granting local administrative privileges, open the Computer
Management console.
On Windows Server 2012, use the Active Directory console to manage administrative
privileges.
Alternatively, add an Active Directory group to the local administrators group and add Active
Directory user accounts to that group.
To verify the account and local group membership was configured properly, run the following in a
PowerShell session:
$Recurse = $true
$GroupName = 'Administrators'
$ct = [System.DirectoryServices.AccountManagement.ContextType]::Machine
$group =
[System.DirectoryServices.AccountManagement.GroupPrincipal]::FindByIdentity
($ct,$GroupName)
1. Open Active Directory Users and Computers (ADUC) and find the Microsoft Exchange Security
Groups organizational unit (OU).
2. Add the user name of the account to the View-Only Organization Management group.
1. From the Start menu, open the Exchange Management Shell (EMS).
2. Type: New-ManagementRoleAssignment -Role "Mailbox Search" -User <Username of
account being granted access> and then press Enter.
3. To verify the management role has been properly assigned, enter the following command:
Get-ManagementRoleAssignment -RoleAssignee <Username of account>
PowerShell is usually installed with Microsoft Server. If necessary, install PowerShell 5.1 on target
servers.
Use IIS Manager on the Exchange server to configure application settings for the default website and
PowerShell virtual directory, and then recycle the MSExchangePowerShellAppPool application pool.
You can download a PowerShell script to create a self-signed certificate suitable for AppInsight for
Exchange from the SolarWinds Success Center. See Create a self-signed certificate for AppInsight for
Exchange with a PowerShell script.
1. Using PowerShell and CertEnroll, open PowerShell in the Run as Administrator context.
2. Enter the following code.
$cert.NotAfter = $cert.NotBefore.AddDays($ExpDays)
$cert.X509Extensions.Add($ekuext)
$cert.Encode()
function Add-FirewallRule {
param(
$name,
$tcpPorts,
$appName = $null,
$serviceName = $null
)
$fw = New-Object -ComObject hnetcfg.fwpolicy2
$rule = New-Object -ComObject HNetCfg.FWRule
$rule.Name = $name
if ($appName -ne $null) { $rule.ApplicationName = $appName }
if ($serviceName -ne $null) { $rule.serviceName = $serviceName }
$rule.Protocol = 6 #NET_FW_IP_PROTOCOL_TCP
$rule.LocalPorts = $tcpPorts
$rule.Enabled = $true
$rule.Grouping = "@firewallapi.dll,-23255"
$rule.Profiles = 7 # all
$rule.Action = 1 # NET_FW_ACTION_ALLOW
$rule.EdgeTraversal = $false
$fw.Rules.Add($rule)
}
3. Run the function to create the firewall exception for WSMAN with this command:
Add-FirewallRule "Windows Remote Management" "5986" $null $null
Configure IIS
7. If the return value is True, Windows Authentication is configured. If False, follow these steps:
a. Type: Set-WebConfiguration
system.webServer/security/authentication/windowsAuthentication
'IIS:\sites\Default Web Site\PowerShell' -value True and then press Enter.
b. Type: (Get-WebConfiguration
system.webServer/security/authentication/windowsAuthentication
'IIS:\sites\Default Web Site\PowerShell').enabled to verify the setting
changed.
c. Close PowerShell.
d. In the open command prompt, type: appcmd.exe lock config -
section:system.webServer/security/authentication/windowsAuthentication
and then press Enter.
Navigate to the Application Edit page and click Test. The result should look similar to this figure:
Scripts are not supported under any SolarWinds support program or service. The scripts are
provided AS IS without warranty of any kind. SolarWinds further disclaims all warranties
including, without limitation, any implied warranties of merchantability or of fitness for a
particular purpose. The risk arising out of the use or performance of the scripts and
documentation stays with you. In no event shall SolarWinds or anyone else involved in the
creation, production, or delivery of the scripts be liable for any damages whatsoever (including,
without limitation, damages for loss of business profits, business interruption, loss of business
information, or other pecuniary loss) arising out of the use of or inability to use the scripts or
documentation.
Your organization should internally review and assess to what extent PowerShell is
incorporated into your environment. This is especially important when importing scripts from
third parties, including content posted by other customers in the SolarWinds online IT
community, THWACK. To learn more, see Use PowerShell in SAM.
Certain PowerShell permissions are required for AppInsight for Exchange and the Exchange server.
3. When the Permissions dialog box appears, enable Full Control under the Permissions for
Everyone group, and select Allow.
4. Ensure that the group containing the polling user can access PowerShell, and click OK.
5. Verify all permissions are set and saved.
Earlier versions of SAM used FullLanguage mode on target Exchange servers. Starting in SAM
2020.2.6, use RestrictedLanguage as the minimum PSLanguageMode setting in PowerShell
on target servers. For a script to configure existing servers, see this Success Center article.
If PowerShell was installed on Windows Server 2012 with Exchange 2013 and subsequently
uninstalled, a Microsoft error removes the required registry key for remote PowerShell to work
properly. Security patches or updates may also cause this issue.
SolarWinds strongly recommends that you back up your registry before editing it. Only edit the
registry if you are experienced and confident in doing so. Using a registry editor incorrectly can
cause serious issues with your operating system, which could require you to reinstall your OS
to correct them. SolarWinds cannot guarantee resolutions to any damage resulting from
making registry edits.
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PowerShell\1\PowerShellEngine]
"ApplicationBase"="C:\\Windows\\System32\\WindowsPowerShell\\v1.0"
"PSCompatibleVersion"="1.0, 2.0"
"RuntimeVersion"="v2.0.50727"
"ConsoleHostAssemblyName"="Microsoft.PowerShell.ConsoleHost, Version=1.0.0.0,
Culture=neutral, PublicKeyToken=31bf3856ad364e35, ProcessorArchitecture=msil"
"ConsoleHostModuleName"="C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\Micr
osoft.PowerShell.ConsoleHost.dll"
"PowerShellVersion"="X.0"
By default, AppInsight for Exchange uses the following URLs for the Exchange and WinRM sessions,
where ${IP} is the IP address of the server node being added.
l Exchange: https://localhost/powershell/
l WinRM: https://${IP}:5986/wsman/
SAM connects locally with remote PowerShell. In earlier versions, the Exchange URL was
https://${IP}/powershell/.
1. Open the IIS Manager and navigate to the default website then to the PowerShell virtual
directory.
2. Verify the Virtual Path value (typically found in Advanced Settings).
SolarWinds recommends using the latest version of PowerShell. At a minimum, use PowerShell
5.1.
The two items of interest for the URL are Port and URLPrefix. If either file was modified, and does not
match the default values, edit the AppInsight for Exchange application with the correct values:
l PowerShell Windows URL: https://${IP}:9886/Custom_wsman/
l Local Exchange Endpoint: https://localhost/powershell/
Additionally, the value of Hostname must match the CN of the certificate listed in the Certificate
Thumbprint property:
As sites and application pools change through the IIS Manager, data and connections update in the
SolarWinds Platform Web Console. As you find and fix issues, stop or restart servers and pools as
required.
You can add AppInsight for IIS automatically during Discovery or add it to nodes manually via the
Node Details view. After it is applied to a node, AppInsight for IIS is considered an application and
reports data to SAM through a set of component monitors.
When finished, see Alerts and reports for AppInsight for IIS.
Use SolarWinds AppOptics to get advanced performance metrics from IIS nodes. See Integrate
AppOptics monitoring with AppInsight for IIS nodes.
Use SolarWinds Web Performance Monitor (WPM) to visualize synthetic web transaction
metrics in the context of application performance metrics on the WPM Transactions subview
on Node Details and Application Details pages. You can also create dependencies between
transactions and applications, as well as transaction and nodes. See this blog post in THWACK
for details.
The Sites widget lists the sites (both front and backend) for the IIS server. Click a site to view more
details such as response time, connections, and requests.
The Application Pools widget lists up to 5 instances of IIS application pools. You can use application
pools to separate out applications from one another. If an issue occurs with an application, it may
only affect other applications in the pool, not all applications in your environment.
To view the Performance Counter Details view, click a performance monitor in any widget.
l Administrator rights to IIS servers are needed for configuration, but are not required for polling.
l If you use the optional SolarWinds Platform Agent for Windows. When you deploy agents to
target servers, they are automatically registered with the SolarWinds Platform server as
managed nodes, polling occurs directly on the target server, and agents transmit encrypted data
to the SolarWinds Platform server.
Agentless
l Administrator rights to IIS servers are needed for configuration, but are not required for polling.
l Set up PowerShell on target servers in SAM.
Your organization should internally review and assess to what extent PowerShell is
incorporated into your environment. This is especially important when importing scripts
from third parties, including content posted by other customers in the SolarWinds online
IT community, THWACK. For details, see PowerShell security considerations.
l WinRM is enabled with a startup type of Automatic. See Enable remote access for PowerShell
with WinRM.
l AppInsight for IIS uses WinRM as the default polling method.
WMI 1025 - 5000 or By default, Windows uses a random port from these ranges for
49152 - 65535 WMI communications. The default port range differs based on the
OS so you'll need to create a firewall exception on the remote
computer.
HTTP At least one If the connection is not allowed, the HTTP Monitor is hidden.
port is
included in the
site bindings.
HTTPS At least one If the connection is not allowed, the HTTPS Monitor is hidden.
port is
included in the
site bindings.
SSL At least one If the connection is not allowed, the SSL Certificate Expiration
port is Date Monitor is hidden.
included in the
site bindings.
SMB (Windows 445 Used for Site Directory Information and Log Directory Information.
Shares)
For example, if you have an active license for 1,500 component monitors and use AppInsight for IIS to
monitor 10 IIS servers, 300 component monitors count against your total license. The number of sites
and application pools you have on these servers is irrelevant.
This leaves you with 1,200 component monitors available for use elsewhere.
(1,500 component monitors - 300 component monitors used for AppInsight for IIS = 1,200
component monitors remaining).
The example below illustrates a situation where 40 component monitors are available, but
surpassed the allowed number of 300 monitors by 60. The discrepancy is due to the fact that
AppInsight applications cannot be partially licensed, as is the case with typical applications.
When you allow SAM to automatically configure target servers for AppInsight (a process also called
"Zero Config"), SAM runs custom PowerShell scripts on target servers to:
l Configure PowerShell execution policies.
l Create a self-signed certificate for AppInsight for IIS.]
l Enable the WinRM service to provide the SolarWinds Platform server with remote access to
target servers.
l Add a firewall rule to enable remote access by WinRM and WSMan services.
l Create a WinRM listener.
Due to the complexity of AppInsight templates, allow extra time for configuration to finish
when assigning to nodes.
Use the Add Node wizard to set up AppInsight for IIS on a new node
1. Review AppInsight for IIS requirements and permissions.
2. Click Settings > All Settings > Add Node.
3. Complete the information on the Define Node step, and then click Next.
4. On the Choose Resources step in the Add Node Wizard, select AppInsight for IIS.
5. Click Next and complete the wizard as instructed.
6. Navigate to the SAM Summary page.
7. In the All Applications widget, expand the AppInsight for IIS tree view to display the new node.
8. Click Microsoft IIS to open the Configure IIS Server for Monitoring dialog box.
9. Enter Exchange credentials and click Configure Server to start the automated process. A
confirmation message appears when the process is complete.
If the node enters an Unknown state, check AppInsight for IIS requirements and
permissions for the target server.
Add AppInsight for IIS to an existing node via the Node Details view
1. Navigate to the Node Details view for the node.
2. In the Management widget, click List Resources.
If the Microsoft IIS option does not appear, review AppInsight for IIS requirements and
permissions.
5. In the All Applications widget, expand the AppInsight for IIS tree view to display the node.
6. Click Microsoft IIS to open the Configure IIS Server for Monitoring dialog box.
7. Enter Exchange credentials, and then click Configure Server to start the automated process. A
confirmation message appears when the process is complete.
If the node enters an Unknown state, check AppInsight for IIS requirements and
permissions for the target server.
If you modify the parent template, AppInsight application monitors already assigned to servers are
automatically updated to match. The primary reason to edit most AppInsight templates is to set
general configurations such as polling frequency, polling method, and thresholds for monitored
metrics before assigning templates to nodes.
Important: Changes at the template level impact all child application monitors that inherit
settings.
To edit the parent template, select it on the Manage Application Monitor Templates page and click
Edit to display component monitor details and make necessary changes. For details, see Edit a
template.
To remove an application monitor, see Remove a SAM application monitor from multiple nodes.
You can disable most AppInsight for IIS component monitors at various levels:
l Edit the parent template to mute monitoring for components in child application monitors on
individual nodes.
l Edit an application monitor assigned to a specific node to mute component monitoring on that
node.
l Disable component monitors for a specific site or application pool being monitored by
AppInsight for IIS.
Due to the complexity of this template, you cannot disable the Application Pools and Worker
Process Statistic component monitors.
Depending on how it's used, PowerShell can make your deployment vulnerable to unauthorized
access. For details, see Use PowerShell in SAM.
An easy way to add PowerShell to a target server is to configure AppInsight for IIS on the node, which
you can do in several ways:
l For an existing node currently managed via WMI, click List Resources on the Node Details view
and select Microsoft IIS directly beneath AppInsight Applications. See Add AppInsight for IIS to
an existing node.
l For a new node added via the Add Node Wizard, you'll see the same Microsoft IIS option as
provided for existing nodes.
l For multiple nodes, you can:
o Assign AppInsight for IIS via Discovery.
o Add nodes to a group and assign the AppInsight for IIS template to the group on the
You can run this script with the default arguments from the PowerShell console or specify each one.
In the following example, 192.168.2.69 is the IP address of the node to be monitored by AppInsight
for IIS and 3650 is 3,650 days (10 years).
& '.\Create self-signed certificate script.ps1' 192.168.2.69 3650
Your organization should internally review and assess to what extent PowerShell is
incorporated into your environment. This is especially important when importing scripts from
third parties, including content posted by other customers in the SolarWinds online IT
community, THWACK. To learn more, see PowerShell security considerations.
Run this script with the default arguments from the PowerShell console or specify each one, as
shown in this example:
& '.\Add firewall rule.ps1' 5988 "My custom firewall rule name"
The default port for this rule is 5986 and does not need to be specified. Custom ports, as in the
example above that uses port 5988, must be specified.
You can run this script with the default arguments from the PowerShell console or specify each one.
For example:
& '.\Update WsMan Limits.ps1'
Disclaimer: Your organization should internally review and assess to what extent PowerShell is
incorporated into your environment. This is especially important when importing scripts from
third parties, including content posted by other customers in the SolarWinds online IT
community, THWACK. To learn more, see PowerShell security considerations.
1. To configure WinRM on an IIS server, open an elevated Windows PowerShell command prompt
and run PowerShell as an administrator.
2. Copy the following text to a text editor:
winrm create winrm/config/listener?Address=*+Transport=HTTPS @
{Port="5986";CertificateThumbprint="<Thumbprint value of
certificate>";Hostname="<IP Address of Server>_Solarwinds_Zero_
Configuration"}
This statement binds the certificate to the WinRM listener and uses the ("*") wildcard symbol for
Address to allow listening on all available local addresses. Syntax may vary based on usage
inside of PowerShell or the Administrative Command prompt.
Port is the port number for the listener. The default port for WinRM is 5986, but you can change
it, if necessary.
For <Thumbprint value of certificate>, paste the self-signed certificate thumbprint, without
spaces. See Retrieve the Thumbprint of a Certificate (© 2020 Microsoft Corp, available at
docs.microsoft.com, obtained on October 29, 2020.)
Important: Quotation mark characters (") can change during copying and pasting. Using a
text editor should prevent that from happening, but if you don't get the desired results,
check the quotation marks to make sure they did not change.
3. Copy the text, paste it into the PowerShell command line, and press Enter. Results should look
something like this:
5. Press Enter.
Results should look something like this:
The following log file contains details about the WinRM configuration process:
C:\ProgramData\Solarwinds\Logs\APM\RunWinRMConfigurator.log
See also:
l Use PowerShell in SAM
l Troubleshoot application monitor polling with WinRM
l Create a WinRM HTTPS listener in SolarWinds Platform (Success Center)
The scripts are not supported under any SolarWinds support program or service. The scripts are provided AS IS without
warranty of any kind. SolarWinds further disclaims all warranties including, without limitation, any implied warranties of
merchantability or of fitness for a particular purpose. The risk arising out of the use or performance of the scripts and
documentation stays with you. In no event shall SolarWinds or anyone else involved in the creation, production, or delivery of
the scripts be liable for any damages whatsoever (including, without limitation, damages for loss of business profits,
business interruption, loss of business information, or other pecuniary loss) arising out of the use of or inability to use the
scripts or documentation.
3. The Hostname must match the CN of the certificate listed in the Certificate Thumbprint
property.
For alert details such as macros and variables, click here. See also Manage thresholds in SAM.
To learn more about alerts and reports in general, see Explore alerts and reports.
AppInsight for SQL is an AppInsight application that you can use to:
l Monitor SQL Server resource consumption, respond to alerts, and monitor expensive queries on
a single page.
l Investigate issues and performance trends without hunting through numerous views for SQL
servers.
AppInsight for SQL offers a level of detail far beyond what a SQL template can provide, allowing you
to monitor virtually every aspect of your SQL instances and databases. It can poll and report metrics
without using agents, directly accessing SQL servers using configured access permissions and
credentials via SNMP and WMI.
When you assign AppInsight for SQL to a node, an application (also called an "application monitor")
based on the AppInsight for SQL template is created on the node. In the SolarWinds Platform Web
Console, the default name for the application is "MSSQLSERVER" but can be customized.
When SAM polls for metrics, the standard Node Details view is replaced by the SQL Server Application
Summary view that shows all SQL server instances monitored by AppInsight for SQL. To access that
view, click My Dashboards > Applications > SQL Server.
On the Application Summary view, click an instance to open its Application Details view. See also
Display AppInsight for SQL data in the SolarWinds Platform Web Console
o A SQL cluster, such as those used for SolarWinds High Availability (HA).
Learn more
Platform SDK
l Display AppInsight for SQL data in the SolarWinds Platform Web Console
l Add AppInsight for SQL to a named instance
l Use AppInsight for SQL to monitor an active SQL Server cluster
l Edit the AppInsight for SQL template
l Hide databases from AppInsight for SQL in the All Databases widget
AppInsight applications provide tremendous value within SAM while consuming a fixed number
component monitor licenses. However, they cannot be partially unlicensed because the way they
collect data differs significantly from traditional application monitor templates. You can disable some
components within AppInsight applications but that will not reclaim component monitor licenses
because AppInsight applications typically monitor far greater than 50 components.
For example, AppInsight for SQL monitors over 120 individual metrics even if there is only one
database running on the server. If you don't want to monitor certain metrics, remove the warning and
critical thresholds for those components by editing the application. You will not be alerted or notified
about those components again and the components will not appear in a warning or critical state in
the SolarWinds Platform Web Console.
Although AppInsight for SQL does not require named pipes, it uses TCP connections to
discover SQL Server instances so you may see messages about named pipes that are triggered
when SAM connects to SQL Server.
A domain users must be a member of the SQL server's local admin group.
The following script configures permissions for a SQL account. You must connect to the SQL
database server as "sa" or equivalent to create an account.
This script updates the SolarWinds Platform database. Create a database backup before
running it.
Scripts are not supported under any SolarWinds support program or service. The scripts are provided
AS IS without warranty of any kind. SolarWinds further disclaims all warranties including, without
limitation, any implied warranties of merchantability or of fitness for a particular purpose. The risk
arising out of the use or performance of the scripts and documentation stays with you. In no event shall
SolarWinds or anyone else involved in the creation, production, or delivery of the scripts be liable for any
damages whatsoever (including, without limitation, damages for loss of business profits, business
interruption, loss of business information, or other pecuniary loss) arising out of the use of or inability to
use the scripts or documentation.
USE master
GRANT VIEW SERVER STATE TO [AppInsightUser]
GRANT VIEW ANY DEFINITION TO [AppInsightUser]
GRANT VIEW ANY DATABASE TO [AppInsightUser]
EXEC sp_adduser @loginame = 'AppInsightUser' ,@name_in_db = 'AppInsightUser'
GRANT EXECUTE ON xp_readerrorlog TO [AppInsightUser]
USE msdb
EXEC sp_adduser @loginame = 'AppInsightUser' ,@name_in_db = 'AppInsightUser'
EXEC sp_addrolemember N'db_datareader', N'AppInsightUser'
Windows Authentication
The following script configures permissions for a SQL account with Windows Authentication:
This script updates the SolarWinds Platform database. Create a database backup before
running it.
USE master
GRANT VIEW SERVER STATE TO "Domain\AppInsightUser"
GRANT VIEW ANY DEFINITION TO "Domain\AppInsightUser"
EXEC sp_adduser @loginame = 'Domain\AppInsightUser' ,@name_in_db =
'Domain\AppInsightUser'
GRANT EXECUTE ON xp_readerrorlog TO "Domain\AppInsightUser"
USE msdb
EXEC sp_adduser @loginame = 'Domain\AppInsightUser' ,@name_in_db =
'Domain\AppInsightUser'
EXEC sp_addrolemember N'db_datareader', N'Domain\AppInsightUser'
EXECUTE sp_MSforeachdb 'USE [?]; EXEC sp_adduser @loginame =
''Domain\AppInsightUser'', @name_in_db = ''Domain\AppInsightUser'''
To use a domain account with an SolarWinds Platform agent, the domain account needs to have “Log
on as a batch job” policy enabled for the default batch execution mode. Set this permission either
locally on the monitored SQL server or as a domain policy, which enforces the policy to all machines
within the domain.
This policy is only enabled for a LocalSystem account by default and explicitly needs to be
added for the domain account.
This user right is defined in the Default Domain Controller Group Policy object (GPO) and in the local
security policy of workstations and servers. The location for the policy is Computer
Configuration\Windows Settings\Security Settings\Local Policies\User Rights Assignment.
When you add AppInsight for SQL to a node, an application monitor (also called an "application")
based on the AppInsight for SQL template is added to the node. In the SolarWinds Platform Web
Console, the default name displayed for the application is "MSSQLSERVER."
SAM polls for metrics including read and write latency, index fragmentation, expensive queries (based
on CPU time), SQL agent job status with logs, capacity, and resource consumption for CPU, memory,
and drive space. To learn how to display monitored data, see Display AppInsight for SQL data in the
SolarWinds Platform Web Console.
To use the Discovery Wizard to add AppInsight for SQL for monitoring:
3. On the Applications panel, select the servers that you want to monitor. Only nodes with
supported versions of Microsoft SQL appear.
4. Click Next and complete the wizard as instructed.
5. Navigate to the All Applications widget and click your AppInsight for SQL application.
The Enter Credentials page appears.
6. Enter your SQL credentials and select a port (or use default port).
7. Click Test to verify the credentials and configured permissions.
8. Click Assign Credential to save and complete configuration.
Due to the complexity of AppInsight for SQL, allow extra time for node assignment to finish.
Instances are enabled after the first polling cycle, which may take a few minutes.
4. Follow the onscreen instructions to select metrics to monitor, specify polling engines, and set
other options.
5. Review settings and click Add Node.
6. Navigate to the All Applications widget and click the AppInsight for SQL application.
The Enter Credentials page appears.
7. Enter your SQL credentials and select a port (or use the default port).
8. Click Test to verify the credentials and configured permissions.
9. Click Assign Credential to save and complete configuration.
Display AppInsight for SQL data in the SolarWinds Platform Web Console
After AppInsight for SQL is added to nodes, SAM begins polling for metrics and the standard Node
Details view is replaced by the following views:
l SQL Server Application Summary view: Click My Dashboards > Applications > SQL Server to
display a list of all SQL server instances monitored by AppInsight for SQL. From here, you can
click an instance to open its Application Details view.
l AppInsight for SQL Application Details view: Click My Dashboards > Applications > SAM
Summary. In the All Application widget, expand AppInsight for SQL, and then click an instance to
display the Application Details view.
The SQL Server Application Summary view provides widgets you can use to monitor overall data for
all SQL servers including alerts, events, and consumed resources, including:
l All Applications view of all currently managed SQL servers as nodes, expandable to locate
specific nodes
l Active Application Alerts for specific alerts affecting SQL servers
l Top Processes by CPU Load, Physical Memory, Virtual Memory and more to gauge applications
consuming resources
l Top Monitored Processes by I/O Total Operations, Reads, and Writers for highest bandwidth
consumption, reads, and write latency
Expand rows in the All Applications widget to drill down into details about performance counters and
status. Click a metric to learn more about it.
Click an instance to open its AppInsight for SQL Application Details view. The following example
shows an MSSQLSERVER instance in the SolarWinds Platform demo with a critical alert:
The AppInsight for SQL Application Details view consolidates all data for the selected SQL server,
including:
l An AppStack view for troubleshooting, alerts, events, expensive queries, capacity usage, and
other metrics.
l A list of the top 10 expensive Queries by CPU time.
l WPM transaction monitor results, if SolarWinds Web Performance Monitor is installed.
l Database performance data, if SolarWinds Database Performance Analyzer is installed. See
also Use the DPA Integration Module with SAM.
To review database data in this view, select a database in the All Databases widget. The Database
Details view lists all databases on the node, alerts, AppStack, and more. To drill down to see
performance counter details in the AppInsight for SQL Application Details view, click a performance
counter in any widget.
To learn more about AppInsight for SQL, watch Deep Dive on using AppInsight Templates.
Before adding a server as a node, verify that credentials and permissions are configured on the
target SQL server.
To view monitored nodes, access the SQL Server page and specific SQL Server Details pages. See
Display AppInsight for SQL data in the SolarWinds Platform Web Console for details.
The instance becomes enabled after the first poll, which may take a few minutes.
3. Select a polling method, then select the polling engine for that node.
4. On the Choose Resources panel, select the instance to monitor.
5. Follow onscreen instructions to select metrics to monitor and specify polling engines.
Standard servers are added as nodes in the SolarWinds Platform with a specific IP address. For a
SQL Server cluster, add each server in the cluster as a node in the SolarWinds Platform, not just the
cluster object. Then assign AppInsight for SQL to the node that represents the Virtual IP address (VIP)
for the cluster, not the individual cluster members. After AppInsight is assigned, the cluster is
monitored by either WMI in legacy SAM or with WinRM in SAM.
Before you begin, review AppInsight for SQL requirements and note these details:
l The SolarWinds Platform agent for Windows is not supported for AppInsight for SQL for SQL
Server clusters. SQL clusters cannot be polled with domain credentials.
l If using Discovery to detect clusters, SAM needs to communicate with the VIP, not the cluster
member IP address. During Discovery, SAM uses DNS resolving to verify the IP address for the
cluster. If the DNS process fails or times, AppInsight for SQL is not assigned to the node even if
the provided IP is the VIP. If that occurs, manually assign the AppInsight for SQL template to the
node instead.
To add AppInsight to an active SQL Server cluster, start by identifying the VIP for the cluster.
1. Use SQL Management Studio to connect to the instance that you want monitor .
2. Execute the following query to verify the target node and instance name:
SELECT SERVERPROPERTY('ServerName')
3. To determine the IP address of the target node, open a command prompt and ping the server.
Next, add nodes to the SolarWinds Platform and assign AppInsight for SQL.
Tip: Edit the node name to be descriptive. For example, the name for this node could be
P111SQLV23 (cluster).
3. Select a polling method, then select the polling engine for that node.
4. In the Choose Resources step, select the AppInsight Application for the SQL server to monitor.
5. Complete the wizard to add the node for monitoring. The instance is enabled after the first poll,
which may take a few minutes.
6. Navigate to the All Applications widget and click your AppInsight for SQL application to display
the Enter Credentials page.
7. Enter your SQL credentials and select a port (or use default port).
8. Click Test to verify the credentials and configured permissions.
9. Click Assign Credential to save and complete configuration.
SAM begins polling for metrics automatically. To learn how to view monitored data, see Display
AppInsight for SQL data in the SolarWinds Platform Web Console.
The primary reason to edit most SAM templates is to set general configurations such as polling
frequency and thresholds for monitored metrics before assigning templates to nodes.
Some component monitors in this template have default settings that cannot be modified due
to dependencies. Also, you cannot add component monitors to this template.
To edit the template, select it on the Manage Application Monitor Templates page, click Edit, and then
make necessary changes. To begin gathering metrics, assign the template to a SQL instance.
Disabled components do not impact the status calculation of dynamic entities, such as
SQL databases, nor do they impact application status or node status, as displayed in the
SolarWinds Platform Web Console.
You can disable AppInsight for SQL component monitors at various levels:
l Edit the parent template to mute monitoring for a component in child application monitors
assigned to individual nodes. Important: This change impacts all application monitors that
inherit template settings.
l Edit the application monitor assigned to a node to mute component monitoring on that node.
Note that the following components support related Top XX widgets, so they cannot be disabled.
l Database Files
l Top Tables for Database
l Top Indexes for Database.
With administrator privileges, you can change the widgets that appear on an AppInsight for SQL
Details page. Each widget provides data configuration and display options, consuming data provided
by the template application and component monitors. Click here for details.
You can also set custom properties for the AppInsight for SQL application monitor assigned to a
specific node.
Consider adding the node ID in the Application Monitor Name field so you can easily identify
this monitor later.
To remove a database from an active AppInsight for SQL node, unmanage the AppInsight application
monitor assigned to the node to halt polling and alerts. Navigate to the Node Details view, click
Unmanage in the Application Details widget, and specify an interval for the assigned application
monitor during which no statistics will be collected.
Alternatively, hide the database from AppInsight for SQL via the All Databases widget. See also Tips &
Tricks: Stop the Madness: Avoid alerts but continue to pull statistics.
If monitoring numerous database instances and AppInsight for SQL starts to impact overall
performance in your environment, consider using an MS SQL application monitor template to monitor
some instances instead.
Data captured through a template appears on the Node Details for monitored nodes.
Hide databases from AppInsight for SQL in the All Databases widget
These steps do not "unmanage" the database. They hide the database from appearing in the All
Databases widget, but the SolarWinds Platform will continue alerting on the database. To
prevent a database from triggering alerts, unmanage the database on the Database Details
page's Management widget instead.
Follow these steps to prevent databases from appearing in the All Databases widget that is part of
AppInsight for SQL.
1. Navigate to the Management widget on the Database Details page and confirm that the
database is currently being managed.
2. Navigate to the AppInsight for SQL Details page for your SQL instance.
3. Record the last few digits of the applicationID in the browser URL. You'll need it for a later step.
Example: http://Solarwinds/Orion/APM/SqlBlack...NetObject=ABSA:168
4. On the SolarWinds Platform server, open Database Manager by clicking Start > All Programs >
SolarWinds Orion > Advanced Features > Database Manager
5. When the application loads, click Add Default Server
6. Expand the SolarWinds Platform Database to view tables for installed SolarWinds applications.
7. Locate the table 'APM_SqlBbDatabase'
8. Run the following query:
SELECT TOP 1000 * FROM [dbo].[APM_SqlBbDatabase] where applicationId = 168
9. Update the ApplicationID to match your Application ID you recorded during step 3.
10. Click "Enable table editing" above the Query text box.
11. Clear the check box in the Visible column for each database you want to hide in the All
Databases widget on the AppInsight for SQL Details page.
12. Click 'Enable table editing' again to finish the editing session.
With SAM, you can monitor resources and other health aspects of a database, as well as track how
long queries take to execute. If queries are slow, you can use DPA to track what is happening within
the DBMS. For example, is it waiting on I/O, CPU, VM scheduling, or is it blocked by another query?
With this knowledge, you can resolve the problem instead of just knowing you have a slow query.
DPAIM is automatically installed with SAM, but is not active until it's configured. See Set up the
DPA Integration Module.
To learn more about using alerts, see the SolarWinds Platform Administrator Guide or watch
Automating Alert Trigger Actions.
If the following message appears in the Database Details widget on the SQL Database - Summary
page, adjust MaxPoolSize and ConnectTimeout settings:
No valid date was received. Timeout expired. The timeout period elapsed
prior to obtaining a connection from the pool. This may have occurred
because all pooled connections were in use and max pool size was reached.
The SolarWinds Platform SDK is a set of tools that you can use to interface with the SolarWinds
Information Service (SWIS) that supports communication between the SolarWinds Platform server,
the SolarWinds Platform database, SolarWinds Platform modules like SAM and NPM, and Additional
Polling Engines. As a data access layer for the SolarWinds Platform, SWIS allows for higher-level
operations than would be allowed when making changes in SQL.
New to the SolarWinds Platform SDK and API? Read Intro to API, SDK, & SWQL on THWACK, or
watch Orion SDK 101: Intro to PowerShell and the Orion API.
Published on GitHub, some ways to use the SolarWinds Platform SDK with SAM include monitoring
metrics with API pollers and managing custom properties. For many years, the SDK has included the
CreateApplication SWIS verb that you can use to add SAM application monitor templates to
nodes, as described in the OrionSDK wiki and THWACK. However, that verb did not support complex
AppInsight templates in earlier releases.
Click here to download a ZIP file with related AppInsight scripts, plus a script to add the Windows
Scheduled Tasks Monitor (WSTM).
In scripts, APM refers to the original name for SolarWinds SAM, which is still used in database
columns and fields.
Although automation scripts can speed the configuration of large environments, you still need to
verify that target nodes meet template requirements, per the SAM Application Monitor Template
Reference. For example, to add AppInsight for Active Directory to a node, you'll need specific details,
such as:
l LDAP port
l Global Catalog (GC) port
l Encryption method
l Authentication method
When you execute a PowerShell script from the command line or the PowerShell Integrated Scripting
Environment (ISE), the script invokes the CreateApplication verb and passes parameters such as
credentials, node ID, and application template ID to the SolarWinds Platform SDK.
Scripts include annotations about the actions and variables involved. For example, if you set
credentialsSetID to 0, the script prompts for credentials each time it runs; use 3 to inherit
credentials from WMI nodes, or 4 to inherit credentials from the parent template.
l For AppInsight for Active Directory, the script doesn't disable LDAP domain components by
default, but you can use the DisableDomainComponents verb on the
Orion.APM.ActiveDirectory.Application entity, if necessary. To learn more, see Advanced setting
options.
Depending on how it's used, PowerShell can make your deployment vulnerable to unauthorized
access. For details, see Use PowerShell in SAM.
The scripts are not supported under any SolarWinds support program or service. The scripts
are provided AS IS without warranty of any kind. SolarWinds further disclaims all warranties
including, without limitation, any implied warranties of merchantability or of fitness for a
particular purpose. The risk arising out of the use or performance of the scripts and
documentation stays with you. In no event shall SolarWinds or anyone else involved in the
creation, production, or delivery of the scripts be liable for any damages whatsoever (including,
without limitation, damages for loss of business profits, business interruption, loss of business
information, or other pecuniary loss) arising out of the use of or inability to use the scripts or
documentation.
$PSVersionTable.PSVersion
o Add the SwisSnapin by running the following Add-PSSnapin cmdlet:
Add-PSSnapin -Name SwisSnapin
o For details, see SolarWinds Platform SDK PowerShell.
Depending on how it's configured, PowerShell can make your deployment vulnerable to
unauthorized access. Your organization should internally review and assess to what
extent PowerShell scripts are incorporated into your environment. See also PowerShell
security considerations.
setup wizard.
o Documentation is available at github.com/solarwinds/OrionSDK/wiki. See also Learn the
o The SolarWinds Platform SDK includes a SWQL Studio tool for validating queries and data.
o For assistance with the SDK, refer to the SDK forum in THWACK.
The SolarWinds Platform SDK is a powerful tool that can impact SolarWinds Platform
data. Users should be well-versed in SQL queries with a background in programming.
SolarWinds does not provide pre- or post-Sales support on any SolarWinds Platform SDK
customizations, including code. Experiment with the SolarWinds Platform SDK in a non-
production instance of SolarWinds Platform. Do not run untested PowerShell scripts
against a production instance.
Due to the complexity of AppInsight for Exchange and AppInsight for IIS, extra steps (known as
"Zero Config") are required on target servers, such as setting PowerShell execution policies or
adding firewall rules for WinRM.
Allow several minutes for configuration to finish. To confirm that scripts ran successfully, click
Settings > All Settings > SAM Settings > Manage Application Monitors. On the Manage Assigned
Application Monitors page, switch to the Assign Application Monitors tab.
SAM can be integrated with the standalone version of AppOptics, or the version that is combined with
the following APM solutions in the APM Integrated Experience:
l SolarWinds Loggly brings logs from the depths of your entire infrastructure into one place where
you can track activity and analyze trends.
l SolarWinds Pingdom can be used to proactively monitor your web applications, APIs, and
networks through a combination of synthetic monitoring and Real User Monitoring (RUM).
Additional requirements to integrate AppOptics with AppInsight for IIS nodes include:
l Assign AppInsight for IIS to nodes in SAM.
l Add an AppOptics API token with a View Only role, as configured in AppOptics.
This type of integration is not compatible with FIPS mode. If FIPS is enabled on the
SolarWinds Platform server, SAM stops retrieving AppOptics metrics for AppInsight
IIS nodes.
Click here to learn how to create tokens for the AppOptics API. Each token can have a different
role that provides access to specific API endpoints. For example, a View Only token provides
read-only access.
5. Return to SAM and paste the token into the relevant field. The following figure shows where to
paste a token when configuring APM service monitoring in SAM.
This figure shows where to paste a token when adding AppOptics to an IIS node.
If credentials for a specific tenant were already added, related services appear in 10 to 20 seconds,
depending on how many services are retrieved. To add credentials for a new tenant, or switch to a
different tenant, see Configure APM service monitoring in SAM.
With proper AppOptics credentials and SolarWinds Platform account rights, the APM Services page
displays the following data:
l Service name: Each service is represented by a row with a status icon. Status is calculated
based on error rates, as polled by SAM via the AppOptics API every 15 minutes, by default.
Thresholds are not involved in status calculations.
o Red exclamation point: Error rate is greater than zero. These services appear first in the
sort order, by default.
o Green check mark: Error rate is zero or null.
o Gray question mark: SAM can detect the service but no data is available so the status is
Unknown. Click the Nodes link in the service row, then click Monitor to launch the Add
Node wizard.
l Nodes: The quantity of nodes associated with the service, which corresponds to the Service
host count in AppOptics.
l SAM uses MAC and IP addresses to match nodes to services. External and ICMP nodes do not
provide that data, so they are excluded from this count.
l Average response time: How long it took for a service to respond, in milliseconds (ms).
l Average requests: The average number of requests served by the AppOptics API.
l Error rate: The number of HTTP (5xx) errors that occurred for requests served by the AppOptics
API.
Information on the APM Services page in SAM should mirror data displayed on the AppOptics >
Services page. However, discrepancies may occur because SAM and AppOptics poll data
independently of each other.
o Click a service link to view metrics in a PerfStack dashboard where you can save, export,
or share data (2).
o Click a Nodes link to open the related Node Details view (3).
To add a node for a service, click Monitor to launch the Add Node wizard (4).
o Click the View in AppOptics icon to display service details in AppOptics or the
APM Integrated Experience (5).
Related metrics also appear in the AppOptics APM Services widget on the SAM Summary
page. Click My Dashboards > Applications > SAM Summary.
See also:
l AppOptics integration requirements
l Configure APM service monitoring in SAM
l Troubleshoot APM service monitoring
Tokens are sent to the SolarWinds Platform via HTTP with plain text, instead of HTTPS.
Consider adding tokens by logging in to the SolarWinds Platform directly.
To get started:
2. If no AppOptics credentials were provided yet, the following dialog box appears. Click Configure.
If at least one set of credentials was already added, the APM Services page displays services.
To switch to a different tenant and display a different set of services and metrics, click
Configure AppOptics Credentials.
3. In the Configure AppOptics Credentials dialog box, select existing credentials or click New to
add credentials. See Retrieve a SolarWinds Cloud Token to integrate AppOptics with SAM.
Click Save to return to the APM Services page. Wait 10 to 20 seconds for the APM Services
page to refresh. If issues occur, see Troubleshoot APM service monitoring.
4. For each service, click the Nodes Count link to determine which nodes are related to a service
and if they're already being monitored, as indicated by the status icon.
l Green check mark: The service is already being monitored on a node in SAM. Click the
node hyperlink to display the Node Details view.
l Red exclamation point: The service is monitored, but is in a Critical or Down state.
l Gray question mark: The service is not yet associated with a node. Click Monitor to launch
the Add Node wizard.
Issue Solution
APM services do not l Make sure you're using the latest version of SAM.
appear l Wait 10 to 20 seconds for data to load, depending on the number of
services involved.
l Log in to AppOptics or the APM Integrated Experience and navigate
to AppOptics > Organization Settings to:
o Check service activity, and
o Verify that the API token is still valid and has a Full Access role.
Some nodes are SAM can detect the service but only retrieves data for APM services
represented by a gray associated with SAM nodes. Click the Nodes link in the service row, then
icon with a question click Monitor to launch the Add Node wizard.
mark.
Metrics on the APM If you compare data on the APM Services page in SAM with data on the
Services page do not AppOptics > Services page, you may notice discrepancies due to the
match metrics difference in polling times between the two products.
displayed for the same
service in AppOptics.
The Nodes value on the SAM uses MAC and IP addresses to match nodes to services. External and
APM Services page in ICMP nodes do not provide that data, so they are excluded from the count.
the SolarWinds
Platform Web Console
does not match the
Service host count in
AppOptics.
The Configure This option only appears on the APM Services page if you're logged in as
AppOptics Credentials an SolarWinds Platform administrator. Contact your SolarWinds Platform
link is missing on the administrator, if necessary.
APM Services page
Cannot find alerts APM alerting is not handled within the SolarWinds Platform Web Console
Use Metric Alerts in AppOptics instead.
Cannot find an API key If you have access to APM, you can find API tokens on the API Tokens tab
in Organization Settings. The service key (used for APM) is comprised of a
write-enabled token and the name of the instrumented service and takes
the format of <api-token>:<service-name>.
APM service data takes Data takes more time to load because it is loaded via a proxy. The query is
a long time to load in passed to the AppOptics API; data is not stored locally.
PerfStack
Unknown error Verify the API token and reenter it, if necessary. See Configure APM
service monitoring in SAM.
l Check the status of application stacks and see how tiers of applications interact with each
other.
l Determine which databases and users that applications send information to.
l Identify if issues are network-, server-, or application-related so you can route them to the right
team.
You can integrate SAM with either the standalone version of AppOptics, or the APM Integrated
Experience that combines AppOptics with Loggly and Pingdom.
Here are some benefits of integrating AppOptics with IIS nodes monitored in SAM:
After adding AppOptics to an IIS node, visualizations of key metrics — such as a breakdown of
response time into applications, remote calls, and database queries — appear on the subview of the
IIS Application Pool Details page, as shown in this example.
l This feature is not supported on nodes monitored via SolarWinds Platform Remote Collectors.
When you add AppOptics to a node, IIS services restart and related websites go down.
5. When the Add an Integration wizard appears, click Create a new account.
7. On the Select Nodes page, select the IIS node and click Deploy.
If no node appears, check that AppInsight for IIS is set up correctly on the target server.
See Configure AppInsight for IIS on nodes and Troubleshooting AppInsight for IIS.
SAM deploys AppOptics agents to the node and IIS services restart. Related websites go down. After
a few minutes, AppOptics performance metrics appear in relevant SAM widgets such as Top IIS
Pools.
configure a specific time and date range. Graphs show data for the last hour, by default.
Click Full Data View at the top of the subview to open a browser and log in to SolarWinds AppOptics
to display additional data, as shown in the following example:
When IIS services restart on the node, related websites go offline temporarily.
4. Click Delete.
If you receive exception errors about loading the AppOptics.Agent file or assembly on the IIS
server after removing AppOptics integration, you may need to remove the
AppOpticsinstrumentation module from the server in IIS Manager. See Troubleshoot AppOptics
integrations with IIS nodes in SAM.
For example, if you're adding AppOptics to a node, but an expected node does not appear in the
Integration wizard, check if:
l The node is set up for AppInsight for IIS. See Configure AppInsight for IIS on nodes and
Troubleshoot AppInsight for IIS.
l The node is polled by an SolarWinds Platform Remote Collector (ORC), which is not supported
by AppInsight for IIS.
l FIPS mode is enabled on the SolarWinds Platform server. The AppOptics integration is not
compatible with FIPS mode. For existing integrations, SAM stops retrieving metrics from the
AppOptics API.
The following table includes more tips. You can also search in the Success Center or THWACK.
Agent Error deploying the Check the AppOptics agent logs stored in
failure AppOptics agent. C:\ProgramData\SolarWinds\Logs\Remoting.
Internal Error accessing the Redeploy the AppOptics agent on the Manage Agents page.
error SolarWinds Platform
database, which may
occur if agent
deployment fails.
Package The AppOptics agent Run the SolarWinds Platform Configuration Wizard. Verify the
does not package was not agent package is in the default location,
exist found. \Orion\Remoting\RemoteExecutionPackage\SAM.AppOp
tics.
Missing Admin share on target Enable an Admin share on the target server.
admin server is disabled.
1. Ensure that the SolarWinds Platform server and the
share
target server belong to the same Workgroup.
2. Specify which user(s) can access Administrator Shares
(Disk Volumes).
3. Enable File and Print Sharing through the Windows
firewall.
4. Check to see if you can access the Admin share from
another computer.
5. Add AppInsight for IIS to the node via the Node Details
view, or run the Discovery Wizard.
Unknown Possible invalid Verify the API token. Reenter if necessary. Examine logs in
error API token or another these locations:
unrecognized error.
l C:\ProgramData\SolarWinds\Logs\SAM.AppOptic
s
l C:\ProgramData\SolarWinds\Logs\Remoting.
No WMI WMI on the target Enable WMI polling on the target server.
support server is disabled, or
the target server is
turned off.
App Pool No application pools Check that AppInsight for IIS is configured correctly on the
Error exist on the IIS server. target server. See Configure AppInsight for IIS on nodes and
Troubleshoot AppInsight for IIS.
IIS website A Could not load Follow steps in Uninstall the Agent. If that does not work, try
error file or assembly this workaround:
'AppOptics.Agent,
Version=x.x,
1. Start IIS Manager:
Culture=neutral, 2. Click the computer name of your IIS server.
PublicKeyToken=xx
x' or one of its 3. Click the Modules icon in the IIS category.
dependencies. The 4. Select the AppOpticsInstrumentation module, and then
system cannot find click Remove.
the file specified
message appears if 5. Restart IIS services.
SAM could not remove
If exception errors continue after removing the
AppOptics from the
AppOpticsInstrumentation module from the IIS server,
server.
remove the module from the website also.
AppOptics When you integrate Make sure the service name for the AppOptics integration in
data does AppOptics with an SAM matches the service name used in AppOptics. For
not appear IIS node, SAM details about service names, see AppOptics documentation.
in the generates a service
SolarWinds name (for example, If FIPS mode is enabled on the SolarWinds Platform
Platform microsoft-iis-2- server, SAM stops displaying AppOptics metrics.
Web solarwinds-orion-
Console application-pool).
You can use data gathered during Application Dependencies polling to:
l Understand which applications, application processes, and servers connect to each other.
l Ensure that the most important data for specific applications is monitored.
l Identify unmonitored applications and processes that require attention.
l Leverage latency and packet loss metrics to determine if an issue is caused by an application or
the network.
This contextual visibility of relationships between applications and nodes, which represent physical or
virtual servers, can reduce troubleshooting time. For example, instead of searching through various
application monitors and their component monitors to determine why an application is slow, you can
navigate to the Application Connections widget to pinpoint the source of an issue.
To provide a more granular picture of application dependencies, the Connection Details page shows
processes and ports for connections, plus server and application status, as well as latency and packet
loss statistics. This page shows the entire communication stack from one server to another, with
individual nodes representing servers.
With the Application Dependencies feature, you can see where and how servers communicate with
each other without contacting various teams to get information. You can use it to identify established
connections and provide perspectives into the connections themselves. For troubleshooting,
determine if application performance issues are due to a server issue on one side or the other, or if
issues relate to communication between the two servers.
To get started with this feature, review requirements and enable it in your environment.
l Connection Quality polling tracks TCP communication traveling from servers that host
applications to target servers. This synthetic polling collects latency and packet loss statistics
for connections without intercepting network traffic, also known as "packet sniffing."
You can deploy agents by adding at least one application monitor to each node you want to monitor,
as described in Configure Application Dependencies settings in SAM. If a node does not host an
agent, the Application Connections widget displays sample data on the Node Details page.
Enable "Allow automatic agent updates" on the Manage Agents > Edit Agent Settings page so
you don't have to update plugins manually.
To avoid performance issues, SAM does not deploy Application Dependencies plugins to
the Main Polling Engine, which is usually the SolarWinds Platform server.
If you disable Connection Quality polling, note that SAM removes the TCP agent plugin
but not the Npcap driver. If you need to remove the driver, see this article.
SAM relies on server-initiated communications to detect "from” or to" nodes, also called “passive
agents” or “agentless" nodes. Only one node in a pair requires an agent plugin. However, note that
data gathered by polling depends on communication settings for both nodes, as described here:
l If target and client nodes both host agent plugins, SAM collects data via Application
Dependency and Connection Quality polling for both nodes.
l If only the target node has an agent plugin, SAM collects IP address and port data for the client
node but not application details, process names, or connection statistics.
l If only the client node has an agent plugin, SAM collects IP address and port data for the server
node. If Connection Quality polling is enabled and SAM deployed a TCP agent plugin to the
connection source node, polling can capture latency and packet loss statistics.
Use the Manage Agents page to check the status of agent plugins.
Requirements
Permissions To configure Application Dependencies settings, use an SolarWinds Platform
Administrator account with the following Node Management rights:
l Execute Application Dependency polling
l Deploy agents to nodes
After upgrading, ADM is automatically disabled for Orion Server nodes. You can
manually enable it, if needed.
The option for enabling ADM on the node edit page is disabled by default for Orion
server nodes, enabling the PollingEnabledOnOrionServers option in centralized
settings returns access to it.
Host systems Each dependency must involve two separate physical or virtual servers, represented
as nodes in the SolarWinds Platform Web Console.
SolarWinds SAM deploys agents to flag nodes for polling so host systems must support
Platform SolarWinds Platform agent requirements.
agent
Enable "Allow automatic agent updates" on the Manage Agents > Edit Agent
Settings page so you don't have to update agents manually.
Requirements
Ports Remote systems that host applications and listen on a specific port must support
the following exceptions.
l On the destination node, allow:
o Inbound TCP connections for the port, and
l On the source node, allow an outbound TCP connection for the port from an
Nping application on any random port.
Using this feature with Windows Failover Clusters (WFCs) has additional requirements.
This feature is automatically disabled during SAM upgrades to prevent performance issues in
large environments. After upgrading SAM, enable it again.
If Application Dependency polling fails immediately after it's enabled, navigate to the Manage
Agents page to check if agents are currently being deployed. Wait 10 minutes and try again.
You can also disable Application Dependency polling for specific nodes, if necessary.
To configure Application Dependencies alerts for individual connections, navigate to a specific node,
click Edit Node, adjust Alerting Thresholds, and click Submit. You can also navigate to a node's
Connection Details page and select Thresholds from the Commands menu.
The Application Connections widget does not appear automatically on cloned, custom versions of
Node Details and Application Details views.
l To add a widget to an individual view, see Add widgets to SolarWinds Platform views.
l To add a widget to a dashboard, click Settings > All Settings > Manage Dashboards. See
Customize modern dashboards.
Sample data appears in the Application Connections widget if no dependencies are detected, or
if a node does not host an application dependency agent plugin. To deploy agents and agent
plugins, assign at least one application monitor to each node you want to monitor.
If Connection Quality polling is enabled, the Application Connections widget displays the following
data about TCP connections:
l Latency: The time required for a packet to travel across a network path from a sender to a
receiver, also called response time. The higher the latency, the greater the impact on application
performance as perceived by users. If necessary, troubleshoot latency with Performance
Analysis (PerfStack) dashboards.
l Packet Loss: The percentage of packets lost for the node with respect to packets sent. Packet
loss is usually caused by network congestion.
Tip: If nodes exceed SolarWinds Platform thresholds, add the Nodes with High Packet
Loss widget to the SAM Summary page to display nodes with similar issues. See Add
widgets for details.
Similar to Spotlight functionality in AppStack, you can click connection types and status indicators at
the top of the widget to filter data.:
TCP connections and statistics about latency and Both parent entities — either nodes or
packet loss applications.
For a more granular picture of dependencies, use the Connection Details page, as described next.
You can also use the Commands menu to configure thresholds, initiate polling, or hide events.
1. Access a Node Details view or Application Details view in the SolarWinds Platform Web
Console.
2. Click the > arrow next to a connection displayed in the Application Connections widget.
Options configured on the Application Connection Settings page impact how polling occurs across
agent-monitored nodes with connections to applications.
SAM also detects "from” and "to" nodes that rely on server-initiated communications,
known as “passive agents” or “agentless" nodes.
Disabling this feature at the global level does not impact Application Dependency settings
configured for individual nodes on the Node Details view.
SAM stops polling for nodes that are not configured for Application Dependency polling at the node
level, as described next. Connection Quality polling, if enabled, also stops.
If Connection Quality polling was originally enabled for a node, SAM removes the agent plugin
that delivered the Npcap driver but does not remove the driver. See Disable Connection Quality
polling.
To gather TCP data, SAM deploys agent plugins to nodes to track communication traveling from
clients that host applications and application processes to target nodes detected by Application
Dependency polling.
When you disable polling, SAM removes agent plugins that delivered Npcap drivers but does
not remove the actual drivers. If remaining drivers present a security concern for your
organization, see Remove an Npcap driver after disabling Connection Quality Polling.
By default, the Application Dependencies feature is disabled in new installations. It's also
automatically disabled during upgrades to avoid performance issues in large
environments. Enable the feature, as necessary.
c. The Application Connections widget does not appear automatically on cloned, custom
versions of the Node Details and Application Details views, but can be added, if necessary.
3. Verify that the feature is configured correctly.
4. Open the Manage Agents page to confirm that SolarWinds Platform agents were deployed to
nodes.
5. Review events displayed on the Connection Details page.
6. Check Application Dependency log files.
An SolarWinds Platform agent hosted on a minimally provisioned server can consume CPU usage. Try
reducing the quantity of monitored elements or increasing server resources.
If polling fails for Windows Server 2012 nodes, restart the nodes and wait for Connection Quality
polling to occur. If the issue continues, visit the SolarWinds Success Center and see Connection
Quality polling fails on Windows Server 2012 nodes.
1. Check if SAM deployed agent plugins to SolarWinds Platform agents on the node. Click Settings
> Manage Agents > Select agent > More Actions > View installed agent plugins.
2. Navigate to the Node Details view to ensure that Application Dependency polling was not
disabled for the node.
By default, the Allow Automatic Agent Updates option is enabled on the Settings > All Settings >
Product Specific Settings > Agent Settings page. SAM deploys agent plugins to agent-monitored
nodes when Application Dependency polling detects interaction between an application and/or
application process and a node. Although most SolarWinds Platform agents are deployed in advance,
application dependency agent plugins are deployed immediately if an application-to-node connection
is found.
If the Allow Automatic Agent Updates option is disabled on the Agent Settings page in the SolarWinds
Platform Web Console, SAM cannot deploy agent plugins to server nodes and the status of the agent
appears as "Plug-in update required" on the Manage Agents page.
If expected application dependencies do not appear after polling, navigate to the Manage Agents
page. If a "Plug-in update required" notice appears for a node, you can either:
l Enable the Allow Automatic Agent Updates option on the Agent Settings page so SAM can
deploy plugins automatically to all agent-managed nodes.
l Update agents individually on the Manage Agents page.
Application Dependency agent plugin deployment fails on 64-bit Linux systems and the following
message appears on the Installed Agent Plug-in page: "Installation of 'Application Dependency
Mapping - Linux x64' failed. Invalid argument Code [0x16]." This occurs because the owner of the
plugin file prevents the removal of the old version due to permission issues. Click here for
workarounds.
When Connection Quality polling is enabled on the Application Dependency Settings page, SAM
deploys ADMConnectionQuality plugins with Npcap drivers to Windows nodes to collect latency and
packet loss metrics.
If you disable Connection Quality polling, you can remove Npcap drivers, if necessary. See Remove
Npcap driver after disabling Connection Quality Polling for ADM.
This message appears for nodes running Windows 2008 or if driver installation protection is enabled
for Windows 2008 R2 or later. It is related to the Npcap driver deployed via an agent plugin that
supports the Nping tool used to gather connection statistics from nodes.
SolarWinds recommends upgrading nodes to Windows 2008 R2 or later. Otherwise, you will be
prompted to install Npcap each time polling occurs.
If Connection Quality polling is enabled, the SolarWinds Platformdeploys agents and agent-plugins to
nodes connected to clients that host applications and application processes that may trigger
warnings in third-party security software. Downloaded items include:
l An SolarWinds Platform agent.
l An agent plugin that includes an Npcap driver to support Nping.
l A Microsoft Visual C++ Redistributable package.
Stale data
The Application Dependencies feature is designed to group polls into batches for efficiency so
different data may be polled at different times and the status of nodes, applications, and connections
may not seem synchronized.
If you notice outdated data, check polling intervals on the Application Dependency Settings page, as
well as intervals defined for individual nodes on the Node Details view.
Node-specific intervals override global polling intervals defined on the Application Settings
page.
Application Dependency polling and Connection Quality polling check agent-managed nodes to which
Application Dependency plugins were deployed, but “to” and “from” connections can also be detected
with agentless nodes, as described in the following scenarios:
l If only the target node hosts an Application Dependency agent plugin:
o Application Dependency polling gathers IP address and port data for the target node.
o Data related to the client node (application, process name, etc.) and connection statistics
o Only IP address and port data are gathered from the server node.
The Last Polled value on the Connection Details page shows the latest time of Application
Dependency polling. If polling intervals were edited for individual nodes, that date may not reflect the
date of the last poll across all nodes. For example, if Node1 was polled one hour ago, but the last
large-scale Application Dependency poll occurred two hours ago, the Last Poll date reflects the most
recent period — one hour.
If applications and application processes do not have expected dependencies with nodes on the
Application Connections widget, confirm that SAM detected communication between nodes by
checking the inventory log:
C:\ProgramData\SolarWinds\Logs\ADM\{NodeID}_{NodeIP}.log
Check the data processing logs for monitoring applications on each node:
C:\ProgramData\DataProcessingLogs\NodeId-{NodeID}\*.log
If you initiate polling on the Connection Details page, Application Dependency polling starts but an
"Unknown" connection status may appear until the next Connection Quality poll occurs (every five
minutes, by default).
TCP Loopback connections established internally on a node may appear on the Application
Connections widget. A Loopback connection status indicates an internal connection on the node
(localhost connection). If the destination and source nodes are the same, Connection Quality polling
ignores the connection.
The application monitor does not contain a component monitor that SAM can refer to for the given
process or port.
A networking Windows OS subsystem is implemented as a kernel-mode device driver called the HTTP
protocol stack — also called HTTP.sys. This driver listens for HTTP requests from the network,
passes requests to IIS or other applications for processing, and returns processed responses to client
applications.
Detecting HTTP connections is not the main goal of the Application Dependencies feature. Typically,
communication between clients and HTTP servers is not permanent, and Application Dependency
polling occurs relatively infrequently so it will not detect short HTTP connections.
HTTP connections may appear in the Application Connections widget in the following circumstances:
l Random capture of common HTTP(s) occurred.
l SolarWinds Platform communication was captured during polling.
l Polling was initiated via user action in the SolarWinds Platform Web Console (for example, via
the Command option on the Connection Details page).
l HTTP communication persisted for a long time, perhaps due to tunneling of another kind of TCP
communication over HTTP(s).
Check planned jobs Polling See jobs created for node active applications.
Plan log
Check that a publish-subscribe Business See the cache that was created, along with inventory
pattern (pubsub) succeeded Service messages received for node with active applications.
log
Roles were called "Services and Applications" in SQL Server 2012 and earlier.
l Each VIP node has a unique IP address to support the feature's cluster-matching algorithm.
l A SAM application monitor, such as AppInsight for SQL, uses agentless polling to collect data
for the node.
l Application Dependency polling deploys agent plugins to agent-monitored cluster member
machines so they can be assigned to non-cluster VIP addresses.
SAM recognizes the database connection between the SolarWinds Platform server and SQL database
as a connection between an application (the SolarWinds Platform SQL Server, as monitored by a
template) and AppInsight for SQL (MSSQLSERVER) even though the target of the database
connection is SQL running on an active cluster member.
Connection Quality polling logs are stored in these locations on the SolarWinds Platform server:
l C:\ProgramData\SolarWinds\Logs\ADM\
l C:\ProgramData\SolarWinds)\Logs\Agent\
o Service name
o Service names
You can use the Database Manager utility to view the SolarWinds Platform database.
This section focuses on Dell, HP, HPE ProLiant, and IBM devices. See the SolarWinds Platform
Administrator Guide to learn how to:
l Monitor Cisco UCS Devices. The first step is adding the parent UCS controller as an SolarWinds
Platform node.
l Monitor hardware health for Nutanix clusters. After adding Hyper-V or VMware nodes for
monitoring, add the parent Nutanix cluster and provide Controller VM (CVM) credentials.
UCS and Nutanix hardware health monitoring does not currently support the SolarWinds
Platform Remote Collector feature.
To start monitoring hardware health for Dell, HP, HPE ProLiant, and IBM devices:
Although Hardware Health and Asset Inventory can both be enabled automatically during
Discovery, they can poll independently. For example, you can collect Asset Inventory data
from a node once a day, and collect hardware health every 10 minutes.
Hardware health monitoring is a database-intensive feature. Heavy usage can impact database
performance and increase the size of the SolarWinds Platform database. To improve
performance, consider how often you need to poll statistics, and how long data is archived. See
Update polling settings in the SolarWinds Platform.
Additional hardware may be supported with a limited amount of data returned by polling.
SAM shares hardware health functionality with SolarWinds Virtualization Manager (VMAN), as
documented in:
l Monitor hardware health for VMware in SAM
l Monitor Cisco UCS Devices (SolarWinds Platform Administrator Guide)
l Monitor hardware health for Nutanix clusters (SolarWinds Platform Administrator Guide)
l Required permissions for VMware, Hyper-V, and Nutanix credentials (VMAN
Administrator Guide)
l Supported versions of VMware (VMAN Administrator Guide)
Linux SNMP
Click here to learn about versions l Use SNMP for VMware nodes not polled via
supported by SAM, which match those CIM or the VMware API.
supported by VMAN. l Open port 5989 to poll VMware servers via
CIM.
SAM also supports hardware health monitoring for Nutanix clusters and Cisco UCS devices.
When a scheduled Discovery of existing servers runs, SAM automatically collects data for any servers
that support Hardware health monitoring, including VMware ESX and ESXi servers that were added to
the SolarWinds Platform using CIM protocol via port 5989.
If SAM detects a hardware monitoring agent on a VMware host, the option to monitor hardware health
appears when you click the List Resources link in the Management widget on the Node Details view,
even if hardware data is already collected via vCenter using the VMware API. When this option
appears for a VMware host, enabling it does not change the hardware polling method when Poll for
VMware is also selected.
Open port 5989 to poll VMware servers using the CIM protocol.
If polling hosts though vCenter, you may not see the Hardware Health option listed when you click List
Resources, as these nodes tend to be ICMP. This data is automatically collected by SAM, when
available, through the VMware API. Make sure the vCenter Hardware Status plugin is enabled in
vCenter so data is accessible through the VMware API.
To determine how a VMware node is currently polled, click Settings > Virtualization Settings >
VMware Settings. Drill down into Polling Method options for the node, as shown here:
SAM and SolarWinds Virtualization Manager (VMAN) have similar requirements for basic
Hardware Health monitoring. See Supported versions of VMware and Required permissions for
VMware, Hyper-V, and Nutanix credentials.
See also:
l Monitor Cisco UCS and Monitor Hardware Health for Nutanix clusters (SolarWinds Platform
Administrator Guide)
l Troubleshoot Hardware Health monitoring for ESX host servers polled through vCenter
(Success Center)
Recommended: Review Hardware health monitoring requirements for HPE and IBM devices in
SAM before proceeding.
Use the following decision tree to help determine the cause and solution to your issue.
Dell does not make array and hard disk health information visible from WMI-managed nodes.
To monitor storage health on Dell servers, use SNMP.
To monitor hardware health for devices in SAM, you can either enable hardware health monitoring for
individual nodes, or use the Discovery process to:
1. Automatically scan for nodes that meet hardware health monitoring requirements,
2. Deploy SolarWinds Platform agents that act as hardware health sensors, and
3. Enable hardware health monitoring across multiple nodes automatically.
Hardware health statistics are typically polled through SNMP from a MIB tree on devices that are
represented as nodes in the SolarWinds Platform Web Console. If an SNMP-monitored node does not
return data as expected, verify that it is properly configured for SNMP:
l Open default port 161 on the node.
l For SNMPv1 or SNMPv2c nodes, confirm that the device community string was added to the
SolarWinds Platform. The default value is Public.
l For SNMPv3 nodes, review these Success Center articles:
o SNMPv3 configuration and troubleshooting in SolarWinds Platform
If SolarWinds Platform agents were deployed to a node before it was configured to use SNMP, you
may encounter installation and configuration issues with MIBs. Use the Manage Agents page to
remove related agents, configure the node for SNMP, and then redeploy agents to the node, or run
Discovery again.
If a node was originally configured for SNMP and then you want to use the SolarWinds Platform agent
on the node for Asset Inventory or Hardware Health monitoring, see Configure SNMP for SolarWinds
Platform agents on Linux/Unix and AIX systems in SAM.
HPE systems
The HPE SNMP Agents (hp-snmp-agents) is a collection of SNMP protocol-based agents and tools
which enables monitoring of fans, power supplies, temperature sensors, and other management
events via SNMP. It also provides Foundation and Server agents, Storage Subsystem agents, Network
Subsystem agents, the SNMP Dynamically Loaded Module, and the web support applications.
For reference, see HPE SNMP Agents for Red Hat Enterprise Linux 7 Server.
1. Navigate to the Node Details view and examine the Polling Method.
2. Navigate to the Manage Agents page to verify that an SolarWinds Platform agent was deployed.
3. Confirm that the node responds with a proper OID by using either:
l The MIB Browser in SolarWinds Engineer’s Toolset (ETS), or
l Another application that can make SNMP requests.
For an overview, watch Collect MIB walk data using the SolarWinds SNMP Walk Tool. You can
also use this tool to resolve memory, CPU, or volume issues for nodes.
If the tool does not respond for a vendor-specific OID on a node, check the SolarWinds Platform agent
configuration.
When the scan finishes, save the resulting text file and open it. It should include the MIBs outlined
here:
HP IBM
CPQSTDEQ-MIB IBM-SYSTEM-HEALTH-MIB
CPQSINFO-MIB IBM-SYSTEM-ASSETID-MIB
CPQIDA-MIB IBM-SYSTEM-LMSENSOR-MIB
CPQHLTH-MIB IBM-SYSTEM-MEMORY-MIB
CPQSTSYS-MIB IBM-SYSTEM-POWER-MIB
CPQIDE-MIB IBM-SYSTEM-PROCESSOR-MIB
IBM-SYSTEM-RAID-MIB
ADAPTEC-UNIVERSAL-STORAGE-MIB
8. When the tool detects the proper Namespace, click Open Namespace and specify a path.
l For Dell, \\RemoteServerIpAddress\root\cimv2\Dell
l For HP, \\RemoteServerIpAddress\root\HPQ
l For IBM, \\RemoteServerIpAddress\root\IBMSD
9. Run a query for specific information: Select Manufacturer, Model, SerialNumber from CIM_
Chassis.
If a test fails, check the SolarWinds Platform agent configuration. You may need to redeploy
hardware-related SolarWinds Platform agents.
Resolution
l Ensure CIM is enabled on the ESX server.
l Ensure port 5989 is opened on the firewall.
Resolution
l Verify VMware credentials.
l Verify the account belongs to the root user group.
To handle these demands, you can use the Asset Inventory feature to maintain a current and detailed
inventory of a node's hardware and software, including both physical and virtual assets. This
information can also benefit those interested in tracking asset depreciation, gathering information for
insurance purposes, or managing and maintaining your infrastructure.
Data collected depends on the polling method used to collect data from nodes.
Here are some examples of Asset Inventory data displayed in the SolarWinds Platform Web Console:
To avoid overloading polling engines, do not enable Asset Inventory across hundreds of
agentless nodes in bulk. If nodes are polled by SolarWinds Platform agents, that issue should
not occur.
When Asset Inventory polling is enabled for nodes, hardware health monitoring is also enabled for
those nodes automatically, although either feature can be used independently. Polling starts
immediately and results appear on the Asset Inventory subview of the Node Details view, and other
pages. See Display Asset Inventory data in SAM.
Initially, polling continues daily at the same time for all nodes. The next time you stop and restart
SolarWinds Platformservices with the SolarWinds Platform Service Manager, the SolarWinds Platform
schedules polling jobs at random times throughout the day to avoid CPU spikes and reduce polling
engine loads. You can adjust the polling frequency, if necessary.
See also:
l Asset Inventory polling requirements
l Enable Asset Inventory polling for multiple nodes in SAM
l Enable Asset Inventory polling for individual nodes in SAM
l Display Asset Inventory data in SAM
l Display the warranty status for physical servers in SAM
l Adjust the Asset Inventory polling frequency in SAM
l Configure SSL certificate validation for Asset Inventory polling
l Disable Asset Inventory polling in SAM
l Troubleshoot Asset Inventory polling issues in SAM
SAM can also collect warranty data, display it on the SAM Summary page, and notify you about
pending expiration dates, see Display the warranty status for physical servers in SAM.
Linux SNMP
OS Protocol
VMware Common Information Model (CIM), VMware API
Click here to learn about versions Use ICMP for VMware nodes not polled by
supported by SAM, which sync with CIM or the VMware API.
VMAN.
By default, Asset Inventory polling is automatically enabled for nodes that meet Asset Inventory
requirements that are added during Discovery. You can also enable Asset Inventory polling for
individual nodes.
To enable Asset Inventory polling for a large group of nodes (for example, after adding required third-
party software to nodes), you can either:
l Run Discovery again to "re-import" the nodes. This will not affect anything currently monitored,
but Asset Inventory will be enabled on all nodes that meet requirements during the import
process. See this article for details.
l Use SWIS verbs to turn Asset Inventory on and off across multiple nodes, as described next.
To avoid overloading polling engines, do not enable Asset Inventory across hundreds of
agentless nodes in bulk. For nodes polled by SolarWinds Platform agents, that issue should not
occur.
SWIS is the data access layer that serves as an API for the SolarWinds Platform. You can use the
SolarWinds Platform SDK to interface with SWIS, which allows for higher-level operations than would
be allowed directly in SQL. The SDK includes a SWQL Studio tool to validate queries and data.
SolarWinds Query Language (SWQL —rhymes with "pickle") is a proprietary, read-only subset of SQL
that you can use to query your SolarWinds Platform database.
New to the SolarWinds Platform SDK and API? Read Intro to API, SDK, & SWQL on
THWACK, or watch Orion SDK 101: Intro to PowerShell and the Orion API.
l Use PowerShell to interact with the SolarWinds Platform SDK; v5.0 or later is recommended;
click here for script samples.
l (Recommended) Back up your SolarWinds Platform database frequently.
The SolarWinds Platform SDK is a powerful tool that can impact SolarWinds Platform
data. Users should be well-versed in SQL queries with a background in programming.
SolarWinds does not provide pre- or post-Sales support on SDK customizations, including
code. Post questions in the SDK forum in THWACK instead. Experiment with the
SolarWinds Platform SDK in a non-production instance of SolarWinds Platform. Do not
run untested PowerShell scripts against a production instance.
1. Download the OrionSDK.msi installer from GitHub and run the setup wizard.
2. Launch SWQL Studio from its default folder:
C:\Program Files (x86)\SolarWinds\Orion SDK\SWQL Studio
….<int>1</int><int>2</int><int>3</int>….
If you receive errors, verify node IDs and make sure your account has permission to perform the
action. You can also review the log file for the SWIS service, stored in this default location:
C:\ProgramData\SolarWinds\InformationService\v3.0\Orion.InformationService.log
As described in Monitor Asset Inventory in SAM, Asset Inventory polling is automatically enabled
during Discovery for nodes that meet Asset Inventory requirements. Polling begins immediately.
You can also enable this feature when adding a single node for monitoring.
5. Complete the remaining pages in the wizard to finish adding the node.
See also Enable Asset Inventory polling for multiple nodes in SAM.
After you set up third-party software on supported servers and enable the Asset Inventory feature for
nodes, polling occurs and collected data appears in several areas of the SolarWinds Platform Web
Console, including the Asset Inventory subview of the Node Details view.
After you set up third-party software on supported servers and enable the Asset Inventory feature for
nodes, polling occurs and collected data appears in several areas of the SolarWinds Platform Web
Console, such as the Asset Inventory subview of the Node Details view. You can also collect warranty
status of physical servers in your environment for Asset Inventory-enabled nodes.
Periodically, SAM sends API queries to Dell, HP, and IBM warranty validation servers to collect data
for display on the SAM Summary page. You can also enable an optional predefined alert, "Alert me
when a node warranty expires in 30 days".
Unlike daily Asset Inventory polling, warranty data is polled on various schedules, via API queries, to
avoid overtaxing polling engines. When you first enable Asset Inventory polling for a node, SAM polls
for warranty data immediately. After that, SAM follows these schedules:
For nodes with warranties that... SAM polls for data every...
Expire after 1 year 60 days
No polling occurs if node warranty remains expired for more than 60 days.
After you set up third-party software on supported servers and enable the Asset Inventory feature for
nodes, the SolarWinds Platform executes polling jobs immediately and then continues polling at the
same time each day until you restart SolarWinds Platform services, at which point polling jobs are
rescheduled at random times throughout the day to reduce loads on polling engines.
Polling uses less than 100 KB of database space per node. For an environment with 1,000 servers,
that translates to just under 100 MB of disk space. If you find that Asset Inventory polling strains your
polling engine(s), you can adjust the polling interval to suit your needs. Generally, Asset Inventory data
does not need to be collected with the same degree of regularity as status information because data
doesn't change often.
Another alternative is to add an Additional Polling Engine (APE), as described in the Scalability
Guidelines for SolarWinds products.
4. Click Submit.
Another option is to adjust Advanced Configuration settings for Asset Inventory. The default value is 1
minute but you can expand that time to 1 through 12 hours. However, note that updated Advanced
Configuration settings are only applied to nodes for which this feature is enabled, moving forward. To
force the change on existing nodes, disable Asset Inventory on a node, wait a few minutes, and then
enable it again. See also Enable Asset Inventory polling for multiple nodes in SAM.
By default, SAM ignores warnings that occur when validating SSL certificates on target systems
during Asset Inventory polling. You can change that setting so users are prompted to verify untrusted
connections before proceeding. .
5. On the Global tab of the Advanced Configuration page, scroll down to the AssetInventory
section.
6. Select the CimVerifiesServerCertificate check box, and then scroll down to click Save.
7. Restart SolarWinds Platform services in the SolarWinds Platform Service Manager, and then
wait a few minutes for changes to occur.
When Asset Inventory polling is enabled for nodes, polling starts immediately and results appear on
the Asset Inventory subview of the Node Details view. Initially, polling occurs daily at the same time
for all nodes. The next time you stop and restart SolarWinds Platform services, the SolarWinds
Platform schedules polling jobs at random times throughout the day to avoid CPU spikes and reduce
polling engine loads.
To reduce polling, you can adjust the polling frequency or disable Asset Inventory on nodes.
If expected Asset Inventory data does not appear for a node, verify that the feature is enabled and that
any necessary third-party software is installed. The SolarWinds Platform uses standard protocols
such as SNMP and WMI to collect Asset Inventory data, but not all information is available natively
from an OS without installing agent software from the hardware vendor.
If you encounter CPU spikes or heavy polling engine loads, note that when Asset Inventory is first
enabled on nodes, polling occurs daily at the same time across all nodes. If you stop and restart
SolarWinds Platform services, the SolarWinds Platform will schedule polling jobs at random times
throughout the day. You can also adjust the polling frequency, if necessary.
To avoid overloading polling engines, do not enable Asset Inventory across hundreds of
agentless nodes in bulk. If nodes are polled by SolarWinds Platform agents, that issue should
not occur.
You can also search the SolarWinds online IT community, THWACK, for troubleshooting tips.
Use the Credentials Library to manage user names and passwords for SAM 1. Click Settings
component monitors that need to run in the context of a user account, or > All Settings.
require credentials to access data on target servers.
2. Under Product
See Use the Credentials Library for SAM component monitor credentials. Specific
Settings, click
SAM Settings.
3. Click
Credentials
Library.
Use the Certificate Credential Library to store user names, private keys, key 1. Click Settings
types, and passwords for Linux and Unix script monitors. > All Settings.
See Use the Certificate Credentials Library to store SSH keys for Linux/Unix 2. Under Product
script monitors. Specific
Settings, click
SAM Settings.
3. Click
Certificate
Credentials
Library.
SolarWinds Tokens have replaced standard SolarWinds Platform credentials for Container
Monitoring. Update all container services added in earlier versions to use SolarWinds Tokens
instead of SolarWinds Platform credentials. See the SolarWinds Platform Administrator Guide
for details.
1. Log in to the SolarWinds Platform Web Console with an SolarWinds Platform administrator
account.
l SAM includes other places where you can work with credentials, such as the Credentials Library
for component monitors. For details, see Manage credentials in SAM.
For API pollers created in earlier versions of SAM, add API credentials on the Manage
Credentials page, and then edit API pollers to use new credentials.
Add a credential
1. Click Settings > All Settings > Manage API Poller Credentials.
2. When the Manage Credentials page appears, click New.
3. Specify the credential type, such as OAuth 2.0.
4. Add a name for the credential and fill out the remaining fields
5. Click Save.
Added credentials are sent by HTTP in plain text, instead of HTTPS. SolarWinds recommends
logging in to the SolarWinds Platform Web Console directly from the SolarWinds Platform
server to add credentials.
4. Click Save.
Delete credentials
1. Select the credentials you want to delete.
Credentials currently in use cannot be deleted. For example, if API keys are assigned to an
API poller, remove them from the poller first.
2. Click Delete.
3. When prompted, confirm the deletion.
The Credentials Library described here differs from the Certificate Credentials Library that
stores SSH keys for Linux and Unix script monitors, and the Manage Credentials page where
you can work with credentials for API Pollers and AppOptics integrations.
For example, to use a WMI component monitor, you must provide valid domain or computer
credentials. Or, if your web server requires credentials, you must provide the appropriate credentials
to access the protected sections of your site. Those credentials can be stored in the Credentials
Library.
These credentials can be used with the "Inherit credential from node" option for component monitors
within application monitor templates, as well as individual application monitors.
account under which the agent service runs on the target node.
o For Linux nodes, see Credentials and privileges used on Linux/Unix-based computers.
l If SNMP credentials were provided for a node during Discovery, you do not need to specify
additional credentials for SNMP operations. To learn more, see SNMP credentials for the
SolarWinds Platform.
l Credentials can be used several times if you use Application Discovery to scan nodes and apply
templates to nodes automatically. If credentials are incorrect, the account may become locked
out. To avoid lockouts that affect actual users, consider using service accounts for monitoring
instead.
l If each component monitor within an application monitor requires a separate credential, you
cannot specify credentials while creating an application monitor with the Add Node Wizard or
the Add New Application Monitor wizard. Instead, create the application monitor first, and then
configure credentials for individual component monitors by editing the individual application
monitor.
l For Windows credentials that access information through WMI, use the following syntaxes:
o DomainOrComputerName\user name for domain-level authentication, or
o User Name for workgroup-level authentication.
If you delete a credential set, be sure to update any component monitors that use those
credentials.
Certificates can be used to authenticate Linux devices monitored in SAM. Linux, Unix, and Nagios
script monitors also support certificate-based authentication.
The Certificate Credentials Library differs from the Credentials Library that stores standard
authentication credentials for component monitors. For example, a WMI component monitor
may need to run as a particular user (or service account) to collect information. See Use the
Credentials Library for SAM component monitor credentials and the Setting Credentials in SAM
video.
4. Select one or more Linux/Unix/Nagios script component monitors to edit by checking the boxes
to the left of each monitor and clicking Multi-Edit.
5. Check the Authentication Type box and select User name and PrivateKey from the drop-down
menu.
6. Check the Credential for Monitoring box, select the credentials from the drop-down menu, and
click Save.
4. In the Credential for Monitoring field drop-down menu, select a set of credentials.
5. Click Submit.