Class: ElasticAPM::Spies::NetHTTPSpy Private

Inherits:
Object
  • Object
show all
Defined in:
lib/elastic_apm/spies/net_http.rb

This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.

Defined Under Namespace

Modules: Ext

Constant Summary collapse

DISABLE_KEY =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

:__elastic_apm_net_http_disabled
TYPE =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

'external'
SUBTYPE =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

'http'

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.disable_inObject

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



38
39
40
41
42
43
44
45
46
# File 'lib/elastic_apm/spies/net_http.rb', line 38

def disable_in
  self.disabled = true

  begin
    yield
  ensure
    self.disabled = false
  end
end

.disabled=(disabled) ⇒ Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



30
31
32
# File 'lib/elastic_apm/spies/net_http.rb', line 30

def disabled=(disabled)
  Thread.current[DISABLE_KEY] = disabled
end

.disabled?Boolean

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns:

  • (Boolean)


34
35
36
# File 'lib/elastic_apm/spies/net_http.rb', line 34

def disabled?
  Thread.current[DISABLE_KEY] ||= false
end

Instance Method Details

#installObject

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.



108
109
110
# File 'lib/elastic_apm/spies/net_http.rb', line 108

def install
  Net::HTTP.prepend(Ext)
end