-
Notifications
You must be signed in to change notification settings - Fork 14.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Avoid non-recommended usage of logging #37792
Conversation
I've also thought about ban implicit usage of root logger because I thought it made by a mistake in most case if not at all. E.g. by add this rules into the banned api
❯ pre-commit run ruff --all-files
Run 'ruff' for extremely fast Python linting.............................Failed
- hook id: ruff
- exit code: 1
airflow/example_dags/example_python_decorator.py:60:9: TID251 `logging.info` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
airflow/example_dags/example_python_operator.py:63:9: TID251 `logging.info` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
airflow/metrics/otel_logger.py:308:9: TID251 `logging.debug` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
airflow/metrics/otel_logger.py:403:5: TID251 `logging.info` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
airflow/providers/amazon/aws/auth_manager/views/auth.py:84:13: TID251 `logging.error` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
airflow/providers/amazon/aws/auth_manager/views/auth.py:85:13: TID251 `logging.error` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
airflow/providers/amazon/aws/auth_manager/views/auth.py:86:13: TID251 `logging.error` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
airflow/sensors/base.py:260:21: TID251 `logging.error` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
airflow/settings.py:469:5: TID251 `logging.debug` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
airflow/utils/cli_action_loggers.py:41:5: TID251 `logging.debug` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
airflow/utils/cli_action_loggers.py:55:5: TID251 `logging.debug` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
airflow/utils/cli_action_loggers.py:67:5: TID251 `logging.debug` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
airflow/utils/cli_action_loggers.py:72:13: TID251 `logging.exception` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
airflow/utils/cli_action_loggers.py:85:5: TID251 `logging.debug` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
airflow/utils/cli_action_loggers.py:90:13: TID251 `logging.exception` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
airflow/utils/cli_action_loggers.py:134:13: TID251 `logging.warning` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
airflow/utils/cli_action_loggers.py:136:9: TID251 `logging.warning` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
airflow/utils/log/file_processor_handler.py:127:21: TID251 `logging.warning` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
airflow/utils/log/file_processor_handler.py:133:17: TID251 `logging.warning` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
airflow/utils/log/file_task_handler.py:541:17: TID251 `logging.warning` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
airflow/utils/log/task_handler_with_custom_formatter.py:61:9: TID251 `logging.warning` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
airflow/www/extensions/init_jinja_globals.py:54:9: TID251 `logging.error` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
airflow/www/views.py:1361:9: TID251 `logging.info` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
airflow/www/views.py:1480:13: TID251 `logging.warning` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
airflow/www/views.py:1487:9: TID251 `logging.info` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
airflow/www/views.py:4009:13: TID251 `logging.warning` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
airflow/www/views.py:4510:13: TID251 `logging.warning` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
airflow/www/views.py:4897:17: TID251 `logging.error` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
airflow/www/views.py:4904:21: TID251 `logging.warning` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
airflow/www/views.py:4910:21: TID251 `logging.info` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
airflow/www/views.py:5844:13: TID251 `logging.error` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
tests/dag_processing/test_job_runner.py:905:17: TID251 `logging.info` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
tests/dag_processing/test_job_runner.py:914:17: TID251 `logging.debug` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
tests/dag_processing/test_job_runner.py:946:13: TID251 `logging.info` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
tests/dag_processing/test_job_runner.py:949:13: TID251 `logging.info` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
tests/dag_processing/test_job_runner.py:950:13: TID251 `logging.info` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
tests/dag_processing/test_job_runner.py:952:13: TID251 `logging.info` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
tests/dags/test_task_view_type_check.py:50:1: TID251 `logging.info` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
Found 38 errors.
tests/providers/apache/hive/transfers/test_s3_to_hive.py:210:13: TID251 `logging.info` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
tests/system/providers/amazon/aws/example_sagemaker.py:165:9: TID251 `logging.info` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
tests/system/providers/amazon/aws/example_sagemaker.py:457:9: TID251 `logging.error` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
tests/system/providers/github/example_github.py:84:39: TID251 `logging.info` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
tests/system/providers/github/example_github.py:95:39: TID251 `logging.info` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
tests/system/utils/__init__.py:36:13: TID251 `logging.warning` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
tests/system/utils/__init__.py:51:9: TID251 `logging.info` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
tests/task/task_runner/test_standard_task_runner.py:381:9: TID251 `logging.info` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
tests/task/task_runner/test_standard_task_runner.py:385:9: TID251 `logging.info` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
tests/task/task_runner/test_standard_task_runner.py:387:9: TID251 `logging.info` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
tests/task/task_runner/test_standard_task_runner.py:390:9: TID251 `logging.info` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
tests/task/task_runner/test_standard_task_runner.py:394:9: TID251 `logging.info` is banned: Instantiate new `logger = logging.getLogger(__name__)` and use it instead of root logger
Found 12 errors. Any thoughts? I do not want to include this change into this PR, just want to implement and fix it as follow up |
I'd be inclined to add this rule too. I really think it is used by mistake |
Enable two
ruff
checks for the logging and usages:G003
G004
Example of rule violations before manual + auto fixes
^ Add meaningful description above
Read the Pull Request Guidelines for more information.
In case of fundamental code changes, an Airflow Improvement Proposal (AIP) is needed.
In case of a new dependency, check compliance with the ASF 3rd Party License Policy.
In case of backwards incompatible changes please leave a note in a newsfragment file, named
{pr_number}.significant.rst
or{issue_number}.significant.rst
, in newsfragments.