首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Gunicorn不记录错误和打印语句

Gunicorn不记录错误和打印语句
EN

Stack Overflow用户
提问于 2020-09-21 08:20:19
回答 1查看 3.3K关注 0票数 1

我正在尝试使用gunicorn运行一个烧瓶应用程序,并记录它的错误并访问文件。访问日志运行良好,但在错误日志文件中出现了问题。

错误日志文件设法将错误记录到日志文件中,但一两天后,它将不再在文件中添加任何错误或打印语句。

以下是我的武装部队配置

代码语言:javascript
复制
[Unit]
Description=Gunicorn service
After=network.target

[Service]
User=ubuntu
Group=ubuntu
WorkingDirectory=/home/ubuntu
ExecStart=/usr/bin/gunicorn3 --workers 3 --capture-output --log-level debug --access-logfile /logs/access.log --error-logfile /logs/error.log --bind unix:flaskapp.sock -m 007 app:app --reload

[Install]
WantedBy=multi-user.target

我无法找到造成同样问题的原因。我删除了该文件,它运行了一段时间,然后导致了同样的错误。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-09-21 08:40:14

您可以使用类并在app.py中定义应用程序记录器。另外,你还需要在应用程序中设置gunicorn日志记录器。

代码语言:javascript
复制
import logging
from flask import Flask, jsonify

app = Flask(__name__)

if __name__ != '__main__':
    gunicorn_logger = logging.getLogger('gunicorn.error')
    app.logger.handlers = gunicorn_logger.handlers
    app.logger.setLevel(gunicorn_logger.level)

@app.route('/')
def default_route():
    """Default route"""
    app.logger.debug('this is a DEBUG message')
    app.logger.info('this is an INFO message')
    app.logger.warning('this is a WARNING message')
    app.logger.error('this is an ERROR message')
    app.logger.critical('this is a CRITICAL message')
    return jsonify('hello world')

if __name__ == '__main__':
    app.run(host='0.0.0.0', port=8000, debug=True)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63988563

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档