All of the check categories we explored before cover a very wide range of possible devices, but there's always that one that doesn't play well with standard monitoring protocols, can't have the agent installed, and is buggy in general. A real-life example would be a UPS that provides temperature information on the web interface, but doesn't provide this data over SNMP. Or, maybe we would like to collect some information remotely that Zabbix doesn't support yet—for example, monitoring how much time an SSL certificate has until it expires.
In Zabbix, such information can be collected with external checks or external scripts. While user parameters are scripts run by the Zabbix agent, external check scripts are run directly by the Zabbix server.
First, we should figure out the command to find out the remaining certificate validity period...