Skip to main content

Monitoring Chef Automate

Use the authenticated https endpoint /status to monitor your Chef Automate installation.

Checking the Status Endpoint

The authenticated endpoint /status provides status for the Chef Automate installation as well as for its component services. When all Chef Automate component services are up, /status returns a response code of 200. Otherwise, /status returns 500.

The status of a service can be OK, UNKNOWN, or CRITICAL, and is shown in the JSON output:

 {  "ok": false,  "service_status": [  {  "service": "deployment-service",  "status": "OK"  },  {  "service": "config-mgmt-service",  "status": "UNKNOWN"  },  {  "service": "ingest-service",  "status": "CRITICAL"  },  ]  } 

To use /status, set up an authentication token for use with your monitoring system by following the steps below:

  1. Generate a token:

    chef-automate iam token create --id <token-id> <token-name> 
  2. Create a policy that allows your created token to access the /status endpoint.

    curl -k -H "api-token: <admin-token>" -d '{ "name": "Monitoring", "id": "monitoring", "members": [ "token:<token-id>" ], "statements": [ { "effect": "ALLOW", "actions": [ "system:status:get" ], "projects": [ "*" ] } ] }' -X POST https://automate.example.com/apis/iam/v2/policies?pretty 
  3. Test that your token and policy give you access to the /status endpoint by running the following command:

    curl -k -H "api-token: <token-id>" https://automate.example.com/api/v0/status?pretty 

    The output appears in the following JSON format:

     {  "ok": true,  "services": [  {  "name": "deployment-service",  "status": "OK"  },  {  "name": "backup-gateway",  "status": "OK"  },  {  "name": "automate-postgresql",  "status": "OK"  },  ]  } 
  4. After establishing your authentication token and confirming access, connect to the /status endpoint.

Edit this page on GitHub

Thank you for your feedback!

×