From fd4d65adcd298252824a72217ce43981f9a125e5 Mon Sep 17 00:00:00 2001 From: Krrish Dholakia Date: Tue, 23 Jan 2024 07:32:30 -0800 Subject: [PATCH] fix(__init__.py): enable logging.debug to true if set verbose is true --- litellm/__init__.py | 6 +++++- litellm/_logging.py | 13 ++++++------- litellm/tests/test_completion.py | 1 + litellm/tests/test_router_debug_logs.py | 7 ++++--- 4 files changed, 16 insertions(+), 11 deletions(-) diff --git a/litellm/__init__.py b/litellm/__init__.py index 837e5443420..d67ecb718ad 100644 --- a/litellm/__init__.py +++ b/litellm/__init__.py @@ -2,10 +2,14 @@ import threading, requests from typing import Callable, List, Optional, Dict, Union, Any from litellm.caching import Cache -from litellm._logging import set_verbose +from litellm._logging import set_verbose, _turn_on_debug from litellm.proxy._types import KeyManagementSystem import httpx +############################################# +if set_verbose == True: + _turn_on_debug() +############################################# input_callback: List[Union[str, Callable]] = [] success_callback: List[Union[str, Callable]] = [] failure_callback: List[Union[str, Callable]] = [] diff --git a/litellm/_logging.py b/litellm/_logging.py index b1276c04513..e9a4a99cd16 100644 --- a/litellm/_logging.py +++ b/litellm/_logging.py @@ -22,16 +22,15 @@ verbose_proxy_logger.addHandler(handler) verbose_logger.addHandler(handler) +def _turn_on_debug(): + verbose_logger.setLevel(level=logging.DEBUG) # set package log to debug + verbose_router_logger.setLevel(level=logging.DEBUG) # set router logs to debug + verbose_proxy_logger.setLevel(level=logging.DEBUG) # set proxy logs to debug + + def print_verbose(print_statement): try: if set_verbose: print(print_statement) # noqa - verbose_logger.setLevel(level=logging.DEBUG) # set package log to debug - verbose_router_logger.setLevel( - level=logging.DEBUG - ) # set router logs to debug - verbose_proxy_logger.setLevel( - level=logging.DEBUG - ) # set proxy logs to debug except: pass diff --git a/litellm/tests/test_completion.py b/litellm/tests/test_completion.py index 43ffd2b0a39..940db3177e6 100644 --- a/litellm/tests/test_completion.py +++ b/litellm/tests/test_completion.py @@ -1387,6 +1387,7 @@ def test_completion_sagemaker(): assert ( cost > 0.0 and cost < 1.0 ) # should never be > $1 for a single completion call + raise Exception("it worked!") except Exception as e: pytest.fail(f"Error occurred: {e}") diff --git a/litellm/tests/test_router_debug_logs.py b/litellm/tests/test_router_debug_logs.py index c297f1d99e1..78b3b447042 100644 --- a/litellm/tests/test_router_debug_logs.py +++ b/litellm/tests/test_router_debug_logs.py @@ -10,15 +10,16 @@ import litellm, asyncio, logging from litellm import Router # this tests debug logs from litellm router and litellm proxy server -from litellm._logging import verbose_router_logger - -verbose_router_logger.setLevel(level=logging.INFO) +from litellm._logging import verbose_router_logger, verbose_logger, verbose_proxy_logger # this tests debug logs from litellm router and litellm proxy server def test_async_fallbacks(caplog): # THIS IS A PROD TEST - DO NOT DELETE THIS. Used for testing if litellm proxy verbose logs are human readable litellm.set_verbose = False + verbose_router_logger.setLevel(level=logging.INFO) + verbose_logger.setLevel(logging.CRITICAL + 1) + verbose_proxy_logger.setLevel(logging.CRITICAL + 1) model_list = [ { "model_name": "azure/gpt-3.5-turbo",