# File lib/new_relic/agent/pipe_channel_manager.rb, line 93 def read @in.close unless @in.closed? @last_read = Time.now length_bytes = @out.read(NUM_LENGTH_BYTES) if length_bytes message_length = deserialize_message_length(length_bytes) if message_length @out.read(message_length) else length_hex = length_bytes.bytes.map { |b| b.to_s(16) }.join(' ') NewRelic::Agent.logger.error("Failed to deserialize message length from pipe. Bytes: [#{length_hex}]") nil end else NewRelic::Agent.logger.error("Failed to read bytes for length from pipe.") nil end end