diff --git a/admin/app/admin/jam_ruby_users.rb b/admin/app/admin/jam_ruby_users.rb index f452f17dc..432de438b 100644 --- a/admin/app/admin/jam_ruby_users.rb +++ b/admin/app/admin/jam_ruby_users.rb @@ -26,6 +26,10 @@ ActiveAdmin.register JamRuby::User, :as => 'Users' do action_item :school_user, only: :index do link_to "Quick Add School User", add_school_user_admin_users_path end + + action_item :latency, only: :show do + link_to 'Show Latency', latency_admin_user_path(resource) + end collection_action :add_school_user, method: [:get, :post] do if request.post? @@ -226,9 +230,29 @@ ActiveAdmin.register JamRuby::User, :as => 'Users' do end + member_action :latency, method: :get do + @user = resource + latency_url = "#{Rails.application.config.latency_data_host}/user/#{@user.id}" + uri = URI(latency_url) + begin + http = Net::HTTP.new(uri.host, uri.port) + http.use_ssl = true if Rails.application.config.latency_data_host.start_with?("https://") + req = Net::HTTP::Get.new(uri.request_uri) + req["Authorization"] = "Basic #{Rails.application.config.latency_data_host_auth_code}" + req["Content-Type"] = "application/json" + + response = http.request(req) + + render text: "404 Not Found", status: 404 if response.is_a?(Net::HTTPNotFound) + #render json: response.body, status: 200 if response.is_a?(Net::HTTPOK) || response.is_a?(Net::HTTPSuccess) + @user_latency = response.body + rescue => e + render text: e.message + end + + end - show do |user| panel "Common" do attributes_table do diff --git a/admin/app/views/admin/users/latency.html.erb b/admin/app/views/admin/users/latency.html.erb new file mode 100644 index 000000000..f654aa776 --- /dev/null +++ b/admin/app/views/admin/users/latency.html.erb @@ -0,0 +1,2 @@ +

<%= @user.name %>

+
<%= debug @user_latency -%>
\ No newline at end of file diff --git a/admin/config/application.rb b/admin/config/application.rb index 93e608c87..73e9717e7 100644 --- a/admin/config/application.rb +++ b/admin/config/application.rb @@ -169,5 +169,8 @@ module JamAdmin config.download_tracker_day_range = 30 config.max_user_ip_address = 10 config.max_multiple_users_same_ip = 2 + + config.latency_data_host = "https://latency-production.naas.jamkazam.com" + config.latency_data_host_auth_code = "amFtQXBpOm5pNWY0eFRjRlpNc0lXNEd4IUR5cQ==" end end