Class: MMS::Resource::Group
- Inherits:
-
Resource
- Object
- Resource
- MMS::Resource::Group
- Defined in:
- lib/mms/resource/group.rb
Instance Attribute Summary collapse
-
#active_agent_count ⇒ Object
readonly
Returns the value of attribute active_agent_count.
- #clusters(page = 1, limit = 1000) ⇒ Array<MMS::Resource::Cluster>
-
#last_active_agent ⇒ Object
readonly
Returns the value of attribute last_active_agent.
-
#name ⇒ Object
readonly
Returns the value of attribute name.
-
#replicaset_count ⇒ Object
readonly
Returns the value of attribute replicaset_count.
-
#shard_count ⇒ Object
readonly
Returns the value of attribute shard_count.
Class Method Summary collapse
Instance Method Summary collapse
- #alert(id) ⇒ MMS::Resource::Alert
- #alerts(page = 1, limit = 1000, status = 'OPEN') ⇒ Array<MMS::Resource::Alert>
- #cluster(id) ⇒ MMS::Resource::Cluster
- #find_snapshot(id) ⇒ MMS::Resource::Snapshot, NilClass
- #hosts(page = 1, limit = 1000) ⇒ Array<MMS::Resource::Host>
-
#initialize ⇒ Group
constructor
A new instance of Group.
- #table_row ⇒ Object
- #table_section ⇒ Object
Constructor Details
#initialize ⇒ Group
Returns a new instance of Group.
13 14 15 |
# File 'lib/mms/resource/group.rb', line 13 def initialize @clusters = [] end |
Instance Attribute Details
#active_agent_count ⇒ Object (readonly)
Returns the value of attribute active_agent_count.
6 7 8 |
# File 'lib/mms/resource/group.rb', line 6 def active_agent_count @active_agent_count end |
#clusters(page = 1, limit = 1000) ⇒ Array<MMS::Resource::Cluster>
57 58 59 |
# File 'lib/mms/resource/group.rb', line 57 def clusters @clusters end |
#last_active_agent ⇒ Object (readonly)
Returns the value of attribute last_active_agent.
9 10 11 |
# File 'lib/mms/resource/group.rb', line 9 def last_active_agent @last_active_agent end |
#name ⇒ Object (readonly)
Returns the value of attribute name.
5 6 7 |
# File 'lib/mms/resource/group.rb', line 5 def name @name end |
#replicaset_count ⇒ Object (readonly)
Returns the value of attribute replicaset_count.
7 8 9 |
# File 'lib/mms/resource/group.rb', line 7 def replicaset_count @replicaset_count end |
#shard_count ⇒ Object (readonly)
Returns the value of attribute shard_count.
8 9 10 |
# File 'lib/mms/resource/group.rb', line 8 def shard_count @shard_count end |
Class Method Details
._find(client, id) ⇒ Object
103 104 105 |
# File 'lib/mms/resource/group.rb', line 103 def self._find(client, id) client.get('/groups/' + id) end |
.table_header ⇒ Object
99 100 101 |
# File 'lib/mms/resource/group.rb', line 99 def self.table_header ['Name', 'Active Agents', 'Replicas count', 'Shards count', 'Last Active Agent', 'GroupId'] end |
Instance Method Details
#alert(id) ⇒ MMS::Resource::Alert
50 51 52 |
# File 'lib/mms/resource/group.rb', line 50 def alert(id) MMS::Resource::Alert.find(@client, @id, id) end |
#alerts(page = 1, limit = 1000, status = 'OPEN') ⇒ Array<MMS::Resource::Alert>
36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/mms/resource/group.rb', line 36 def alerts(page = 1, limit = 1000, status = 'OPEN') alert_list = [] @client.get('/groups/' + @id + '/alerts?status=' + status + '&pageNum=' + page.to_s + '&itemsPerPage=' + limit.to_s).each do |alert| a = MMS::Resource::Alert.new a.set_client(@client) a.set_data(alert) alert_list.push a end alert_list end |
#cluster(id) ⇒ MMS::Resource::Cluster
72 73 74 |
# File 'lib/mms/resource/group.rb', line 72 def cluster(id) MMS::Resource::Cluster.find(@client, @id, id) end |
#find_snapshot(id) ⇒ MMS::Resource::Snapshot, NilClass
78 79 80 81 82 83 84 85 86 87 88 89 |
# File 'lib/mms/resource/group.rb', line 78 def find_snapshot(id) snapshot = nil clusters.each do |cluster| begin snapshot = cluster.snapshot(id) break unless snapshot.nil? rescue MMS::ApiError => e # Snapshot is not available on this cluster. Skip it! end end snapshot end |
#hosts(page = 1, limit = 1000) ⇒ Array<MMS::Resource::Host>
20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/mms/resource/group.rb', line 20 def hosts(page = 1, limit = 1000) host_list = [] @client.get('/groups/' + @id + '/hosts?pageNum=' + page.to_s + '&itemsPerPage=' + limit.to_s).each do |host| h = MMS::Resource::Host.new h.set_client(@client) h.set_data(host) host_list.push h end host_list end |
#table_row ⇒ Object
91 92 93 |
# File 'lib/mms/resource/group.rb', line 91 def table_row [@name, @active_agent_count, @replicaset_count, @shard_count, @last_active_agent, @id] end |
#table_section ⇒ Object
95 96 97 |
# File 'lib/mms/resource/group.rb', line 95 def table_section [table_row] end |