This causes data loss, and logstash aims to never have a default situation that intentionally loses data. 

In my opinion, the correct action to take is to know what encoding your data uses and tell logstash what that encoding is using the charset setting on this codec. 

Put another way - If you get UTF-8 encoding errors, it is because your data is *NOT* UTF-8 and logstash defaults to expecting UTF-8; if your data is not UTF-8 (signalled by a UTF-8 encoding error) then you MUST tell logstash what the correct encoding is.

I'm open to making a non-default option that makes logstash try other encodings if the logstash is told the data is UTF-8 but it is not valid, but it's worth noting this will have performance implications as well as causing data loss - making it an option is OK with me.