Module: Legion::API::GraphQL::Resolvers::Node

Defined in:
lib/legion/api/graphql/resolvers/node.rb

Class Method Summary collapse

Class Method Details

.resolveObject



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'lib/legion/api/graphql/resolvers/node.rb', line 8

def self.resolve
  name    = defined?(Legion::Settings) ? Legion::Settings[:client][:name] : 'legion'
  version = defined?(Legion::VERSION) ? Legion::VERSION : nil
  ready   = defined?(Legion::Readiness) ? Legion::Readiness.ready? : true
  uptime  = defined?(Legion::Process) ? calculate_uptime : nil

  {
    name:    name,
    version: version,
    uptime:  uptime,
    ready:   ready
  }
rescue StandardError => e
  Legion::Logging.warn "GraphQL::Node#resolve failed: #{e.message}" if defined?(Legion::Logging)
  { name: nil, version: nil, uptime: nil, ready: false }
end