**Apache Airflow version**: 2.0.1

**Environment**:

- **Cloud provider or hardware configuration**: AWS

**What happened**:
I have Airflow with Cloudwatch-based remote logging running. I also have `BashOperator` that does, for example, `rsync` with invalid parameters, for example `rsync -av test test`. The output of the `rsync` error is formatted and contains empty line. Once that empty line is logged to the Cloudwatch, i receive an error:
```
2021-04-06 19:29:22,318] /home/airflow/.local/lib/python3.6/site-packages/watchtower/__init__.py:154 WatchtowerWarning: Failed to deliver logs: Parameter validation failed:
Invalid length for parameter logEvents[5].message, value: 0, valid range: 1-inf
[2021-04-06 19:29:22,320] /home/airflow/.local/lib/python3.6/site-packages/watchtower/__init__.py:158 WatchtowerWarning: Failed to deliver logs: None
```

So basically empty lines can't be submitted to the Cloudwatch and as result the whole output of the process doesn't appear in logs.

**What you expected to happen**:

I expect to have an output of the bash command in logs. Empty lines can be skipped or replaced with something.

**How to reproduce it**:

For example: run `BashOperator` with `rsync` command that fails on Airflow with Cloudwatch-based remote logging. It could be any other command that produces empty line in the output.
airflow/providers/amazon/aws/log/cloudwatch_task_handler.py
stream_name = self._render_filename(task_instance, try_number)
        return (
            f'*** Reading remote log from Cloudwatch log_group: {self.log_group} '
            f'log_stream: {stream_name}.\n{self.get_cloudwatch_logs(stream_name=stream_name)}\n',
            {'end_of_log': True},
        )
    def get_cloudwatch_logs(self, stream_name: str) -> str:
        """
        Return all logs from the given log stream.
        :param stream_name: name of the Cloudwatch log stream to get all logs from
        :return: string of all logs from the given log stream
        """
        try:
            events = list(
                self.hook.get_log_events(
                    log_group=self.log_group, log_stream_name=stream_name, start_from_head=True
                )
            )
            return '\n'.join(self._event_to_str(event) for event in events)
        except Exception:
            msg = f'Could not read remote logs from log_group: {self.log_group} log_stream: {stream_name}.'
            self.log.exception(msg)
            return msg
    def _event_to_str(self, event: dict) -> str:
        event_dt = datetime.utcfromtimestamp(event['timestamp'] / 1000.0)
        formatted_event_dt = event_dt.strftime('%Y-%m-%d %H:%M:%S,%f')[:-3]
        message = event['message']
        return f'[{formatted_event_dt}] {message}'