我正在尝试配置将在我的Kubernetes集群中运行的uWSGI应用程序,以将日志发送到AWS CloudWatch。
例如,我尝试使用守望台设置日志记录。(为简单起见,我删除了一些代码)。
from flask import Flask
import logging, watchtower
boto3.session import Session
logging.basicConfig(level=logging.INFO, format='%(asctime)s:[%(levelname)s]:%(message)s')
boto3_session = Session(region_name='ap-southeast-2')
info_logger = logging.getLogger('info_logger')
info_logger.addHandler(watchtower.CloudWatchLogHandler(log_group, stream_name='info', use_queues=False, boto3_session=boto3_session))
error_logger = logging.getLogger('error_logger')
error_logger.addHandler(watchtower.CloudWatchLogHandler(log_group, stream_name='error', use_queues=False, boto3_session=boto3_session))
app = Flask(__name__)
if __name__ = __main__:
app.run(host='0.0.0.0')
该应用程序成功创建了一个日志组,并将Flask级别的日志流传输到CloudWatch。但是,uWSGI记录的任何内容都不会发送到CloudWatch。
我看过this question与古尼康有关的问题,但这无助于解答我的问题。
是否可以将uWSGI级别日志直接流式传输到AWS CloudWatch?