Class: ZabbixManager::Drules
- Defined in:
- lib/zabbix_manager/classes/drules.rb
Instance Method Summary collapse
-
#create_or_update(data) ⇒ Object
通过 Zabbix API 创建或更新 Drule 对象.
-
#default_options ⇒ Object
创建 Drule 对象时使用的默认选项.
-
#get_or_create(data) ⇒ Object
通过 Zabbix API 获取或创建 Drule 对象.
-
#identify ⇒ Object
用于通过 Zabbix API 标识特定 Drule 对象的 id 字段名称.
-
#method_name ⇒ Object
用于通过 Zabbix API 与 Drules 交互的方法名称.
Methods inherited from Basic
#add, #all, #create, #delete, #destroy, #dump_by_id, #get, #get_full_data, #get_id, #get_ids, #get_ids_by_identify, #get_key_ids, #get_key_ids_by_identify, #get_or_create_keys, #get_raw, #hash_equals?, #initialize, #key, #keys, #log, #merge_hashes, #normalize_array, #normalize_hash, #parse_keys, #request_raw, #symbolize_keys, #update
Constructor Details
This class inherits a constructor from ZabbixManager::Basic
Instance Method Details
#create_or_update(data) ⇒ Object
通过 Zabbix API 创建或更新 Drule 对象
36 37 38 39 |
# File 'lib/zabbix_manager/classes/drules.rb', line 36 def create_or_update(data) druleid = get_id(name: data[:name]) druleid ? update(data.merge(druleid: druleid)) : create(data) end |
#default_options ⇒ Object
创建 Drule 对象时使用的默认选项
16 17 18 19 20 21 22 23 |
# File 'lib/zabbix_manager/classes/drules.rb', line 16 def { name: nil, iprange: nil, delay: 3600, status: 0 } end |
#get_or_create(data) ⇒ Object
通过 Zabbix API 获取或创建 Drule 对象
26 27 28 29 30 31 32 33 |
# File 'lib/zabbix_manager/classes/drules.rb', line 26 def get_or_create(data) log "[DEBUG] 调用 get_or_create,参数为:#{data.inspect}" unless (id = get_id(name: data[:name])) id = create(data) end id end |
#identify ⇒ Object
用于通过 Zabbix API 标识特定 Drule 对象的 id 字段名称
11 12 13 |
# File 'lib/zabbix_manager/classes/drules.rb', line 11 def identify "name" end |
#method_name ⇒ Object
用于通过 Zabbix API 与 Drules 交互的方法名称
6 7 8 |
# File 'lib/zabbix_manager/classes/drules.rb', line 6 def method_name "drule" end |