Class: Kazoo::CLI
- Inherits:
-
Thor
- Object
- Thor
- Kazoo::CLI
- Defined in:
- lib/kazoo/cli.rb
Instance Method Summary collapse
Instance Method Details
#cluster ⇒ Object
10 11 12 13 14 15 16 |
# File 'lib/kazoo/cli.rb', line 10 def cluster kafka_cluster.brokers.values.sort_by(&:id).each do |broker| $stdout.puts "#{broker.id}:\t#{broker.addr}\t(hosts #{broker.replicated_partitions.length} partitions, leads #{broker.led_partitions.length})" end end |
#critical(broker_name) ⇒ Object
45 46 47 48 49 50 51 52 53 |
# File 'lib/kazoo/cli.rb', line 45 def critical(broker_name) if broker(broker_name).critical?(replicas: [:replicas]) raise Thor::Error, "WARNING: broker #{broker_name} is critical and cannot be stopped safely!" else $stdout.puts "Broker #{broker_name} is non-critical and can be stopped safely." end end |
#partitions ⇒ Object
29 30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/kazoo/cli.rb', line 29 def partitions topics = kafka_cluster.topics.values topics.select! { |t| t.name == [:topic] } if [:topic] topics.sort_by!(&:name) topics.each do |topic| topic.partitions.each do |partition| $stdout.puts "#{partition.topic.name}/#{partition.id}\tReplicas: #{partition.replicas.map(&:id).join(",")}" end end end |
#topics ⇒ Object
19 20 21 22 23 24 25 |
# File 'lib/kazoo/cli.rb', line 19 def topics kafka_cluster.topics.values.sort_by(&:name).each do |topic| $stdout.puts topic.name end end |