Uploaded image for project: 'ZABBIX BUGS AND ISSUES'
  1. ZABBIX BUGS AND ISSUES
  2. ZBX-9095

Ruby script sometimes fails as External check

XMLWordPrintable

    • Icon: Incident report Incident report
    • Resolution: Won't fix
    • Icon: Blocker Blocker
    • None
    • 2.2.7, 2.4.2
    • Proxy (P), Server (S)
    • Ruby script as external script.

      Sometimes Ruby script fails because of FD = 0 (stdin) is closed by Zabbix server/proxy before script execution.

      The problem is described in https://redmine.ruby-lang.org/issues/5723 issue:

      [BUG] rb_update_max_fd: invalid fd (0) given.
      ruby 1.9.3p0 (2011-10-30 revision 33570) [i686-linux]
      
      -- Control frame information -----------------------------------------------
      c:0001 p:---- s:0002 b:0002 l:000001 d:000001 TOP
      
      -- C level backtrace information -------------------------------------------
      -e [0x8173762]
      -e [0x81b7de8]
      -e(rb_bug+0x35) [0x81b7e85]
      -e [0x8073427]
      -e [0x8079be0]
      -e [0x806da5a]
      -e(ruby_init+0x97) [0x805b317]
      -e [0x8058887]
      /lib/libc.so.6(__libc_start_main+0xdc) [0x3cedec]
      -e [0x8058781]
      
      -- Other runtime information -----------------------------------------------
      
      0: can't convert false into String (TypeError)
      

      The trace above is stored as item value.

      Zabbix closed FD = 0 to decrease usage of files and avoid situations when max opened files option are reached. I suppose we need to document that Zabbix can use huge amount of opened FDs (files).

            Unassigned Unassigned
            dotneft Alexey Pustovalov
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: