Uchiwa uses Sensu /health API endpoint to determine the health of API hosts. If an API host is not healthy, Uchiwa doesn't attempt to poll it when refreshing a given datacenter.
Current Behavior
Unhealthy API hosts have an equal probability of being used on each polling interval.
Possible Solution
Implement health check with state tracking sufficient to avoid polling API hosts we know to be unhealthy.
Steps to Reproduce (for bugs)
Configure a Sensu data center with two API hosts
Disable the API on one of the hosts.
Observe that you have a 50/50 chance of polling the unhealthy API host
Context
When Uchiwa fails to refresh data from a configured API host, visibility into the last known state is lost, making it even harder to respond to the kinds of error states Sensu is meant to monitor for.
Your Environment
Uchiwa version used: 1.5.0
Sensu version used: 1.6.1
Operating System and version (e.g. Ubuntu 14.04): Centos 7
Expected Behavior
Uchiwa uses Sensu
/health
API endpoint to determine the health of API hosts. If an API host is not healthy, Uchiwa doesn't attempt to poll it when refreshing a given datacenter.Current Behavior
Unhealthy API hosts have an equal probability of being used on each polling interval.
Possible Solution
Implement health check with state tracking sufficient to avoid polling API hosts we know to be unhealthy.
Steps to Reproduce (for bugs)
Context
When Uchiwa fails to refresh data from a configured API host, visibility into the last known state is lost, making it even harder to respond to the kinds of error states Sensu is meant to monitor for.
Your Environment