
    g                         d dl Z d dlZd dlZej                  j	                  d e j                  j                  d             d dlZd dlZd dlm	Z	 d Z
 G d de	      Z e       Zy)    Nz../..)CustomLoggerc                 <    t         j                  rt        |        y y )N)litellmset_verboseprint)print_statements    g/var/www/openai/venv/lib/python3.12/site-packages/litellm/proxy/example_config_yaml/custom_callbacks.pyprint_verboser
      s    o     c                   6    e Zd Zd Zd Zd Zd Zd Zd Zd Z	y)	MyCustomHandlerc           	         d}d}t        | d       	 t        d       t        |       D cg c]#  }t        j                  t	        | |            r|% }}|D ]  }t        d|         t        |        y c c}w # t
        $ r Y y w xY w)Nz[94mz[0mz!Initialized LiteLLM custom loggerz*Logger Initialized with following methods:z - )r
   dirinspectismethodgetattr	Exception)selfblue_color_codereset_color_codemethodmethodss        r	   __init__zMyCustomHandler.__init__   s    $$))JKL	FG "$i'F##GD&$9: '   "F8n- "-.0  		s"   A= (A8#A= 8A= =	B	B	c                     t        d       y )NzPre-API Callr
   )r   modelmessageskwargss       r	   log_pre_api_callz MyCustomHandler.log_pre_api_call,   s
    n%r   c                     t        d       y )NzPost-API Callr   r   r   response_obj
start_timeend_times        r	   log_post_api_callz!MyCustomHandler.log_post_api_call/   s
    o&r   c                     t        d       y )Nz	On Streamr   r!   s        r	   log_stream_eventz MyCustomHandler.log_stream_event2   s
    k"r   c                     t        d       y )NzOn Success!r   r!   s        r	   log_success_eventz!MyCustomHandler.log_success_event5   s
    m$r   c                 \   K   t        d       t        j                  |      }|dkD  sJ y w)NzOn Async Success!)completion_responseg        )r
   r   completion_cost)r   r   r"   r#   r$   response_costs         r	   async_log_success_eventz'MyCustomHandler.async_log_success_event8   s0     )*//LQs"""s   *,c                 l   K   	 t        d       y # t        $ r}t        d|        Y d }~y d }~ww xY ww)NzOn Async Failure !zException: )r
   r   )r   r   r"   r#   r$   es         r	   async_log_failure_eventz'MyCustomHandler.async_log_failure_event>   s5     	-./ 	-Ks+,,	-s    4 4	1,414N)
__name__
__module____qualname__r   r   r%   r'   r)   r.   r1    r   r	   r   r      s%    &&'#%-r   r   )ossys	tracebackpathinsertabspathr   r   "litellm.integrations.custom_loggerr   r
   r   proxy_handler_instancer5   r   r	   <module>r>      sZ    	 
  rwww   ;

*-l *-Z )* r   