Method: DiplomaticBag.consul_info
- Defined in:
- lib/diplomatic_bag/info.rb
.consul_info(options = {}) ⇒ Object
rubocop:disable Metrics/AbcSize
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/diplomatic_bag/info.rb', line 6 def self.consul_info( = {}) consul_self = Diplomat::Agent.self() puts 'Server: ' + consul_self['Config']['NodeName'] puts 'Datacenter: ' + consul_self['Config']['Datacenter'] puts 'Consul Version: ' + consul_self['Config']['Version'] if consul_self['Stats']['consul']['leader_addr'] puts 'Leader Address: ' + consul_self['Stats']['consul']['leader_addr'] puts 'applied_index: ' + consul_self['Stats']['raft']['applied_index'] puts 'commit_index: ' + consul_self['Stats']['raft']['commit_index'] end members = Diplomat::Members.get() servers = members.select { |member| member['Tags']['role'] == 'consul' }.sort_by { |n| n['Name'] } nodes = members.select { |member| member['Tags']['role'] == 'node' } leader = Diplomat::Status.leader().split(':')[0] puts 'Servers Count: ' + servers.count.to_s puts 'Nodes Count: ' + nodes.count.to_s puts 'Servers:' servers.map do |s| if s['Tags']['role'] == 'consul' if s['Addr'] == leader puts ' ' + s['Name'] + ' ' + s['Addr'] + ' *Leader*' else puts ' ' + s['Name'] + ' ' + s['Addr'] end end end end |