Module: TCellAgent::Utils::Rails

Defined in:
lib/tcell_agent/rails/better_ip.rb,
lib/tcell_agent/rails/responses.rb

Constant Summary collapse

STATUSES_MISSING_CONTENT_LENGTH =
Set.new((100..199).to_a + [204, 205, 304])

Class Method Summary collapse

Class Method Details

.empty_content?(status_code, headers) ⇒ Boolean

Returns:

  • (Boolean)


6
7
8
9
# File 'lib/tcell_agent/rails/responses.rb', line 6

def self.empty_content?(status_code, headers)
  STATUSES_MISSING_CONTENT_LENGTH.include?(status_code.to_i) ||
    (headers['Content-Length'] && headers['Content-Length'].to_i.zero?)
end

.reverse_proxy_header(request) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
# File 'lib/tcell_agent/rails/better_ip.rb', line 7

def self.reverse_proxy_header(request)
  return unless TCellAgent.configuration.reverse_proxy

  TCellAgent::Instrumentation.safe_block('Extracting reverse proxy header') do
    reverse_proxy_header = TCellAgent.configuration.reverse_proxy_ip_address_header

    return if reverse_proxy_header.nil? || reverse_proxy_header.empty?

    return request.env["HTTP_#{reverse_proxy_header.upcase.tr('-', '_')}"]
  end
end