Ad Widget

Collapse

Extension API for zabbix_agent (plugins)

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • just4fun
    Member
    • Jun 2010
    • 32

    #1

    Extension API for zabbix_agent (plugins)

    Anyone else ever thought about an extension API for zabbix_agent(d) ?
    Like the "Smart Plugins" for HP Openview?

    I know how to configure the agent to run external programs, but wouldn't it
    be much more comfortable (or even only cool) to have the possiblility to write
    and use your own plugins?

    Christian
  • richlv
    Senior Member
    Zabbix Certified Trainer
    Zabbix Certified SpecialistZabbix Certified Professional
    • Oct 2005
    • 3112

    #2
    comfortable - probably not, current approach allows to use pretty much any language.

    cool - that would be a bad reason to spend development time on it

    one reason to go beyond current userparameter approach would be performance, but that would be both some development time and also fragmentation - it would introduce problem that some projects are facing with abandoned and incompatible plugins.

    still, community involvement benefits would be notable, so that might appear at some point.
    Zabbix 3.0 Network Monitoring book

    Comment

    • James Wells
      Senior Member
      • Jun 2005
      • 664

      #3
      Greetings,
      Originally posted by just4fun
      Anyone else ever thought about an extension API for zabbix_agent(d) ?
      Like the "Smart Plugins" for HP Openview?
      Just coming off a stint with BrokenView... Errr OpenView, I would have to vote a resounding no on this.

      Having said that however, I can see some value to a more clearly defined set of templates, an extension of the UserParam system, and a lot of value by embedding LUA into the agent. But "plugins" would not really be worthwhile for a number of reasons;
      1. Traditionally Plugins are too narrowly scoped. Often, plugins are created to scratch their author's own itch, which is a good thing, but because it is not meant the be a total solution, the author usually stops just after scratching their own itch, which leaves the plugin too focused on one feature or one set of features.
      2. Plugins have a very poor history of maintenance. Too often an author will create a plugin, refreshing it for a version or two then stabilize it on the version that they are using. This tends to make for a very short lifecycle for most plugins.
      3. Plugins rarely do more than add a couple of capabilities. Most plugin authors will add the extra features and then stop development. Unfortunately, this generally leads to poor documentation, poor support, and even poorer QA.


      Now, embedding LUA would be a much better solution as you would get all of the benefits of a plugin system, but with lesser versions of the drawbacks. By it's very nature, the language is fairly self-documenting, forward compatible, and completely open.
      Unofficial Zabbix Developer

      Comment

      • Alexei
        Founder, CEO
        Zabbix Certified Trainer
        Zabbix Certified SpecialistZabbix Certified Professional
        • Sep 2004
        • 5654

        #4
        FYI, support of loadable modules is coming in Zabbix 2.2. Please have a look at http://blog.zabbix.com/zabbix-2-2-fe...dable-modules/
        Alexei Vladishev
        Creator of Zabbix, Product manager
        New York | Tokyo | Riga
        My Twitter

        Comment

        Working...