We were facing an agent down problem and we were able to detect that any test on port like this net.tcp.service[tcp,177.135.158.6,3305] (testing port 3305 of this host) disable the agent running the test (in our case is app1mzabbix003p) in the case the port 3305 become unavailable. When this test fails the agent stops responding. Disabling the test solves this problem.
Here is the output in our Zabbix server.
10162:20190705:093013.455 Zabbix agent item "net.tcp.service[tcp,177.135.158.6,3305]" on host "app1mzabbix003p.sicredi.net" failed: first network error, wait for 15 seconds
10150:20190705:093113.198 temporarily disabling Zabbix agent checks on host "app1mzabbix003p.sicredi.net": host unavailable
Important... the host holding the item is not the same that are being tested (app1mzabbix003p is not 177.135.158.6) so if the port 3305 is unavailable, app1mzabbix003p becomes unavailable.
Here is the output in our Zabbix server.
10162:20190705:093013.455 Zabbix agent item "net.tcp.service[tcp,177.135.158.6,3305]" on host "app1mzabbix003p.sicredi.net" failed: first network error, wait for 15 seconds
10150:20190705:093113.198 temporarily disabling Zabbix agent checks on host "app1mzabbix003p.sicredi.net": host unavailable
Important... the host holding the item is not the same that are being tested (app1mzabbix003p is not 177.135.158.6) so if the port 3305 is unavailable, app1mzabbix003p becomes unavailable.