Class: LogCourier::ExtendedTCPServer
- Inherits:
-
TCPServer
- Object
- TCPServer
- LogCourier::ExtendedTCPServer
- Defined in:
- lib/log-courier/server_tcp.rb
Overview
Wrap around TCPServer to grab last error for use in reporting which peer had an error
Instance Attribute Summary collapse
-
#peer ⇒ Object
readonly
Returns the value of attribute peer.
Instance Method Summary collapse
-
#accept ⇒ Object
Save the peer.
- #initialise ⇒ Object
- #reset_peer ⇒ Object
Instance Attribute Details
#peer ⇒ Object (readonly)
Returns the value of attribute peer.
24 25 26 |
# File 'lib/log-courier/server_tcp.rb', line 24 def peer @peer end |
Instance Method Details
#accept ⇒ Object
Save the peer
32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/log-courier/server_tcp.rb', line 32 def accept sock = super # Prevent reverse lookup by passing false begin peer = sock.peeraddr(false) rescue ArgumentError # Logstash <= 1.5.0 has a patch that blocks parameters (elastic/logstash#3364) peer = sock.peeraddr end @peer = "#{peer[2]}:#{peer[1]}" sock end |
#initialise ⇒ Object
26 27 28 29 |
# File 'lib/log-courier/server_tcp.rb', line 26 def initialise reset_peer super end |
#reset_peer ⇒ Object
45 46 47 48 |
# File 'lib/log-courier/server_tcp.rb', line 45 def reset_peer @peer = 'unknown' nil end |