Add custom scripts
In addition to the built-in checks, it is possible to create custom agent checks using the user parameter feature.
Moreover, a powerful feature of a Zabbix agent is the ability to execute custom scripts. Anyone can extend Zabbix agent functionality by creating scripts in programming languages like shell script, Perl, Python, Ruby or any other that can be executed. The result of the executed script is sent to Zabbix server, which stores and processes it like any other check.
In external checks a Zabbix server can run custom scripts from their own server.
Loadable modules offer a way of extending Zabbix functionality that is more performance-minded than the user parameter option or external checks. In addition to greater performance and the ability to implement any logic, modules have the potential to be developed and shared within the Zabbix community. Supported for Unix-like systems, a loadable module is basically a shared library used by Zabbix server or agent and loaded on startup.