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.
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 standard MINIMUM HEALTH STATES configuration function.
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](/configure/topology/view_state_configuration.md#write-a-custom-view-health-state-configuration-function).