Ad Widget

Collapse

Switching from Nagios to Zabbix - custom check

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • gduser
    Junior Member
    • Apr 2014
    • 1

    #1

    Switching from Nagios to Zabbix - custom check

    Newbie here.

    I have been using Nagios and have a custom check plugin (python script) stored in check_mk/checks.

    I need to make this script work with Zabbix.
    Is this considered an ExternalScript?

    How to the check_info, snmp_info methods work in Zabbix?
  • steveboyson
    Senior Member
    • Jul 2013
    • 582

    #2
    It is either an external script (which can be run on the zabbix server itself only) or a UserParameter script which needs to be hooked into /etc/zabbx/zabbix-agentd.conf as "UserParameter=....".

    See the docs about that.

    In difference to Nagios, Zabbix sends only single values back to the server. For having more than one value returned you need to use trapper items.

    Basically it works like "request a single value -> receive a single value" or "trigger a script by requesting a single value -> run script, send multiple values by using zabbix_sender into zabbix trapper items-> return status result as single value".

    Comment

    • tatapoum
      Senior Member
      • Jan 2014
      • 185

      #3
      Yes, the philosophy if different, particularly in three ways :
      - Zabbix doesn't need any scripting for a lot of stuff, because there are native checks implemented in the server or in the agent (SNMP, simple checks, IPMI, ODBC, JMX, perfmon, etc), see https://www.zabbix.com/documentation...tems/itemtypes. So all the configuration is done with the WebUI. For the rest, you can use external scripts.
      - Zabbix doesn't poll multiple items at a time. It can poll one item at a time or you can bulk load multiple items using zabbix_sender.
      - Zabbix can use "Low-Level Discovery" to discover the items to check (https://www.zabbix.com/documentation...evel_discovery). So for most item types, you create a LLD rule to discover and create an index table (of the filesystems, the nics, whatever), and add one or more item prototypes, that uses this index. You can also use external scripts for LLD discovery (they must output a JSON-formatted array of properties).

      Comment

      Working...