我在 AWS lambda 中有一个具有多个模块的 lambda 函数。我正在尝试使用 python 日志记录库在 CloudWatch 中打印日志。我在这里找到了另一篇文章,其中 force 参数应设置为 true 以强制记录器使用此配置。这是我在主模块中的日志记录配置:
logger = logging.getLogger(__name__)
logging.basicConfig(format='%(asctime)s - %(name)s - %(levelname)s - %(message)s', level=logging.INFO, force=True,
datefmt='%Y-%m-%d %H:%M:%S')
在其余模块中,我有以下代码来使用相同的记录器并在调用它们时将日志打印到 cloudwatch:
logger = logging.getLogger(__name__)
当我在本地运行此配置时,它按预期工作。但是,当我运行 lambda 函数时,日志不会显示在 cloudwatch 中。在 cloudwatch 中显示的具有所需配置的唯一日志是以下行:
2023-02-22 10:18:26 - botocore.credentials - INFO - Found credentials in environment variables.
没有显示模块中代码的实际日志,这些日志在本地显示,配置完全相同。有人知道为什么日志没有显示在 cloudwatch 中吗?