Reacting to each event in an environment can cause a lot of noise. This may be both undesirable and unnecessary. For example, if one or multiple components have an impact on a service, it can be sufficient to report on changes to the problem itself and not each related state change.
StackState can reduce this noise by looking at the overall health state of a view rather than that of individual elements. The view health state is determined by the combined health of its elements. When a view changes its health state, a view state change event is triggered and that can in turn trigger an event notification or automated action.
A view can report its health state in one of four colours:
Green - CLEAR
Orange - DEVIATING
Red - CRITICAL
Gray - View health state reporting disabled. See configure view health state.
When the View health state changes, it generates a
ViewHealthStateChangedEvent. This event can be used to trigger an event notification, such as an e-mail or Slack message.
View health state is calculated by a view state configuration function. To configure a view to report its health state:
In the StackState UI, click Views from the main menu.
Click on the pencil icon next to a view name to edit the view.
Set View Health State Enabled to On.
Select a Configuration function to use to calculate the view health.
You can use the standard view state configuration function or create your own.
For details of the available configuration functions, go to Settings > Functions > View Health State Configuration Functions.
Provide any required arguments. These will vary according to the view health state configuration function selected. For example, for the default MINIMUM HEALTH STATES configuration function:
minCriticalHealthStates - Set to at least 1. This is the number of CRITICAL (red) health states required for the view to report a CRITICAL health state.
minDeviatingHealthStates - Set to at least 1. This is the number of DEVIATING (orange) health states required for the view to report a DEVIATING health state.
Click UPDATE to save the new configuration to the view.
The view health will update immediately.
You can set up event handlers to trigger event notifications and actions whenever a view state changes.
The MINIMUM HEALTH STATES view health state configuration function calculates the health state of the view as follows:
The view has a
CRITICAL health state when more than the minCriticalHealthStates components inside the view have a
CRITICAL health state. This does not count propagated health states.
The view has a
DEVIATING health state When more than the minDeviatingHealthStates components inside the view have a
DEVIATING health state. This does not count propagated health states.
In all other situations, the view has a
CLEAR health state.
The MINIMUM HEALTH STATES view health state configuration function should be seen as an example and a good starting point to create a custom view health state configuration function.