-
Type:
Patch request
-
Resolution: Unresolved
-
Priority:
Trivial
-
None
-
Affects Version/s: None
-
Component/s: None
-
Environment:Product: Zabbix - FortiGate by HTTP Template
Template URL: FortiGate by HTTP Template
Template Version: 7.4-0
Zabbix: 7.2.2
Description:
When using the "FortiGate by HTTP" template, SD-WAN member discovery fails if the SD-WAN health check on the FortiGate device is set to "check all sd-wan members". The discovery process seems to depend on the health check configuration, leading to incomplete or failed discovery under this setup.
Error after Discovery:
Preprocessing failed for: {"data":{},"error":"TypeError: cannot read property 'length' of undefined."}
1. Failed: cannot extract value from json by path "$.data.member_lld": no data matches the specified path
Steps to reproduce:
- Apply the "FortiGate by HTTP" template to a FortiGate device.
- Configure the SD-WAN health check on the FortiGate to "check all sd-wan members".
- Trigger SD-WAN member discovery in Zabbix.
- Notice that SD-WAN members are not discovered or the discovery is incomplete.
Result:
See attached file "health-check.json". Health check "Default_DNS" has "All SD-WAN members" configured, health check "ping_pub_dns" has the individual members selected.
Expected:
Health checks with "All SD-WAN members" set should not result in discovery errors.
Suggested Fix:
Modify the SD-WAN member discovery logic in the template to avoid dependency on the health check configuration. It should directly query SD-WAN member details independently to ensure all members are correctly discovered.