This article covers several topics in more detail than covered in Dynamic Sensor Basics
Sensor Evaluation Order
When sensors are evaluated, the rules are applied in order and the first matching one is used. Consider the following example.
If the value was 2000, the first sensor would evaluate and since 2000 is greater than 100, it will return Warning. Since it the intent was for 2000 to be an Error, the order needs to be reversed
Creation and Evaluation Condition Synchronization
When creating a dynamic sensor, the creation logic should match the lowest error condition of the sensor (has health level lower than 1.0). This example, would cause the sensor to get created when greater than 0. However, the error state is generated only if the value is greater than 10.
As an example, if the value was 1, the sensor would get created. It would then evaluate the rules and be set to Success. If there are thousands of objects be evaluated, such as the cities in our fire watch example, you do not want a sensor for every city, only the ones under the exception conditions. Sensors are created when needed and are set to expire (Dynamic Sensor Life Cycle). In this case, since 1 is not an exception, the sensor will expire. However, the next time the underlying metrics change, this sensor will re-evaluate and repeat the process creating a scenario where the sensors appear and than disappear repeatedly. There are cases where you do want all objects to show, but in that case, they also do not typically expire.