class ActiveEndpoint::Storage
Constants
- LOGGING_FIELDS
- STORING_FIELDS
Public Class Methods
clean!(endpoint, period)
click to toggle source
# File lib/active_endpoint/storage.rb, line 77 def clean!(endpoint, period) ActiveEndpoint::Probe.registred.probe(endpoint).taken_before(period).destroy_all end
handle_creation(probe)
click to toggle source
# File lib/active_endpoint/storage.rb, line 71 def handle_creation(probe) probe.save rescue => error ActiveEndpoint.logger.error('ActiveEndpoint::Probe', error) end
notifier()
click to toggle source
# File lib/active_endpoint/storage.rb, line 40 def notifier ActiveSupport::Notifications end
probe_params(transaction_id, probe)
click to toggle source
# File lib/active_endpoint/storage.rb, line 44 def probe_params(transaction_id, probe) request = probe.delete(:request) request_body = request.delete(:body) response = probe.delete(:response) response_body = response.present? ? response[:body] : nil params = { uuid: transaction_id, response: response_body ? Base64.encode64(response_body) : '', started_at: probe[:created_at], finished_at: probe[:finished_at], duration: probe[:finished_at] ? (probe[:finished_at] - probe[:created_at]).second.round(3) : 0, body: request_body.is_a?(Puma::NullIO) ? '' : request_body }.merge(request) [params.dup.except(*LOGGING_FIELDS), params.dup.except(*STORING_FIELDS)] end
register!(params)
click to toggle source
# File lib/active_endpoint/storage.rb, line 67 def register!(params) handle_creation(ActiveEndpoint::UnregistredProbe.new(params.merge(endpoint: :unregistred))) end
store!(params)
click to toggle source
# File lib/active_endpoint/storage.rb, line 63 def store!(params) handle_creation(ActiveEndpoint::Probe.new(params)) end