zabbixapi 0.6.4 → 0.6.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,15 +1,7 @@
1
1
  ---
2
2
  !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- YTUwYjA2NzU4NDM0OGU0YzYyOTkxY2I1ZTM5OWJhOWUwOTIzMmY5ZQ==
5
- data.tar.gz: !binary |-
6
- NTdjNjMwYzMwOTM4OGYxMTFlM2VjMzI5YjlkZmQxNTA1M2QyNjYwZA==
7
- !binary "U0hBNTEy":
8
- metadata.gz: !binary |-
9
- MGU3ZGZjNTAyOThmMTcxOGNiNDZmZjIwODYyMTBmNDczNDA3YTJhOTdlNjU5
10
- OWIwNzNkMDM1ZDFjZmIyMzUwZGYxODRhMmEyNTIwNjliZDhjYWEzMmY4NWIy
11
- MmQ2ZGZiZWY1NDk1MDQ4OWM5ODc3ZjM3NGEyMDZhOTdmMzA2NTA=
12
- data.tar.gz: !binary |-
13
- ODViOGRkYWM1OGRkZWFhOTg2NzFlNDQzYzdhNmI3ODE4MDBjMjI3ZGY4Mzdm
14
- ZGFmYjE5ZjFkOTBhZWRmNzc5NTk4YWY4NWZhNzc5ZmY5ZDM2NTRhNjY3YzYy
15
- MzllNDU1OGM3YWNjYTZjMzdkN2VhZjBmOTBhZjM0OTVhYjliM2Y=
3
+ metadata.gz: 635adc2b44f68bdca298f1fa7a72839901528f0e
4
+ data.tar.gz: f257c9c6f322b313de54fb9b4893ddc37f217488
5
+ SHA512:
6
+ metadata.gz: 4e893b3fc1a1cee7cc81d9e44e2f1af92f4a5f96cf0f3f2a62d3cdb007bae119b7988078dace1818a6d73cf64087ba7b216c52905d838dbf61d5b586b40d3c5f
7
+ data.tar.gz: 3f1cc8fe7bfa1dc99d779c44d536fde3aa3e84dff2a666266f463c7b1f415e78f53ee75e6bcb0690f9690e5b4303b93e42c8a038b4f515e8d80b23f459e1cc72
data/README.md CHANGED
@@ -314,6 +314,38 @@ zbx.users.add_medias(
314
314
  )
315
315
  ```
316
316
 
317
+ ### Create proxy (2.0 and later)
318
+ #### Active proxy
319
+ ```ruby
320
+ zbx.proxies.create(
321
+ :host => "Proxy 1",
322
+ :status => 5
323
+ )
324
+ ```
325
+
326
+ #### Passive Proxy
327
+ ```ruby
328
+ zbx.proxies.create(
329
+ :host => "Passive proxy",
330
+ :status => 6,
331
+ :interfaces => [
332
+ :ip => "127.0.0.1",
333
+ :dns => "",
334
+ :useip => 1,
335
+ :port => 10051
336
+ ]
337
+ )
338
+ ```
339
+
340
+ ### User and global macros
341
+ ```ruby
342
+ zbx.usermacros.create(
343
+ :hostid => zbx.hosts.get_id( :host => "Zabbix server" ),
344
+ :macro => "{$ZZZZ}",
345
+ :value => 1.1.1.1
346
+ )
347
+ ```
348
+
317
349
  ### Custom queries
318
350
  ```ruby
319
351
  zbx.query(
@@ -20,6 +20,7 @@ class ZabbixApi
20
20
  :status => 0,
21
21
  :available => 1,
22
22
  :groups => [],
23
+ :proxy_hostid => nil
23
24
  }
24
25
  end
25
26
 
@@ -0,0 +1,31 @@
1
+ class ZabbixApi
2
+ class Proxies < Basic
3
+
4
+ def array_flag
5
+ true
6
+ end
7
+
8
+ def method_name
9
+ "proxy"
10
+ end
11
+
12
+ def indentify
13
+ "host"
14
+ end
15
+
16
+ def delete(data)
17
+ result = @client.api_request(:method => "proxy.delete", :params => data)
18
+ result.empty? ? nil : result['proxyids'][0].to_i
19
+ end
20
+
21
+ def isreadable(data)
22
+ result = @client.api_request(:method => "proxy.isreadable", :params => data)
23
+ end
24
+
25
+ def iswritable(data)
26
+ result = @client.api_request(:method => "proxy.iswritable", :params => data)
27
+ end
28
+
29
+ end
30
+ end
31
+
@@ -0,0 +1,46 @@
1
+ class ZabbixApi
2
+ class Usermacros < Basic
3
+ def array_flag
4
+ true
5
+ end
6
+
7
+ def indentify
8
+ "macro"
9
+ end
10
+
11
+ def method_name
12
+ "usermacro"
13
+ end
14
+
15
+ def create(data)
16
+ request(data, "usermacro.create", "hostmacroids")
17
+ end
18
+
19
+ def create_global(data)
20
+ request(data, "usermacro.createglobal", "globalmacroids")
21
+ end
22
+
23
+ def delete(data)
24
+ request(data, "usermacro.delete", "hostmacroids")
25
+ end
26
+
27
+ def delete_global(data)
28
+ request(data, "usermacro.deleteglobal", "globalmacroids")
29
+ end
30
+
31
+ def update
32
+ request(data, "usermacro.update", "hostmacroids")
33
+ end
34
+
35
+ def update_global
36
+ request(data, "usermacro.updateglobal", "globalmacroids")
37
+ end
38
+
39
+ private
40
+ def request(data, method, result_key)
41
+ result = @client.api_request(:method => method, :params => data)
42
+ result.empty? ? nil : result[result_key][0].to_i
43
+ end
44
+
45
+ end
46
+ end
@@ -1,3 +1,3 @@
1
1
  class ZabbixApi
2
- VERSION = "0.6.4"
2
+ VERSION = "0.6.6"
3
3
  end
data/lib/zabbixapi.rb CHANGED
@@ -69,6 +69,10 @@ class ZabbixApi
69
69
  @graphs ||= Graphs.new(@client)
70
70
  end
71
71
 
72
+ def proxies
73
+ @proxies ||= Proxies.new(@client)
74
+ end
75
+
72
76
  def screens
73
77
  @screens ||= Screens.new(@client)
74
78
  end
@@ -77,6 +81,10 @@ class ZabbixApi
77
81
  @usergroups ||= Usergroups.new(@client)
78
82
  end
79
83
 
84
+ def usermacros
85
+ @usermacros ||= Usermacros.new(@client)
86
+ end
87
+
80
88
  def mediatypes
81
89
  @mediatypes ||= Mediatypes.new(@client)
82
90
  end
data/zabbixapi.gemspec CHANGED
@@ -5,14 +5,14 @@ require 'zabbixapi/version'
5
5
  Gem::Specification.new do |s|
6
6
  s.name = "zabbixapi"
7
7
  s.version = ZabbixApi::VERSION
8
- s.authors = ["Vasiliev D.V."]
9
- s.email = %w(vadv.mkn@gmail.com)
10
- s.homepage = "https://github.com/vadv/zabbixapi"
8
+ s.authors = ["Vasiliev D.V.", "Ivan Evtuhovich"]
9
+ s.email = %w(vadv.mkn@gmail.com evtuhovich@gmail.com)
10
+ s.homepage = "https://github.com/express42/zabbixapi"
11
11
  s.summary = %q{Realization for Zabbix API.}
12
12
  s.description = %q{Allows you to work with zabbix api from ruby.}
13
13
  s.licenses = %w(MIT)
14
14
 
15
- s.add_dependency('json')
15
+ s.add_dependency('json', '~> 1.6', '>= 1.6.0')
16
16
 
17
17
  s.rubyforge_project = "zabbixapi"
18
18
 
metadata CHANGED
@@ -1,32 +1,40 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: zabbixapi
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.4
4
+ version: 0.6.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vasiliev D.V.
8
+ - Ivan Evtuhovich
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
- date: 2013-12-04 00:00:00.000000000 Z
12
+ date: 2014-03-12 00:00:00.000000000 Z
12
13
  dependencies:
13
14
  - !ruby/object:Gem::Dependency
14
15
  name: json
15
16
  requirement: !ruby/object:Gem::Requirement
16
17
  requirements:
18
+ - - ~>
19
+ - !ruby/object:Gem::Version
20
+ version: '1.6'
17
21
  - - ! '>='
18
22
  - !ruby/object:Gem::Version
19
- version: '0'
23
+ version: 1.6.0
20
24
  type: :runtime
21
25
  prerelease: false
22
26
  version_requirements: !ruby/object:Gem::Requirement
23
27
  requirements:
28
+ - - ~>
29
+ - !ruby/object:Gem::Version
30
+ version: '1.6'
24
31
  - - ! '>='
25
32
  - !ruby/object:Gem::Version
26
- version: '0'
33
+ version: 1.6.0
27
34
  description: Allows you to work with zabbix api from ruby.
28
35
  email:
29
36
  - vadv.mkn@gmail.com
37
+ - evtuhovich@gmail.com
30
38
  executables: []
31
39
  extensions: []
32
40
  extra_rdoc_files: []
@@ -68,19 +76,21 @@ files:
68
76
  - lib/zabbixapi/2.0/classes/hosts.rb
69
77
  - lib/zabbixapi/2.0/classes/items.rb
70
78
  - lib/zabbixapi/2.0/classes/mediatypes.rb
79
+ - lib/zabbixapi/2.0/classes/proxies.rb
71
80
  - lib/zabbixapi/2.0/classes/screens.rb
72
81
  - lib/zabbixapi/2.0/classes/server.rb
73
82
  - lib/zabbixapi/2.0/classes/templates.rb
74
83
  - lib/zabbixapi/2.0/classes/triggers.rb
75
84
  - lib/zabbixapi/2.0/classes/unusable.rb
76
85
  - lib/zabbixapi/2.0/classes/usergroups.rb
86
+ - lib/zabbixapi/2.0/classes/usermacros.rb
77
87
  - lib/zabbixapi/2.0/classes/users.rb
78
88
  - lib/zabbixapi/client.rb
79
89
  - lib/zabbixapi/version.rb
80
90
  - spec/localhost.rb
81
91
  - spec/run.rb
82
92
  - zabbixapi.gemspec
83
- homepage: https://github.com/vadv/zabbixapi
93
+ homepage: https://github.com/express42/zabbixapi
84
94
  licenses:
85
95
  - MIT
86
96
  metadata: {}
@@ -100,10 +110,11 @@ required_rubygems_version: !ruby/object:Gem::Requirement
100
110
  version: '0'
101
111
  requirements: []
102
112
  rubyforge_project: zabbixapi
103
- rubygems_version: 2.0.6
113
+ rubygems_version: 2.2.1
104
114
  signing_key:
105
115
  specification_version: 4
106
116
  summary: Realization for Zabbix API.
107
117
  test_files:
108
118
  - spec/localhost.rb
109
119
  - spec/run.rb
120
+ has_rdoc: