Fix unicode error when log have special characters.
We have next error when running, then our job exits without running remain cases, remain actions.
Process Process-1:
Traceback (most recent call last):
File "/usr/lib/python3.7/multiprocessing/process.py", line 297, in _bootstrap
self.run()
File "/usr/lib/python3.7/multiprocessing/process.py", line 99, in run
self._target(*self._args, **self._kwargs)
File "/usr/lib/python3/dist-packages/lava_common/log.py", line 95, in sender
records.append(data.decode("utf-8"))
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x87 in position 4647: invalid start byte
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/lava_dispatcher/action.py", line 243, in run_actions
action.logger.debug(msg)
File "/usr/lib/python3/dist-packages/lava_common/log.py", line 184, in debug
self.log_message(logging.DEBUG, "debug", message, *args, **kwargs)
File "/usr/lib/python3/dist-packages/lava_common/log.py", line 169, in log_message
self._log(level, data_str, ())
File "/usr/lib/python3.7/logging/__init__.py", line 1519, in _log
self.handle(record)
File "/usr/lib/python3.7/logging/__init__.py", line 1529, in handle
self.callHandlers(record)
File "/usr/lib/python3.7/logging/__init__.py", line 1591, in callHandlers
hdlr.handle(record)
File "/usr/lib/python3.7/logging/__init__.py", line 905, in handle
self.emit(record)
File "/usr/lib/python3/dist-packages/lava_common/log.py", line 129, in emit
self.writter.send_bytes(data.encode("utf-8"))
File "/usr/lib/python3.7/multiprocessing/connection.py", line 200, in send_bytes
self._send_bytes(m[offset:offset + size])
File "/usr/lib/python3.7/multiprocessing/connection.py", line 404, in _send_bytes
self._send(header + buf)
File "/usr/lib/python3.7/multiprocessing/connection.py", line 368, in _send
n = write(self._handle, buf)
BrokenPipeError: [Errno 32] Broken pipe