.. PRTG Manual: Monitoring via HTTP

HTTP is a standard application layer protocol and the basis for data communication on the internet. HTTP is a request-response method for client-server architectures, where the client sends a request and the server processes and responds to the request.

Monitoring via HTTP is useful if you want to monitor websites or web servers. It enables you to keep an eye on the availability and download times of a website or the performance statistics of a web server. There are also a lot of other possible use cases for HTTP sensors. For example, you can request any application programming interface (API) that is reachable via HTTP and monitor returned values. This approach lets you include almost any type of device or application into your monitoring.

This type monitors the availability of a website or a specific website element. For example, the HTTP sensor shows how long the HTML code of a website takes to load. If the sensor shows a loading time that is much longer than expected, the website may not be responding or unavailable.

Cloud HTTP Monitoring Provides Better Performance Statistics

The HTTP sensor uses different HTTP requests to request the specified URL.

The HTTP Advanced sensor also monitors the availability of a website, along with other parameters such as bytes received, download bandwidth (speed), and time to first byte, which shows you how fast your web server responds. This sensor lets you use a (custom) user agent when connecting to the target URL and lets you send custom HTTP headers to the target URL.

The Cloud HTTP sensor monitors a web server from various locations across the globe. For example, the URL of a website to measure the loading time of a page’s source code or the URL of a page asset to measure its availability and loading time. It also shows the global average response time.

The Common SaaS sensor monitors the availability of your cloud services and is an important pillar for unified monitoring.

Content Monitoring

This type monitors internal values of a web server based application or changes to specific content on a website. The HTTP Full Web Page sensor measures the time it takes to download a web page including all embedded page elements, for example Flash content or images.

This monitoring option can create a lot of bandwidth traffic, depending on the page size and the scanning interval.

Additionally, the HTTP Content sensor monitors a numerical value returned by an HTTP request. A ‘change’ notification can optionally be triggered to notify you of changes to the content.

Example: Content Monitoring

For example, consider a URL http://www.example.com/status.html that returns a PHP script with the current system status in a simple HTML page.

The sensor calls the URL with every scanning interval and only regards the two values in square brackets [ ], handling each of them in one channel. The additional description text and HTML tags are not necessary. In this example, they are added in case a human calls the URL.

If you define the number of channels as 1, the sensor only reads the first value. The second value is ignored. Using 3 as number of channels results in a sensor error message.

To be notified when the website content changes, you first need to configure a Trigger 'change notification' in the sensor's settings and then the notification itself.

The HTTP Transaction sensor checks if a web shop is working as expected: with a series of requests, for example, you can simulate the login, purchasing, and shipping processes. Only if all actions can be completed successfully in a row, the check returns an "OK" message. If anything goes wrong, you are immediately alerted and can react instantly to avoid loss of earnings for your company because the web shop is unavailable or very slow.

Apache Web Server Monitoring

The HTTP Apache ModStatus PerfStats and HTTP Apache ModStatus Totals sensors monitor performance statistics and the activity of an Apache web server using mod_status over HTTP. Among other HTTP sensors, these sensors let you enter credentials for web pages that need authentication and let you choose the necessary authentication method.

Security Monitoring

PRTG also provides the option to monitor the security of your website by checking the status of Secure Sockets Layer (SSL) certificates and the security of a connection.

SSL Certificate sensor: monitors the certificate of a secure SSL/TLS connection. For example, it displays whether a certificate has been revoked, or is trusted as root authority, or is self-signed.

SSL Security Check sensor: monitors the SSL connectivity to the port of a device. It tries to connect to the specified TCP/IP port number of a device with various SSL/TLS protocol versions and shows if a specific protocol is supported.

Push Monitoring

PRTG provides the option to monitor passively received data. For this purpose, you can set up a device in a way that it automatically sends the data to PRTG. Specific sensors can receive this data and alert you based on your individual settings. For example, all Linux/Unix and most network devices support remote devices generating data, which has to be configured on each device, and sending the messages to a probe system. Usually, only the destination IP and port are required.

You can also monitor other types of data from your website, for example the number of website visitors via the HTTP XML/REST Value sensor. The sensor lets you monitor values within the returned Extensible Markup Language (XML) code, provided your web analytics tool has an XML export option. The HTTP Data Advanced sensor access a web server and retrieves XML or JavaScript Object Notation (JSON) encoded data.

The REST Custom sensor queries a Representational State Transfer (REST) application programming interface (API) endpoint and maps the JSON or XML result to sensor values. The mapping rule has to be available as a REST configuration file in JSON template (*.template) format according to the PRTG API definition.

For details about the return value format, see section Custom Sensors.

HTTP Status Codes

The HTTP sensors show their status depending on the HTTP status codes that they receive. By default, the sensor states are the following:

HTTP Status Code

HTTP Sensor Status

2xx Success

Up (Green)

3xx Redirection

Warning (Yellow, Down (Red) for too many redirects)

4xx Client Error

Down (Red)

5xx Server Error

Down (Red)

You need to configure your HTTP sensors manually only if you want to change these default reactions. In this case, you can change the sensor status based on limits and/or keyword checks.