In this article I review how to monitor custom targets on the NetBeez dashboard to verify applications’ availability and performance from multiple end-users or network locations. The benefits of a custom monitoring target is to identify the end-users or network locations that are experiencing problems with applications, and correct them as soon as possible.
The process of creating a custom target is pretty straightforward. Before starting, you will need to create a resource within the target for each FQDN, IP address, or URL associated with the application. For each target resource, you then select the tests that will be used to monitor that destination. The tests come with default settings such as interval, timeout, alert types, etc. These settings can be changed based on specific needs. Finally the target is created and pushed to the NetBeez agents selected, whether they are remote workers or network sensors. Let’s see what type of tests NetBeez agents support, and what common custom targets users configure.
Monitor Custom Targets with Real-Time Tests
Currently, NetBeez supports five types of real-time tests: ping, DNS, HTTP, traceroute, and path analysis.
- Ping – Ping can be run as an ICMP echo request or as a TCP socket connection. The ICMP command supports extra parameters such as: Maximum Transmission Unit (MTU), Don’t Fragment (DF) bit, DSCP value. The TCP supports various connection parameters like SYN, ACK, FIN, PUSH, etc. Jitter and Mean Opinions Score (MOS) can be enabled on ping tests to help monitor online voice and video conferencing performance. Ping tests should have their intervals be equal to 5 seconds or less.
- DNS – A DNS test executes a lookup for a given FQDN. This test is implemented with the dig command. The DNS supports the DNS server as an optional parameter. If left empty, each agent will use the assigned DNS server.
- HTTP – The HTTP test consists of a GET request, implemented with the command curl. The command supports both HTTP and HTTPS pages, custom URLs, requests via proxy servers (authenticated and non), basic and NTLM authentication for pages.
- Traceroute – Traceroute tests support the ICMP, TCP, and UDP protocols. In NetBeez, you can set as parameters the destination port number, the max number of hops, the timeout per hop, and the DSCP value of the probe packets.
- Path Analysis – The Path Analysis feature augments the existing traceroute capability for more accurate, real-time visibility on equal-cost multi-path network topologies, such as the Internet. For each hop, path analysis provides extensive traceroute information including AS number and Geo location.
Let’s see now how these tests can be mixed and matched to monitor specific applications.
Monitoring a Web Application
To monitor a web service, you should include the following tests:
- Ping (optional) – Reports the round-trip time and packet loss to the server where the application is hosted; if ICMP is not allowed, the user can configure a TCP-based ping test to the remote host’s TCP port 80 or port 443.
- DNS – Verifies that the web service’s FQDN is working and the end-user clients can resolve the FQDN associated with the application.
- HTTPS – Performs an HTTP(S) GET to the URL provided in the address, verifying that the web service is available to the users.
- Path Analysis – Verifies that routes to the application are not finding hops with high response time, which can cause congestion and performance degradation to users.
On the NetBeez dashboard, by comparing the status and performance of the test results, the support can determine whether a problem is related to the remote network, the Internet. the webserver, or the DNS. Failures or performance issues can generate alerts and incidents. If you want to learn more about this, read the previous post on how alerting and incident management is implemented in NetBeez’s anomaly detection.
In the following screenshot we see that a salesforce target is well performing and doesn’t have any problems as all the tests are green and no alerts are open in the timeline.
In this one you can see that all the agents are having HTTPS performance issues with the webservice, causing alerts and notifications to be triggered. This is a clear signal of an application issue.
Monitoring a DNS Service
When monitoring a DNS service we want to ensure that the servers are reachable by the end-users and that the domain name resolution process is working and responding to clients’ requests. In NetBeez, we implement this monitoring by creating a custom DNS target with two resources:
- One resource for each DNS server’s IP address to monitor with ping the network latency to it and with traceroute (or path analysis) to verify if routers along the network path are causing issues.
- One resource to verify that the domain name resolution process is working on each of the DNS servers specified in the previous step; here we only include as many DNS tests as servers we with to monitor and use as destination a test FQDN (e.g. the website netbeez.net). In the DNS test options include one DNS test for each one of the DNS servers to be monitored.
This custom target will provide availability and performance data for DNS servers, detecting interruptions or degradations of service.
Monitoring a Thick Client Application
Thick client applications can be monitored using a TCP-based ping test, which verifies that a specific TCP/IP port is open and how long it takes to establish a connection. This test can be run in parallel with ICMP-based ping, DNS, and traceroute/path analysis. The real-time data collected is used to verify the status and health of the application. In the following screenshot you can see a custom target defined by IP running ping tests to TCP port 3306 and traceroute.
These three custom targets are just some of the many options users have to monitor the digital experience of remote users. In the upcoming release 11, users will be able to configure predefined targets to the most common cloud applications and SaaS, further simplifying the process. Stay tuned and subscribe to our blog post if you want to learn more and stay up to date with new product developments. If you want to see this live, request a demo.