bug描述 Describe the Bug
现象:
import paddle之后,logger疑似失效,不能生成log文件
最小复现:
、、、
import logging
import paddle
logging.basicConfig(
filename="train.log",
format="%(asctime)s - %(levelname)s - %(name)s - %(message)s",
datefmt="%m/%d/%Y %H:%M:%S",
level=logging.INFO,
)
logger = logging.getLogger()
logger.info('paddlepaddle')
、、、
录屏:
https://github.com/user-attachments/assets/e5ccd8e0-fec3-4bb7-a0aa-6d63bab36094
其他补充信息 Additional Supplementary Information
我在两台设备上进行了测试,现象相同,版本信息如下:
MacOS:
paddle2onnx 1.0.9
paddlefsl 1.1.0
paddlenlp 2.8.1
paddlepaddle 2.6.1
x86_64:
paddle2onnx 1.2.6
paddlefsl 1.1.0
paddlenlp 2.8.1
paddlepaddle-gpu 2.6.1.post117
1条答案
按热度按时间sr4lhrrt1#
你好,感谢你的反馈。这确实是一个影响开发者体验的bug。
这个问题的根因是paddle.distributed.utils.log_utils提供的get_logger函数使用的name参数默认为"root",而该函数在被调用的时候多次使用了默认参数,这直接影响了root logger的行为。
Paddle/python/paddle/distributed/utils/log_utils.py
Line 18 in 3c19d80
def get_logger(log_level, name="root"):
一个能够立即想到的解决方案是将name参数的默认值修改为"root"以外的其他值。我们会从影响范围等角度进一步评估这一解决方案是否可行