This article will show you how to set up different monitors for a given application. You will be able to configure App monitors for different types of resources such as Websites, Databases, Files, Servers, Custom Metrics, and more. Below will show you how to set up all these monitors related to your app.
The Monitoring Tab
To set up an App monitor, first navigate to the Stacks page and go to the App Dashboard of the App you wish to configure a monitor for. From the Monitoring Tab of the App Dashboard, you can configure monitors for your App across one or more Environments. Click "Configure" to begin adding monitors to the App.
Choosing the Environment
Establishing the Alert Settings
When configuring App monitors, you will have the option of establishing the thresholds and waiting period before a Warning, Critical, or Outage Alert occurs. To see how this is controlled, you can find more information in Configuring Your First Monitors.
Configure App Monitors
Stackify applies industry best practices monitors and "smart default" thresholds on every app discovered automatically. When you configure app monitoring for the first time on an app, you will see those defaults present, and the defaults in place will be applied based on the type of application.
For each grouping, you are able to set the Frequency with which the checks are made for all monitors within the group.
Configure Key Transactions
For the Key Performance Tab you can add monitors for specific SQL queries or Web Requests for your app's performance. These additional queries and web requests are discovered by Stackify's CLR Profiler in APM+. Click here to see how to enable the profiler and click here to see how to gain in depth insight about your apps using the APM+ tab.
Once either a Web Request or SQL query is added from the App Configuration Wizard, results will show up on the Monitoring tab of the Key Transaction section, as shown above.
Configure Server Monitors
Much like App monitors, the Server monitors will monitor system-related health across all servers running this application in the chosen Environment.
By setting up these Server monitors here where they are associated with their application and environment, any server outages will automatically propagate out to their impacted applications as well. This also ensures that any new servers running the application in this environment will fall under this application monitoring configuration.
Configure Performance Counters (Windows Only)
Any Performance Counters that might be installed on the servers hosting your application in the selected Environment should be visible from the Performance Counters section. As the App and Server configurations also utilize Performance Counters under the covers, it's generally a good idea to start your search for monitors under the appropriate category under one of those tabs first, and then resort to Performance Counters tab last.
Configure Custom Metrics
By using the Stackify Custom Metrics API, you can add your custom metrics to the App Dashboard. Once Stackify begins receiving your custom metrics, each metric can be configured not just to display, but also can be configured to alert and notify when thresholds are exceeded, just like any other monitor. If you discontinue using a custom metric, you can also remove old metrics from the dashboard here.
For a given App in a selected Environment, you can configure Alerts and Notifications on Errors in a number of aspects.
There are two error count monitors that can tell you how many errors you've reported in a given time - either # of errors in the past minute, or # of errors in the last 60 minutes. These error count monitors can tell you when you've had a spike in active errors, regardless of what kind of error it might be.
(You can get more information on configuring Stackify Error Reporting here.)
Configure Resource Monitors
A Resource in Stackify is something that is external to the App that either helps the App complete its tasks, conveys some externally measurable indication of App health, or that the App is dependent on for proper function. Here you can proactively configure monitors on Service Bus Queues/Topics, Database Queries, and Web Sites (monitored either externally or from an existing Agent within your infrastructure).
Configure Azure Service Bus Queue/Topic Monitors
Before you setup a Service Bus monitor, you'll need a connection. If you haven't already created one from Settings before coming to the App Dashboard, you can do it right from here using the Create Connection feature. You can see more about setting up Service Bus connections here.
The queues and topics that you monitor from the context of this App and Environment will help you determine if your app is processing queued messages properly, and can be a great leading indicator of a problem.
Configure Database Query Monitors
Here you can configure a new query from scratch by providing the connection information and the query, or you can choose an existing one that you setup previously. You can see more about setting up Database Connections here. If you have an existing Connection and Query to use, you can select them here and Stackify will associate the monitor with this App and Environment.
Common uses of Database Monitors include query performance and data integrity checks, just to name a couple.
Configure Web Site Monitors
You will have the option to have a Website Monitor to be checked remotely by Stackify or internally from a selected server that has the Stackify Monitoring Agent installed. The website monitor just requires the URL to get started, and it will be added as a monitor.
To see more about configuring Website Monitors, click here.
Configure MBeans Monitors
Once you have a working JMX connection for your Java App running in a Java App container, you will be able to add MBean monitors to your App Dashboard. To configure MBeans, you will need to browse through the different MBeans to find the ones you want to add. Once added, they will be reflected below, where you can set the Alert thresholds. (Not available for IIS).
Configure Notification Settings
Your Notification Group will specify who receives emails and SMS messages when a Monitor goes into Alert state. You can set multiple recipients of these Notifications in any of the severity levels, and all will apply to this App in this Environment for all Alerts.
Saving and Copying Your App Monitors
Once you have configured and saved your App monitors for the selected environment, all of these App monitors will propagate out to all applications running within the selected Environment, including for new servers that are later added to the environment and detected to be running the application.
However, if you want to copy certain configurations items and apply them to other environments, you can do this by checking the checkboxes as seen above. This is an easy way to copy configurations from one environment to another in part or in whole. The Copy and Save feature will be available in the Configure App Monitor window for your Apps that belong to more than one environment.
Viewing Your Monitors
After configuring some monitors at the App level, you will be able to see the monitors listed in the App Dashboard.