You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在DigitalOcean上查看Flask应用(Gunicorn+Nginx架构)的错误日志?

当然可行!你完全可以通过SSH终端实时查看Gunicorn的错误输出,也能配置把错误持久化到日志文件里,下面分两种情况给你详细说明:

一、实时查看Gunicorn错误输出(SSH终端)

生产环境里Gunicorn一般都是用systemd服务管理的,这种情况下直接用journalctl命令就能实时跟踪日志:

  • 实时查看完整的Gunicorn服务日志:
    sudo journalctl -u gunicorn.service -f
    
    解释:-u用来指定要查看的服务名称,-f是“实时跟踪”的意思,新产生的日志会立刻输出到你的终端里。
  • 要是只想过滤错误相关的内容,可以搭配grep:
    sudo journalctl -u gunicorn.service -f | grep -i error
    

如果是直接在终端前台运行Gunicorn(非生产环境常用),错误会直接输出到当前终端的标准错误流(stderr),你能直接看到,但生产环境不建议这么运行。

二、配置Gunicorn将错误输出到日志文件

如果需要把错误日志持久化保存下来,有两种常用配置方式:

方式1:通过Gunicorn启动命令指定日志文件

  1. 先创建Gunicorn的日志目录(如果还没有的话):
    sudo mkdir -p /var/log/gunicorn
    
  2. 给日志目录赋予合适的权限(得确保运行Gunicorn的用户有权读写,比如用www-data或者你的部署用户):
    sudo chown your_deploy_user:your_deploy_group /var/log/gunicorn
    
  3. 修改Gunicorn的启动命令,添加日志参数:
    gunicorn --workers 3 --bind unix:/path/to/your/app.sock your_app:app --error-logfile /var/log/gunicorn/error.log --access-logfile /var/log/gunicorn/access.log
    
    解释:--error-logfile指定错误日志的保存路径,--access-logfile指定访问日志的保存路径,你可以根据自己的需求调整路径和文件名。

方式2:通过systemd服务文件配置日志

如果你的Gunicorn是用systemd管理的,也可以直接在服务文件里配置日志:

  1. 编辑Gunicorn的systemd服务文件(通常路径是/etc/systemd/system/gunicorn.service):
    sudo nano /etc/systemd/system/gunicorn.service
    
  2. 在[Service]区块下添加日志相关配置:
    [Service]
    # 保留你已有的其他配置(比如User、WorkingDirectory、ExecStart等)
    StandardError=append:/var/log/gunicorn/error.log
    StandardOutput=append:/var/log/gunicorn/access.log
    
    解释:StandardError和StandardOutput分别指定错误和标准输出的日志文件,append表示以追加模式写入,不会覆盖原有日志内容。
  3. 保存文件后,重载systemd配置并重启Gunicorn服务:
    sudo systemctl daemon-reload
    sudo systemctl restart gunicorn.service
    

配置完成后,你也可以用tail命令实时查看日志文件:

tail -f /var/log/gunicorn/error.log

内容的提问来源于stack exchange,提问作者user791793

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.08 14:02:49