HTTP default checks and policies

  • Release version: Zurich
  • Updated July 31, 2025
  • 2 minutes to read
  • Summarize
    Summarized using AI
    This content was generated using new OpenAI-powered functionality. Results are provided on an as is basis and are not guaranteed to be accurate or complete.

    Summary of HTTP default checks and policies

    Agent Client Collector offers predefined policies for HTTP health monitoring, enabling ServiceNow customers to track the availability, responsiveness, and performance of HTTP endpoints. These policies include specific checks designed to verify HTTP behavior, response times, and collect detailed HTTP metrics.

    Show full answer Show less

    HTTP Entry Point Events Policy

    This policy contains checks that monitor HTTP endpoint behaviors and trigger events based on the results.

    • Check: util.check-http-follow-redirect
      - Verifies the ability to follow HTTP redirects up to a specified number.
      - Supports authentication options, AWS credentials for fetching config JSON from S3, and customizable URL monitoring.
      - Typical use case: Confirm that redirects are followed correctly to ensure endpoint reachability.
      - Example command: check-head-redirect.rb -R 10 -u 'https://servicenow.com'
      - Output: Generates an OK event if redirects are successfully followed.
    • Check: util.check-http-response
      - Measures HTTP response time and raises WARNING or CRITICAL events if thresholds are exceeded.
      - Allows configuration of warning and critical timeout thresholds in milliseconds.
      - Example command: check-head-redirect.rb -R 10 -u 'https://servicenow.com' -w 3000 -c 5000
      - Output: Generates events indicating response time status (OK, WARNING, CRITICAL).

    HTTP Entry Point Metrics Policy

    This policy focuses on gathering detailed HTTP performance metrics using curl, requiring a proxy agent.

    • Check: util.metrics-http-curl
      - Retrieves granular metrics such as total time, DNS lookup time, connection time, redirect time, start transfer time, and HTTP status code.
      - Supports passing additional curl arguments and custom metric naming schemes.
      - Example command: metrics-curl.rb -u myURL.com -a -Lk
      - Output: Provides precise timing values and HTTP status codes for performance analysis.

    Practical Benefits for ServiceNow Customers

    • Facilitates proactive HTTP endpoint health monitoring with configurable thresholds and authentication options.
    • Enables detection of redirect failures and slow responses that may impact service availability.
    • Delivers detailed performance metrics to analyze HTTP request lifecycle stages and identify bottlenecks.
    • Supports integration with AWS S3 for dynamic configuration management, enhancing flexibility in cloud environments.
    • Outputs standardized events and metrics compatible with ServiceNow’s monitoring workflows for streamlined incident management.

    Agent Client Collector provides the following policies for HTTP health monitoring. Policies come with the checks specified in the tables below.

    Table 1. HTTP entry point events policy
    Type Check Description Usage and Usage Example Output
    Event util.check-http-follow-redirect Verifies that redirection links can be followed in a set number of requests.
    Usage check-head-redirect.rb (options):
    • -A, --auth-first-only: Use basic auth on first request only.
    • -aws-access-key-id: AWS Access Key. Either set ENV["AWS_ACCESS_KEY_ID"] or provide it as an option on agent.
    • -r -aws-region: AWS Region (defaults to us-east-1).
    • --aws-secret-access-key: AWS Secret Access Key. Either set ENV["AWS_SECRET_ACCESS_KEY"] or provide it as an option on agent.
    • -R --redirect: Follow first <N> redirects
    • -g --get-redirects: Follow first <N> redirects with GET requests.
    • -s, --s3-config-bucket: S3 config bucket to get configuration.
    • -k, --s3-config-key: S3 config key to get configuration.
    • -u, --url: URL needs to be updated in Monitoring HTTP Entrypoint/cmdb_ci_endpoint_http_list.do for the CI.
    The Aws-region, aws-secret-key, aws-access-key ,s3-config, s3-config-key parameters are useful if you do not want to configure connection information in other check parameters. If a bucket and key have access to the environment in which the Sensu check executes in, provide an AWS key and token and the checks pull the specified JSON file from S3 and merge the JSON config into the current check configuration.

    Usage example: command: check-head-redirect.rb -R 10 -u 'https://servicenow.com'

    Check Head Redirect OK
    Event util.check-http-response Verifies URL response time and raises a CRITICAL/WARNING event if elapsed time exceeds provided CRITICAL/WARNING thresholds. Otherwise, it raises an OK event.

    Usage: check-head-redirect.rb (options)

    • -R, --redirect: Follow first <N> redirects.
    • -w --timeout_warning: Set the timeout threshold for warning in milliseconds.
    • -c --timeout_critical: Set the timeout threshold for critical in milliseconds.
    • -u, --url URL needs to be updated in Monitoring HTTP Entrypoint/cmdb_ci_endpoint_http_list.do for the CI.

    Usage example: command: check-head-redirect.rb -R 10 -u 'https://servicenow.com' -w 3000 -c 5000

    Check Head Redirect OK
    Table 2. HTTP entry point metrics policy
    Type Check Description Usage and Usage Example Output
    Metric util.metrics-http-curl Retrieves metrics on HTTP endpoints using curl.

    This check requires a proxy agent.

    Usage:
    • -a, --curl_args "CURL ARGS": Additional arguments to pass to curl.
    • s, --scheme SCHEME: Metric naming scheme, text to append to metric (Default: hostname).
    • -u, --url: URL needs to be updated in Monitoring HTTP Entrypoint/cmdb_ci_endpoint_http_list.do for the CI.

    Usage example: metrics-curl.rb -u myURL.com -a -Lk

    Check run successfully. Output:

    ws10.curl_timings.time_total 0.219622 1642749209

    ws10.curl_timings.time_namelookup 0.145494 1642749209

    ws10.curl_timings.time_connect 0.151103 1642749209

    ws10.curl_timings.time_pretransfer 0.168569 1642749209

    ws10.curl_timings.time_redirect 0.095899 1642749209

    ws10.curl_timings.time_starttransfer 0.219351 1642749209

    ws10.curl_timings.http_code 200 1642749209