diff --git a/docker/prod_entrypoint.sh b/docker/prod_entrypoint.sh index 1fc09d2c864..b6ba58852ca 100644 --- a/docker/prod_entrypoint.sh +++ b/docker/prod_entrypoint.sh @@ -8,6 +8,8 @@ fi if [ "$USE_DDTRACE" = "true" ]; then export DD_TRACE_OPENAI_ENABLED="False" exec ddtrace-run litellm "$@" +elif [ "$USE_NEWRELIC" = "true" ]; then + exec newrelic-admin run-python litellm "$@" else exec litellm "$@" fi \ No newline at end of file diff --git a/docker/supervisord.conf b/docker/supervisord.conf index c6855fe652b..edc8136b3aa 100644 --- a/docker/supervisord.conf +++ b/docker/supervisord.conf @@ -6,7 +6,7 @@ loglevel=info 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' +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; elif [ "$USE_NEWRELIC" = "true" ]; then exec newrelic-admin run-program 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 diff --git a/requirements.txt b/requirements.txt index 3bc968c8cb8..96983ed7cca 100644 --- a/requirements.txt +++ b/requirements.txt @@ -26,6 +26,7 @@ async_generator==1.10.0 # for async ollama calls langfuse==2.59.7 # for langfuse self-hosted logging prometheus_client==0.20.0 # for /metrics endpoint on proxy ddtrace==2.19.0 # for advanced DD tracing / profiling +newrelic>=11.0.1 # for New Relic APM and AI monitoring orjson==3.11.2 # fast /embedding responses polars==1.31.0 # for data processing apscheduler==3.10.4 # for resetting budget in background