我正在使用Django watchtower将事件记录到AWS Cloudwatch,并在设置文件中添加了日志配置。
- 发展. py**
boto3_session = Session(
aws_access_key_id=AWS_ACCESS_KEY_ID,
aws_secret_access_key=AWS_SECRET_ACCESS_KEY,
region_name=AWS_REGION)
LOGGING = {
'version': 1,
'disable_existing_loggers': False,
'formatters': {
'simple': {
'format': "%(asctime)s [%(levelname)-8s] %(message)s",
'datefmt': "%Y-%m-%d %H:%M:%S"
},
'aws': {
# you can add specific format for aws here
'format': "%(asctime)s [%(levelname)-8s] %(message)s",
'datefmt': "%Y-%m-%d %H:%M:%S"
},
},
'handlers': {
'console': {
'class': 'logging.StreamHandler',
},
'watchtower': {
'level': 'INFO',
'class': 'watchtower.CloudWatchLogHandler',
'boto3_session': boto3_session,
'log_group': 'StagingBeagleApi',
'stream_name': 'ApplicationLogStream',
'formatter': 'aws',
},
},
'loggers': {
'django': {
'level': 'INFO',
'handlers': ['watchtower'],
'propagate': True,
},
},
}
但是,当我运行服务器时,控制台中没有出现任何错误,但我的站点无法通过localhost:3000访问,我得到了ERR_CONNECTION_REFUSED
救命啊!
- 更新**
如果我把django
键替换成watchtower
,它就可以工作了。但是,我想把所有的Django日志放到Cloudwatch中,我按照文档中的记录器键django
操作。
1条答案
按热度按时间zbq4xfa01#
你可以在数组['watchtower']旁边传递另一个值,这可能会解决这个问题。你可以检查下面的代码作为示例。
'记录者':{ 'django':{“级别”:“信息”,“处理程序”:[“瞭望塔”、“ Django ”]、“宣传”:真、}、}、