Discovered in this [Slack conversation](https://apache-airflow.slack.com/archives/CCQ7EGB1P/p1621752408213700).

When you have connections with empty passwords masking logs masks all the character breaks:
```
[2021-05-23 04:00:23,309] {{logging_mixin.py:104}} WARNING - ***-***-***-*** ***L***o***g***g***i***n***g*** ***e***r***r***o***r*** ***-***-***-***
[2021-05-23 04:00:23,309] {{logging_mixin.py:104}} WARNING - ***T***r***a***c***e***b***a***c***k*** ***(***m***o***s***t*** ***r***e***c***e***n***t*** ***c***a***l***l*** ***l***a***s***t***)***:***
[2021-05-23 04:00:23,309] {{logging_mixin.py:104}} WARNING - *** *** ***F***i***l***e*** ***"***/***u***s***r***/***l***o***c***a***l***/***l***i***b***/***p***y***t***h***o***n***3***.***8***/***l***o***g***g***i***n***g***/***_***_***i***n***i***t***_***_***.***p***y***"***,*** ***l***i***n***e*** ***1***0***8***1***,*** ***i***n*** ***e***m***i***t***
*** *** *** *** ***m***s***g*** ***=*** ***s***e***l***f***.***f***o***r***m***a***t***(***r***e***c***o***r***d***)***
```

Until this is fixed, an easy workaround is to disable masking via disabling sensitive connection masking in configuration:

```
[core]
hide_sensitive_var_conn_fields = False
```

or vial env variable:

```
AIRFLOW__CORE__HIDE_SENSITIVE_VAR_CONN_FIELDS="False"
```

This is only happening if the task accesses the connection that has empty password. However there are a number of cases where such an empty password might be "legitimate" - for example in `google` provider you might authenticate using env variable or workload identity and connection will contain an empty password then.
tests/utils/log/test_secrets_masker.py
"""
        Test that when ``logger.exception`` is called when there is no current exception we still log.
        (This is a "bug" in user code, but we shouldn't die because of it!)
        """
        logger.exception("Err")
        assert caplog.text == textwrap.dedent(
            """\
            ERROR Err
            NoneType: None
            """
        )
    @pytest.mark.xfail(reason="Cannot filter secrets in traceback source")
    def test_exc_tb(self, logger, caplog):
        """
        Show it is not possible to filter secrets in the source.
        It is not possible to (regularly/reliably) filter out secrets that
        appear directly in the source code. This is because the formatting of
        exc_info is not done in the filter, it is done after the filter is
        called, and fixing this "properly" is hard/impossible.
        (It would likely need to construct a custom traceback that changed the
        source. I have no idead if that is even possible)
        This test illustrates that, but ix marked xfail in case someone wants to
        fix this later.
        """
        try:
            raise RuntimeError("Cannot connect to user:password")
        except RuntimeError:
            logger.exception("Err")
        line = lineno() - 4
        assert caplog.text == textwrap.dedent(