class Raven::Processor::UTF8Conversion
Public Instance Methods
process(value)
click to toggle source
# File lib/raven/processor/utf8conversion.rb, line 4 def process(value) if value.is_a? Array value.map { |v_| process v_ } elsif value.is_a? Hash value.merge(value) { |k, v_| process v_ } else clean_invalid_utf8_bytes(value) end end
Private Instance Methods
clean_invalid_utf8_bytes(obj)
click to toggle source
# File lib/raven/processor/utf8conversion.rb, line 16 def clean_invalid_utf8_bytes(obj) if obj.respond_to?(:to_utf8) obj.to_utf8 elsif obj.respond_to?(:encoding) obj.encode('UTF-16', :invalid => :replace, :undef => :replace, :replace => '').encode('UTF-8') else obj end end