Fortinet Document Library

Version:


Table of Contents

User Guide

21.4.0
Copy Link

HTTP

The HTTP check has multiple check types that fulfill different services.

  • HTTP port

  • HTTP HEAD

  • HTTP check

Control Panel configuration 

To get started, perform the following steps:

  1. From the Control Panel, go to the Instance Details page of the instance where you want to add HTTP monitoring.

  2. In the Monitoring Config tab, click Add Monitoring. The Monitoring Catalog will be displayed.

  3. Select HTTP from the monitoring catalog.

HTTP port configuration 

HTTP port checks are used to test if a specific port is available.

HTTP HEAD configuration 

While the HTTP Port check tests if a port is reachable, the HTTP HEAD check tests if a HEAD request will return its appropriate response. A HEAD request is used to ask only for information about the page and not the whole page itself. This can be useful if you do not want to use up your servers' bandwidth or use unnecessary resources. If the HTTP HEAD check results in a 200 or a 300 status code, then the service is considered up, if it results in a 4xx or a 5xx, then the service is considered down.

HTTP check configuration 

The HTTP check configuration allows you to optionally specify the URI/path to the resource as well as check for specific content on a webpage.

If the HTTP check result in a 200, then the check is considered successful, if it results in a 4xx or a 5xx, then the check is considered a failure. You can also create custom success and failure status codes. In the Advanced tab, look for the Custom Success Status Codes or Custom Failure Status Code and enter a comma-separated list of your custom status codes.

You can also optionally configure thresholds for this metric. See Configure incident alert and response time thresholds for more information.

Resources with one or more redirects may report higher load times than a browser experience.

Monitoring a specific endpoint 

The HTTP  Options module of the Advanced tab lets you add a specific path to check.

For example, if you wanted to monitor http://docs.fortinet.com/fortimonitor/ you would create a server with a fully qualified domain name (FQDN) of www.fortinet.com and set the Path field to /fortimonitor/. This functionality works with both GET and POST requests. For GET requests, the path can contain additional parameters (i.e. /fortimonitor/?source=web). For POST requests, additional key/value pairs can be set in the HTTP Parameters field.

Content Matching  

Content matches can either be straightforward string matches or, for more complicated matching can be full regular expressions. Our infrastructure uses the Python regular expression module; see the Python docs for details on the exact syntax supported.

Content matching allows you to do a number of in-depth checks such as looking for error messages that might get included on a page. You can also use this functionality combined with the ability to perform HTTP POST operations to perform a login transaction to a web application and make sure the login succeeds and returns the proper welcome message. This way, you can ensure both your application server and underlying database are working properly.

HTTP

The HTTP check has multiple check types that fulfill different services.

  • HTTP port

  • HTTP HEAD

  • HTTP check

Control Panel configuration 

To get started, perform the following steps:

  1. From the Control Panel, go to the Instance Details page of the instance where you want to add HTTP monitoring.

  2. In the Monitoring Config tab, click Add Monitoring. The Monitoring Catalog will be displayed.

  3. Select HTTP from the monitoring catalog.

HTTP port configuration 

HTTP port checks are used to test if a specific port is available.

HTTP HEAD configuration 

While the HTTP Port check tests if a port is reachable, the HTTP HEAD check tests if a HEAD request will return its appropriate response. A HEAD request is used to ask only for information about the page and not the whole page itself. This can be useful if you do not want to use up your servers' bandwidth or use unnecessary resources. If the HTTP HEAD check results in a 200 or a 300 status code, then the service is considered up, if it results in a 4xx or a 5xx, then the service is considered down.

HTTP check configuration 

The HTTP check configuration allows you to optionally specify the URI/path to the resource as well as check for specific content on a webpage.

If the HTTP check result in a 200, then the check is considered successful, if it results in a 4xx or a 5xx, then the check is considered a failure. You can also create custom success and failure status codes. In the Advanced tab, look for the Custom Success Status Codes or Custom Failure Status Code and enter a comma-separated list of your custom status codes.

You can also optionally configure thresholds for this metric. See Configure incident alert and response time thresholds for more information.

Resources with one or more redirects may report higher load times than a browser experience.

Monitoring a specific endpoint 

The HTTP  Options module of the Advanced tab lets you add a specific path to check.

For example, if you wanted to monitor http://docs.fortinet.com/fortimonitor/ you would create a server with a fully qualified domain name (FQDN) of www.fortinet.com and set the Path field to /fortimonitor/. This functionality works with both GET and POST requests. For GET requests, the path can contain additional parameters (i.e. /fortimonitor/?source=web). For POST requests, additional key/value pairs can be set in the HTTP Parameters field.

Content Matching  

Content matches can either be straightforward string matches or, for more complicated matching can be full regular expressions. Our infrastructure uses the Python regular expression module; see the Python docs for details on the exact syntax supported.

Content matching allows you to do a number of in-depth checks such as looking for error messages that might get included on a page. You can also use this functionality combined with the ability to perform HTTP POST operations to perform a login transaction to a web application and make sure the login succeeds and returns the proper welcome message. This way, you can ensure both your application server and underlying database are working properly.