Class: Nrcmd::Server

Inherits:
Thor
  • Object
show all
Defined in:
lib/nrcmd/server/cli.rb

Defined Under Namespace

Classes: Metrics

Constant Summary collapse

URL =
'https://api.newrelic.com/v2'

Instance Method Summary collapse

Instance Method Details

#__delete(id) ⇒ Object



70
71
72
73
74
75
# File 'lib/nrcmd/server/cli.rb', line 70

def __delete(id)
  uri = URL + "/servers/#{id}.json"
  res = Nrcmd::Http.delete(uri)
  result = JSON.parse(res.body)
  print JSON[ result ]
end

#listObject



20
21
22
23
24
25
26
27
28
29
30
# File 'lib/nrcmd/server/cli.rb', line 20

def list
  uri = URL + '/servers.json'
  filter_param = ""
  options["filter"].gsub(" ", "").split(',').each do |filter|
    fkv = filter.split('=')
    filter_param << "filter[#{fkv[0]}]=#{fkv[1]}&"
  end
  res = Nrcmd::Http.get(uri, {}, filter_param)
  result = JSON.parse(res.body)
  print JSON[ result["servers"] ]
end

#show(server_id) ⇒ Object



36
37
38
39
40
41
# File 'lib/nrcmd/server/cli.rb', line 36

def show(server_id)
  uri = URL + "/servers/#{server_id}.json"
  res = Nrcmd::Http.get(uri)
  result = JSON.parse(res.body)
  print JSON[ result["server"]]
end

#update(server_id, json_param) ⇒ Object



57
58
59
60
61
62
63
64
# File 'lib/nrcmd/server/cli.rb', line 57

def update(server_id, json_param)
  uri = URL + "/servers/#{server_id}.json"
  header = { 'Content-Type' => 'application/json' }
  data = json_param
  res = Nrcmd::Http.put(uri, header, data)
  result = JSON.parse(res.body)
  print JSON[ result ]
end