fix: merge all process stderr to stdout for full HF log visibility
Browse files- supervisord.conf +14 -8
supervisord.conf
CHANGED
|
@@ -1,19 +1,22 @@
|
|
| 1 |
[supervisord]
|
| 2 |
nodaemon=true
|
| 3 |
user=appuser
|
| 4 |
-
logfile=/
|
|
|
|
| 5 |
pidfile=/tmp/supervisord.pid
|
|
|
|
|
|
|
| 6 |
|
| 7 |
[program:backend]
|
| 8 |
-
command=uvicorn main:app --host 127.0.0.1 --port 8000 --workers 1
|
| 9 |
directory=/app/backend
|
| 10 |
autostart=true
|
| 11 |
autorestart=true
|
| 12 |
stdout_logfile=/dev/stdout
|
| 13 |
stdout_logfile_maxbytes=0
|
| 14 |
-
stderr_logfile=/dev/
|
| 15 |
stderr_logfile_maxbytes=0
|
| 16 |
-
environment=PYTHONUNBUFFERED="1"
|
| 17 |
|
| 18 |
[program:frontend]
|
| 19 |
command=node server.js
|
|
@@ -22,20 +25,23 @@ autostart=true
|
|
| 22 |
autorestart=true
|
| 23 |
stdout_logfile=/dev/stdout
|
| 24 |
stdout_logfile_maxbytes=0
|
| 25 |
-
stderr_logfile=/dev/
|
| 26 |
stderr_logfile_maxbytes=0
|
| 27 |
environment=NODE_ENV="production",PORT="3000",HOSTNAME="127.0.0.1"
|
| 28 |
|
| 29 |
[program:worker]
|
|
|
|
|
|
|
|
|
|
| 30 |
command=celery -A src.workers.celery_app.celery_app worker --loglevel=info --concurrency=1 --pool=solo --without-mingle --without-gossip --without-heartbeat
|
| 31 |
directory=/app/backend
|
| 32 |
autostart=true
|
| 33 |
autorestart=true
|
| 34 |
stdout_logfile=/dev/stdout
|
| 35 |
stdout_logfile_maxbytes=0
|
| 36 |
-
stderr_logfile=/dev/
|
| 37 |
stderr_logfile_maxbytes=0
|
| 38 |
-
environment=PYTHONUNBUFFERED="1"
|
| 39 |
|
| 40 |
[program:nginx]
|
| 41 |
command=nginx -c /app/nginx.conf -g "daemon off;"
|
|
@@ -43,5 +49,5 @@ autostart=true
|
|
| 43 |
autorestart=true
|
| 44 |
stdout_logfile=/dev/stdout
|
| 45 |
stdout_logfile_maxbytes=0
|
| 46 |
-
stderr_logfile=/dev/
|
| 47 |
stderr_logfile_maxbytes=0
|
|
|
|
| 1 |
[supervisord]
|
| 2 |
nodaemon=true
|
| 3 |
user=appuser
|
| 4 |
+
logfile=/dev/null
|
| 5 |
+
logfile_maxbytes=0
|
| 6 |
pidfile=/tmp/supervisord.pid
|
| 7 |
+
# Print supervisord's own events to stdout
|
| 8 |
+
loglevel=info
|
| 9 |
|
| 10 |
[program:backend]
|
| 11 |
+
command=uvicorn main:app --host 127.0.0.1 --port 8000 --workers 1 --log-level info
|
| 12 |
directory=/app/backend
|
| 13 |
autostart=true
|
| 14 |
autorestart=true
|
| 15 |
stdout_logfile=/dev/stdout
|
| 16 |
stdout_logfile_maxbytes=0
|
| 17 |
+
stderr_logfile=/dev/stdout
|
| 18 |
stderr_logfile_maxbytes=0
|
| 19 |
+
environment=PYTHONUNBUFFERED="1",PYTHONDONTWRITEBYTECODE="1"
|
| 20 |
|
| 21 |
[program:frontend]
|
| 22 |
command=node server.js
|
|
|
|
| 25 |
autorestart=true
|
| 26 |
stdout_logfile=/dev/stdout
|
| 27 |
stdout_logfile_maxbytes=0
|
| 28 |
+
stderr_logfile=/dev/stdout
|
| 29 |
stderr_logfile_maxbytes=0
|
| 30 |
environment=NODE_ENV="production",PORT="3000",HOSTNAME="127.0.0.1"
|
| 31 |
|
| 32 |
[program:worker]
|
| 33 |
+
; --loglevel=info prints every task received/succeeded/failed/retry
|
| 34 |
+
; --without-* flags disable gossip chatter to save Redis connections
|
| 35 |
+
; stderr is merged INTO stdout so HF console shows everything in one stream
|
| 36 |
command=celery -A src.workers.celery_app.celery_app worker --loglevel=info --concurrency=1 --pool=solo --without-mingle --without-gossip --without-heartbeat
|
| 37 |
directory=/app/backend
|
| 38 |
autostart=true
|
| 39 |
autorestart=true
|
| 40 |
stdout_logfile=/dev/stdout
|
| 41 |
stdout_logfile_maxbytes=0
|
| 42 |
+
stderr_logfile=/dev/stdout
|
| 43 |
stderr_logfile_maxbytes=0
|
| 44 |
+
environment=PYTHONUNBUFFERED="1",PYTHONDONTWRITEBYTECODE="1",PYTHONIOENCODING="utf-8"
|
| 45 |
|
| 46 |
[program:nginx]
|
| 47 |
command=nginx -c /app/nginx.conf -g "daemon off;"
|
|
|
|
| 49 |
autorestart=true
|
| 50 |
stdout_logfile=/dev/stdout
|
| 51 |
stdout_logfile_maxbytes=0
|
| 52 |
+
stderr_logfile=/dev/stdout
|
| 53 |
stderr_logfile_maxbytes=0
|