Class: PromptObjects::CLI::DiagnosticsCommand

Inherits:
Object
  • Object
show all
Defined in:
lib/prompt_objects/cli/diagnostics_command.rb

Instance Method Summary collapse

Instance Method Details

#helpObject



27
28
29
30
31
32
33
# File 'lib/prompt_objects/cli/diagnostics_command.rb', line 27

def help
  puts <<~HELP
    Usage: #{Helpers.program_name} diagnostics <environment> [--json]

    Show content-free scheduler, timing, failure, usage, and database health metrics.
  HELP
end

#run(args) ⇒ Object



10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/prompt_objects/cli/diagnostics_command.rb', line 10

def run(args)
  json = args.delete("--json")
  return help if args.include?("--help") || args.include?("-h")

  env_name = args.first
  raise Error, "environment name required" unless env_name

  env_path = Helpers.resolve_environment(env_name)
  raise Error, "environment '#{env_name}' not found" unless env_path

  data = server_snapshot(env_path) || local_snapshot(env_path)
  json ? puts(JSON.pretty_generate(data)) : print_summary(data)
rescue Error => e
  $stderr.puts "Error: #{e.message}"
  1
end