Sha256: 7530df22ffc5dade5555fe90121ec8699757c0631b6bf15579cd3da8f3f95ee9

Contents?: true

Size: 1.43 KB

Versions: 27

Compression:

Stored size: 1.43 KB

Contents

class ZabbixApi
  class Graphs < Basic

    def array_flag
      true
    end

    def method_name
      "graph"
    end

    def indentify
      "name"
    end

    def get_full_data(data)
      log "[DEBUG] Call get_full_data with parametrs: #{data.inspect}"

      @client.api_request(
        :method => "#{method_name}.get",
        :params => {
          :search => {
            indentify.to_sym => data[indentify.to_sym]
          },
          :output => "extend"
        }
      )
    end

    def get_ids_by_host(data)
      ids = []
      graphs = Hash.new
      result = @client.api_request(:method => "graph.get", :params => {:filter => {:host => data[:host]}, :output => "extend"})
      result.each do |graph|
        num  = graph['graphid']
        name = graph['name']
        graphs[name] = num
        filter = data[:filter]

        unless filter.nil?
          if /#{filter}/ =~ name
            ids.push(graphs[name])
          end
        else
            ids.push(graphs[name])
        end
      end
      ids
    end

    def get_items(data)
      @client.api_request(:method => "graphitem.get", :params => { :graphids => [data], :output => "extend" } )
    end

    def create_or_update(data)
      graphid = get_id(:name => data[:name], :templateid => data[:templateid])
      graphid ? _update(data.merge(:graphid => graphid)) : create(data)
    end

    def _update(data)
      data.delete(:name)
      update(data)
    end

  end
end

Version data entries

27 entries across 17 versions & 1 rubygems

Version Path
zabbixapi-2.2.4 lib/zabbixapi/classes/graphs.rb
zabbixapi-2.2.3 lib/zabbixapi/classes/graphs.rb
zabbixapi-2.2.2 lib/zabbixapi/classes/graphs.rb
zabbixapi-2.4.0 lib/zabbixapi/classes/graphs.rb
zabbixapi-2.2.1 lib/zabbixapi/classes/graphs.rb
zabbixapi-2.2.0 lib/zabbixapi/classes/graphs.rb
zabbixapi-2.0.0 lib/zabbixapi/classes/graphs.rb
zabbixapi-0.6.6 lib/zabbixapi/2.0/classes/graphs.rb
zabbixapi-0.6.6 lib/zabbixapi/1.8/classes/graphs.rb
zabbixapi-0.6.4 lib/zabbixapi/2.0/classes/graphs.rb
zabbixapi-0.6.4 lib/zabbixapi/1.8/classes/graphs.rb
zabbixapi-0.6.3 lib/zabbixapi/2.0/classes/graphs.rb
zabbixapi-0.6.3 lib/zabbixapi/1.8/classes/graphs.rb
zabbixapi-0.6.2 lib/zabbixapi/2.0/classes/graphs.rb
zabbixapi-0.6.2 lib/zabbixapi/1.8/classes/graphs.rb
zabbixapi-0.6.1 lib/zabbixapi/2.0/classes/graphs.rb
zabbixapi-0.6.1 lib/zabbixapi/1.8/classes/graphs.rb
zabbixapi-0.6.0 lib/zabbixapi/2.0/classes/graphs.rb
zabbixapi-0.6.0 lib/zabbixapi/1.8/classes/graphs.rb
zabbixapi-0.5.9 lib/zabbixapi/1.8/classes/graphs.rb