42 lines
1.5 KiB
Plaintext
42 lines
1.5 KiB
Plaintext
[supervisord]
|
|
nodaemon=true
|
|
loglevel=info
|
|
|
|
[group:litellm]
|
|
programs=main,health
|
|
|
|
[program:main]
|
|
command=sh -c 'if [ "$USE_DDTRACE" = "true" ]; then export DD_TRACE_OPENAI_ENABLED="False"; exec ddtrace-run python -m litellm.proxy.proxy_cli --host 0.0.0.0 --port=4000 $LITELLM_ARGS; else exec python -m litellm.proxy.proxy_cli --host 0.0.0.0 --port=4000 $LITELLM_ARGS; fi'
|
|
autostart=true
|
|
autorestart=true
|
|
startretries=3
|
|
priority=1
|
|
exitcodes=0
|
|
stopasgroup=true
|
|
killasgroup=true
|
|
stdout_logfile=/dev/stdout
|
|
stderr_logfile=/dev/stderr
|
|
stdout_logfile_maxbytes = 0
|
|
stderr_logfile_maxbytes = 0
|
|
environment=PYTHONUNBUFFERED=true
|
|
|
|
[program:health]
|
|
command=sh -c '[ "$SEPARATE_HEALTH_APP" = "1" ] && exec uvicorn litellm.proxy.health_endpoints.health_app_factory:build_health_app --factory --host 0.0.0.0 --port=${SEPARATE_HEALTH_PORT:-4001} || exit 0'
|
|
autostart=true
|
|
autorestart=true
|
|
startretries=3
|
|
priority=2
|
|
exitcodes=0
|
|
stopasgroup=true
|
|
killasgroup=true
|
|
stdout_logfile=/dev/stdout
|
|
stderr_logfile=/dev/stderr
|
|
stdout_logfile_maxbytes = 0
|
|
stderr_logfile_maxbytes = 0
|
|
environment=PYTHONUNBUFFERED=true
|
|
|
|
[eventlistener:process_monitor]
|
|
command=python -c "from supervisor import childutils; import os, signal; [os.kill(os.getppid(), signal.SIGTERM) for h,p in iter(lambda: childutils.listener.wait(), None) if h['eventname'] in ['PROCESS_STATE_FATAL', 'PROCESS_STATE_EXITED'] and dict([x.split(':') for x in p.split(' ')])['processname'] in ['main', 'health'] or childutils.listener.ok()]"
|
|
events=PROCESS_STATE_EXITED,PROCESS_STATE_FATAL
|
|
autostart=true
|
|
autorestart=true |