When the Data API is down, this trigger reports an inability to collect data, and the trigger does not fire. Replacing the expression with this solved the evaluation problem:
But then Zabbix was not resolving the problem created when the Data API was running again. Adding this expression as a "Recovery expression" solved that problem:
Note that when the Data API process is down, Zabbix reports the following 2 template items as "not supported", which can be misleading:
Process - % Processor Time - fmwipd
Process - Thread Count - fmwipd
I only tested this with the "FMS process not running - Data API - Windows" template trigger, but I am guessing the same would be true for the other "FMS process not running" triggers that rely on evaluating the last thread count to 0.
There is a trigger called "FMS process not running - Data API - Windows" in the Soliant template; its "problem expression" is this:
last(/Soliant FMS Windows/perf_counter[\Process(fmwipd)\Thread Count])=0
When the Data API is down, this trigger reports an inability to collect data, and the trigger does not fire. Replacing the expression with this solved the evaluation problem:
nodata(/Soliant FMS Windows/perf_counter[\Process(fmwipd)\Thread Count],1m)=1
But then Zabbix was not resolving the problem created when the Data API was running again. Adding this expression as a "Recovery expression" solved that problem:
last(/Soliant FMS Windows/perf_counter[\Process(fmwipd)\Thread Count])>0
Note that when the Data API process is down, Zabbix reports the following 2 template items as "not supported", which can be misleading: Process - % Processor Time - fmwipd Process - Thread Count - fmwipd
I only tested this with the "FMS process not running - Data API - Windows" template trigger, but I am guessing the same would be true for the other "FMS process not running" triggers that rely on evaluating the last thread count to 0.