Menu
Grafana Cloud

HTTP and HTTPS

HTTP and HTTPS checks are used to test websites. Uptime and response latency are measured like other check types. These checks can also be configured for more advanced tests like if a site is using a specific version of SSL, for SSL certificate expiration, or if HTTP automatically redirects to HTTPS.

Additionally there’s a specialized type called “MultiHTTP” that supports testing multiple URLs in a single check.

Options

HTTP checks have the following additional settings:

HTTP settings

Option nameDescription
Request methodThe HTTP method the probe will use
Request bodyThe body of the HTTP request
Request headersThe set of headers to send with the request
Compression algorithmThe compression algorithm to expect in the response
Proxy URLThe URL of the proxy used to connect to the target
Proxy connect headersName/value pairs of headers to send to the proxy

These configuration options do not produce any additional labels in the resulting metrics.

Compression

If you specify a compression algorithm, the body response is required to contain a header matching that value and the body itself must be compressed using that algorithm. The check will fail if that’s not the case.

TLS config

Option nameDescription
Disable target certificate validationWhether to validate the certificate that is presented
Server nameThe server name used during certificate validation
CA certificateThe certificate for the certificate authority
Client certificateThe client certificate to present during authentication
Client keyThe corresponding key for the client certificate

Authentication

Option nameDescription
Include bearer authorization header in requestUse bearer authentication
Include basic authorization header in requestUse basic authentication

Validation

Option nameDescription
Valid status codesStatus codes considered as valid responses (defaults to 2xx)
Valid HTTP versionsHTTP versions considered as valid responses
SSL optionsWhether to require or reject SSL (defaults to ignore)
Regex validationsSet of regular expression validations

For each regular expression validation, you have to specify whether to match a header or the body of the response. In either case, you have to specify a regular expression (using Go’s Syntax). The logic of the match can be inverted; normally the check will fail if the header or body matches the provided regular expression, but with invert match selected, the check will fail if the header or body does not match the provided regular expression. For header matches, you can also specify that a missing header does not cause the check to fail.

Avanced options

Option nameDescription
IP versionThe Internet Procotol version to use (V4, V6 or any)
Follow redirectsWhether to follow redirects or to stop at the first response
Cache busting query parameter nameThe name of the parameter appended to the URL to prevent caching

Metrics

Metric nameDescription
probe_all_duration_secondsReturns how long the probe took to complete in seconds (histogram)
probe_all_successDisplays whether or not the probe was a success (summary)
probe_dns_lookup_all_time_secondsReturns the time taken for probe dns lookup in seconds (histogram)
probe_dns_lookup_time_secondsReturns the time taken for probe dns lookup in seconds
probe_duration_secondsReturns how long the probe took to complete in seconds
probe_failed_due_to_regexIndicates if probe failed due to regex
probe_http_all_duration_secondsDuration of http request by phase, summed over all redirects (histogram)
probe_http_content_lengthLength of http content response
probe_http_duration_secondsDuration of http request by phase, summed over all redirects
probe_http_redirectsThe number of redirects
probe_http_sslIndicates if SSL was used for the final redirect
probe_http_status_codeResponse HTTP status code
probe_http_uncompressed_body_lengthLength of uncompressed response body
probe_http_versionReturns the version of HTTP of the probe response
probe_ip_addr_hashSpecifies the hash of IP address. It’s useful to detect if the IP address changes.
probe_ip_protocolSpecifies whether probe ip protocol is IP4 or IP6
probe_ssl_earliest_cert_expiryReturns last SSL chain expiry in unixtime
probe_ssl_last_chain_expiry_timestamp_secondsReturns last SSL chain expiry in timestamp
probe_ssl_last_chain_infoContains SSL leaf certificate information
probe_successDisplays whether or not the probe was a success
probe_tls_version_infoReturns the TLS version used or NaN when unknown
sm_check_infoProvides information about a single check configuration