From 594d37bb40f3e3e0f15553383cf2a305d4d6742e Mon Sep 17 00:00:00 2001 From: mo khan Date: Mon, 9 Feb 2015 19:43:03 -0700 Subject: extract api. --- app/controllers/api/agents_controller.rb | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 app/controllers/api/agents_controller.rb (limited to 'app/controllers/api/agents_controller.rb') diff --git a/app/controllers/api/agents_controller.rb b/app/controllers/api/agents_controller.rb new file mode 100644 index 0000000..16174b1 --- /dev/null +++ b/app/controllers/api/agents_controller.rb @@ -0,0 +1,15 @@ +module Api + class AgentsController < ApplicationController + #before_action do + #request.format = :json + #end + + def create + @agent = Agent.create!(agent_params) + end + + def agent_params + params.require(:agent).permit(:hostname) + end + end +end -- cgit v1.2.3 From 41c8858025eb14cab34635b058ccf761dd04eb90 Mon Sep 17 00:00:00 2001 From: mo khan Date: Mon, 9 Feb 2015 20:36:18 -0700 Subject: use api controller and log errors in fake agent. --- app/controllers/api/agents/files_controller.rb | 2 +- app/controllers/api/agents_controller.rb | 6 +----- app/controllers/api/api_controller.rb | 5 +++++ app/controllers/application_controller.rb | 1 - app/models/event_message.rb | 2 +- app/models/scanned.rb | 2 ++ lib/fake_agent.rb | 10 ++++++++-- 7 files changed, 18 insertions(+), 10 deletions(-) create mode 100644 app/controllers/api/api_controller.rb create mode 100644 app/models/scanned.rb (limited to 'app/controllers/api/agents_controller.rb') diff --git a/app/controllers/api/agents/files_controller.rb b/app/controllers/api/agents/files_controller.rb index b111048..c13eac9 100644 --- a/app/controllers/api/agents/files_controller.rb +++ b/app/controllers/api/agents/files_controller.rb @@ -1,6 +1,6 @@ module Api module Agents - class FilesController < ApplicationController + class FilesController < ApiController before_action do request.format = :json end diff --git a/app/controllers/api/agents_controller.rb b/app/controllers/api/agents_controller.rb index 16174b1..a7307f0 100644 --- a/app/controllers/api/agents_controller.rb +++ b/app/controllers/api/agents_controller.rb @@ -1,9 +1,5 @@ module Api - class AgentsController < ApplicationController - #before_action do - #request.format = :json - #end - + class AgentsController < ApiController def create @agent = Agent.create!(agent_params) end diff --git a/app/controllers/api/api_controller.rb b/app/controllers/api/api_controller.rb new file mode 100644 index 0000000..0316222 --- /dev/null +++ b/app/controllers/api/api_controller.rb @@ -0,0 +1,5 @@ +module Api + class ApiController < ApplicationController + protect_from_forgery with: :null_session + end +end diff --git a/app/controllers/application_controller.rb b/app/controllers/application_controller.rb index 8ce68a5..209ec89 100644 --- a/app/controllers/application_controller.rb +++ b/app/controllers/application_controller.rb @@ -2,7 +2,6 @@ class ApplicationController < ActionController::Base # Prevent CSRF attacks by raising an exception. # For APIs, you may want to use :null_session instead. #protect_from_forgery with: :exception - protect_from_forgery with: :null_session protected diff --git a/app/models/event_message.rb b/app/models/event_message.rb index 0a0c9ae..75bd9ac 100644 --- a/app/models/event_message.rb +++ b/app/models/event_message.rb @@ -14,7 +14,7 @@ class EventMessage def to_hash { agent_id: agent_id, - event_type: event_type, + type: event_type, data: data } end diff --git a/app/models/scanned.rb b/app/models/scanned.rb new file mode 100644 index 0000000..cfe1b87 --- /dev/null +++ b/app/models/scanned.rb @@ -0,0 +1,2 @@ +class Scanned < Event +end diff --git a/lib/fake_agent.rb b/lib/fake_agent.rb index ecc9e47..2cf3309 100644 --- a/lib/fake_agent.rb +++ b/lib/fake_agent.rb @@ -44,6 +44,8 @@ class FakeAgent when "unknown" puts "file is unknown" end + rescue StandardError => error + log_error(error) end def sniff(interface) @@ -85,8 +87,8 @@ class FakeAgent } Typhoeus.post(event_url, body: body) end - rescue => e - puts "#{e.message} #{e.backtrace.join(' ')}" + rescue StandardError => error + log_error(error) end def fingerprint_for(file) @@ -122,4 +124,8 @@ class FakeAgent def registration_url "#{endpoint}/api/agents" end + + def log_error(error) + puts "#{error.message} #{error.backtrace.join(' ')}" + end end -- cgit v1.2.3