Module: ScoutApmMcp::Client::Api::Apps

Included in:
ScoutApmMcp::Client
Defined in:
lib/scout_apm_mcp/client/api.rb

Instance Method Summary collapse

Instance Method Details

#get_app(app_id) ⇒ Object



18
19
20
21
22
# File 'lib/scout_apm_mcp/client/api.rb', line 18

def get_app(app_id)
  uri = URI("#{@api_base}/apps/#{app_id}")
  response = make_request(uri)
  response.dig("results", "app") || {}
end

#list_apps(active_since: nil) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
# File 'lib/scout_apm_mcp/client/api.rb', line 5

def list_apps(active_since: nil)
  uri = URI("#{@api_base}/apps")
  response = make_request(uri)
  apps = response.dig("results", "apps") || []
  return apps unless active_since

  active_time = Helpers.parse_time(active_since)
  apps.select do |app|
    reported_at = app["last_reported_at"]
    reported_at && !reported_at.empty? && Helpers.parse_time(reported_at) >= active_time
  end
end