o
    ?Zce                     @   sJ   d Z ddlZddlmZ ddlmZ dZejdfddZG dd	 d	Z	dS )
zDebugging support.    N)wraps)
get_logger)setup_logging
Logwrappedc                 C   s>   |sddgn|}|D ]}t |}|t  ||  q
dS )zSetup logging to stdout.zkombu.connectionzkombu.channelN)r   
addHandlerloggingStreamHandlersetLevel)loglevelloggerslogger_namelogger r   G/var/www/chikooza/env/lib/python3.10/site-packages/kombu/utils/debug.pyr      s   r   c                   @   s6   e Zd ZdZdZdddZdd Zdd	 Zd
d ZdS )r   z(Wrap all object methods, to log on call.)	__enter____exit__Nc                 C   s   || _ t|| _|| _d S N)instancer   r   ident)selfr   r   r   r   r   r   __init__   s   

zLogwrapped.__init__c                    s<   t j| t r|jv r S t  fdd}|S )Nc                     s   d}j r|j j7 }| j d7 }| r"|dtt| 7 }|r8| r*|d7 }|ddd | D 7 }|d7 }j	|  | i |S )N (z, c                 s   s"    | ]\}}| d |V  qdS )=Nr   ).0keyvaluer   r   r   	<genexpr>0   s    z<Logwrapped.__getattr__.<locals>.__wrapped.<locals>.<genexpr>))
r   formatr   __name__joinmaprepritemsr   debug)argskwargsinfomethr   r   r   	__wrapped%   s   
z)Logwrapped.__getattr__.<locals>.__wrapped)getattrr   callable_Logwrapped__ignorer   )r   r   _Logwrapped__wrappedr   r)   r   __getattr__   s   zLogwrapped.__getattr__c                 C   
   t | jS r   )r#   r   r   r   r   r   __repr__8      
zLogwrapped.__repr__c                 C   r1   r   )dirr   r2   r   r   r   __dir__;   r4   zLogwrapped.__dir__)NN)	r    
__module____qualname____doc__r.   r   r0   r3   r6   r   r   r   r   r      s    
r   )
r9   r   
vine.utilsr   	kombu.logr   __all__DEBUGr   r   r   r   r   r   <module>   s    	