newrelic가 필요 없는 서버 보고서 삭제

5364 단어 NewRelicRuby

원래 없어질 필요가 없어요.


아무런 방해 없이 검색할 때 걸리는 수량도 줄어든다.
감찰적인 것이 있다면 삭제할 수 없다는 것이 낫다.
이용할 때는 스스로 책임을 져야 한다.

날과 씨


몇 년 전쯤, 이걸 좋아해서 없앨 방법이 없었나요?그래서 버리는 대본을 썼어요.
컴퓨터를 정리하고 나왔기 때문에 공유하고 싶어요.ruby clean_newrelic.rb에서 수행할 수 있습니다.(자기가 책임져!)
clean_newrelic.rb
require 'net/http'
require 'uri'
require 'json'

BASE_URI = 'https://api.newrelic.com/v2/servers.json'.freeze
API_KEY = 'user_api_key'.freeze


def get_json(uri)
  req = Net::HTTP::Get.new uri
  req['X-Api-Key'] = API_KEY
  response =
    Net::HTTP.start(uri.host, uri.port, use_ssl: uri.scheme == 'https') do |http|
      http.open_timeout = 5
      http.read_timeout = 10
      http.request req
    end
  json = response.body
  JSON.parse(json)
end

def delete_server(server_id)
  %x(curl -s -X DELETE "https://api.newrelic.com/v2/servers/#{server_id}.json" -H "X-Api-Key:#{API_KEY}" -i)
end

# 一回に取得できるサーバー情報が200で,
# limitを増やすやり方が分からなかったので、loopしてます。
# filter的なパラメータで絞っても効かなかった。
# 参考 https://docs.newrelic.com/docs/apis/rest-api-v2/requirements/new-relic-rest-api-v2-getting-started
2.times do
  results = get_json(URI.parse(BASE_URI))
  Array(results['servers']).each do |server|
    if !server['reporting'] && server['id']
      delete_server server['id']
      print '.'
    else
      print 'F'
    end
  end
end

좋은 웹페이지 즐겨찾기