uranusjr commented on a change in pull request #20355:
URL: https://github.com/apache/airflow/pull/20355#discussion_r774924485
##########
File path: airflow/utils/log/logging_mixin.py
##########
@@ -38,17 +39,15 @@ class LoggingMixin:
"""Convenience super-class to have a logger configured with the class
name"""
def __init__(self, context=None):
+ self._log: Optional[logging.Logger] = None
self._set_context(context)
@property
def log(self) -> Logger:
"""Returns a logger."""
- try:
- # FIXME: LoggingMixin should have a default _log field.
- return self._log # type: ignore
- except AttributeError:
+ if not hasattr(self, '_log') or self._log is None:
Review comment:
How about making `_log` a class variable instead?
```python
class LoggingMixin:
_log: Optional[logging.Logger] = None
def __init__(self, context=None):
self._set_context(context)
@property
def log(self) -> Logger:
"""Returns a logger."""
if self._log is None:
self._log = ...
return self._log
```
I think this should work.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]