Health Check API Configuration

MetaDefender ICAP Server version 5.1.1 or newer

Health check API feature supports you to verify MetaDefender ICAP Server application readiness.

The readiness condition is determined via product configurations, see more at Configure health check policy.

Using the health check API

Health check API expects to return HTTP(S) 200 Successful only when all pre-configured conditions met.

REST API endpoint:

MethodURLAuthFunction
GET/readyzNoneHeath check endpoint.

URL query string:

nametypedetailrequire
verbosebooleanShow detailed result of health checkoptional

API responses:

  • Status code: 200 (Heathy e.g. ICAP service is fully up and running, and ready for process request)
json elementtypeDescription
databaseobjectDatabase connection
statusstringConnection status: true/false
license
statusstring

License status

expired,invalid,ok

core_rules
requiredstring

Additional step to check the availability of MD Core rule

  • true: status code will return 503 if there is any MD Core rule NOT available
  • false: Ignore MD Core rule status
statusstringMD Core rule available status: true/false
  • Status code: 503 (Not healthy e.g. not ready to handle any request yet)
  • Status code: 500 (ICAP service is down - internal server error)

Example:

request
Copy
respond
Copy

Configure health check policy

You are supported to adjust thresholds on vital criterias as your own policy tailored for heath check verification, via both REST API and MetaDefender ICAP Server management console.

Using UI

The relevant settings could be found under "Settings" page.

Since MetaDefender ICAP Server v5.2.1, allow to configure to check the MetaDefender Core 's workflows for MetaDefender ICAP Server, expected the product to return "unhealthy" when:

  • At least one MetaDefender Core workflow is unavailable.
  • or all MetaDefender Core workflows are unavailable.
ValueDescription
Enable health checkOn / OffEnabling this option will allow MetaDefender ICAP Server automatically run a background task to collect application operational data for health check logic.

Using administrative REST API

MethodURLFunctionAuth
GET/admin/config/healthcheckGet setting heath checkAdministrator{ "core_rules": true,``"core_rules.config": { "check_all_rules": true }, "database": true, "enable_feature": true, "license": true }
POST/admin/config/healthcheckSet setting heath checkAdministrator

{ "enable_feature": true/false, "core_rules": true/false, "core_rules.config": { "check_all_rules": true/false } }

enable_feature: enable or disable this features

core_rules: enable required check core rules (default: false)

check_all_rules: (default: false)

  • true : /readyz will return status code 503 if ALL MD Core rules are not available (mean: all MD Core connect to ICAP are down or ALL MD Core rules are deleted from MD Core)
  • false : /readyz will return status code 503 if ALL MD Core rules are not available (mean: all MD Core connect to ICAP are down or ALL MD Core rules are deleted from MD Core)
Type to search, ESC to discard
Type to search, ESC to discard
Type to search, ESC to discard
  Last updated