Supervisor: ERROR (spawn error) lỗi khi chạy Gunicorn

Mình gặp lỗi này khi chạy project Python của mình, dưới đây là file gunicorn.conf mà mình sử dụng. Các bạn tham khảo để kiểm tra lỗi.

user@server:~$ sudo nano /etc/supervisor/conf.d/gunicorn.conf
Nội dung:
[program:project1]
directory=/home/user/django_project/project1
command=/home/user/django_project/project1_env/bin/gunicorn project1.wsgi:application --workers 3 --bind 127.0.0.1:8080 --log-level info
stdout_logfile = /home/user/django_project/logs/access.log
stderr_logfile = /home/user/django_project/logs/error.log
stdout_logfile_maxbytes=5000000
stderr_logfile_maxbytes=5000000
stdout_logfile_backups=100000
stderr_logfile_backups=100000
autostart=true
autorestart=true
startsecs=10
stopasgroup=true
priority=99

Khi chạy Supervisor với lệnh

user@server:~$ sudo supervisorctl status project1
Lỗi
project1: ERROR (spawn error)

Mình đã kiểm tra lỗi ở trong file log của supervisor bằng lệnh:

user@server:~$ sudo nano /var/log/supervisor/supervisord.log

Và lỗi trả về nó như thế này

2023-04-05 09:15:08,116 INFO exited: budgetpro (exit status 3; not expected)
2023-04-05 09:15:18,132 INFO spawned: 'budgetpro' with pid 11531
2023-04-05 09:15:19,389 INFO exited: budgetpro (exit status 3; not expected)
2023-04-05 09:15:20,392 INFO gave up: budgetpro entered FATAL state, too many start retries too quickly
2023-04-05 09:17:38,486 INFO spawned: 'budgetpro' with pid 11545

Mình tưởng lỗi này nằm trong file gunicorn.conf và mình đã cố gắng tìm kiếm cái dấu chấm phẩy (;) trong file đó xem có phải lỗi do cú pháp không? Nhưng không phải thế. Cuối cùng hóa ra vấn đề nó nằm ở đây:

Quảng cáo

Ủng hộ website

  • Lỗi này trả về khi supervisor bắt lỗi từ Python
  • Chương trình project1 của mình vẫn chạy, do đó mình phải xem lỗi ở file /home/user/django_project/logs/error.log như đã khai báo ở trên
  • Sau khi xem error.log mình đã hiểu và giải quyết được vấn đề. Đó là đường dẫn thư mục của mình bị sai

Tất nhiên lỗi các bạn gặp phải sẽ khác lỗi của mình, mục đích của bài này giúp các bạn chỗ có thể tìm được lỗi chính xác.

Bài viết sử dụng Ubuntu 20.0.4 . Chúc các bạn thành công

Add Comment