
    `f                     (   d Z ddlZddlmZ ddlmZ ddlZddlmZm	Z	 dZ
 ej        d          Z ej        d          Z ej        d	          Z ej        d
          Z ej        d          ZdZ G d de          Zd Z G d d          Z ej                    ej        e	d                                     Ze                    e           ej        dd          ej        d                                     Ze                    e           ej        dd          ej        d                                     Ze                    e           ej        dd          ej        d                                     Ze                    e           ej        dd          ej        d                                     Ze                    e           ej        dd          ej        d                                     ZdS )The ``celery logtool`` command.    N)Counter)	FileInput)CeleryCommandhandle_preload_options)logtoolz^\[\d\d\d\d\-\d\d-\d\d z.+?\] Receivedz
.+?\] Taskz.+?([\w\.]+)\[(.+?)\].+z.+?[\w\.]+\[.+?\] (.+)z
Report
======
Task total: {task[total]}
Task errors: {task[errors]}
Task success: {task[succeeded]}
Task completed: {task[completed]}
Tasks
=====
{task[types].format}
c                   $    e Zd Zed             ZdS )_task_countsc                 @    d                     d | D                       S )N
c              3   *   K   | ]} d j         | V  dS )z{}: {}N)format).0is     D/var/www/html/env/lib/python3.11/site-packages/celery/bin/logtool.py	<genexpr>z&_task_counts.format.<locals>.<genexpr>#   s+      ;;!,;;;;;;    )joinselfs    r   r   z_task_counts.format!   s#    yy;;d;;;;;;r   N)__name__
__module____qualname__propertyr    r   r   r
   r
      s-        < < X< < <r   r
   c                 ^    t                               |           }|                                S N)RE_TASK_INFOmatchgroups)linems     r   	task_infor#   &   s#    4  A88::r   c                   @    e Zd Zd
dZd Zd Zd Zd Zd Zd Z	d	 Z
dS )AuditNc                     t                      | _        i | _        i | _        t                      | _        t                      | _        d| _        || _        || _	        || _
        d | _        d S )Nr   )setidsnamesresultsreadyr   
task_typestask_errorson_task_erroron_traceon_debug	prev_line)r   r.   r/   r0   s       r   __init__zAudit.__init__-   sZ    55
UU
!))*  r   c                 T    t          |          D ]}|                     |           | S r   )r   feed)r   filesr!   s      r   runz	Audit.run9   s/    e$$ 	 	DIIdOOOOr   c                 x    || j         |<   | j                            |           | j        |xx         dz  cc<   d S N   )r)   r(   addr,   )r   r!   	task_nametask_ids       r   task_receivedzAudit.task_received>   sF    '
7W	"""a'"""""r   c                     | j                             |           || j        |<   d|vr|                     ||||           d S d S )N	succeeded)r+   r:   r*   
task_errorr   r!   r;   r<   results        r   
task_readyzAudit.task_readyC   sS    
w &Wf$$OOD)Wf===== %$r   c                 h    | xj         dz  c_         | j        r|                     ||||           d S d S r8   )r-   r.   rA   s        r   r@   zAudit.task_errorI   sN    A 	AtY@@@@@	A 	Ar   c           	         t                               |          rt                              |          r*t          |          \  }}|                     |||           nt
                              |          r]t          |          \  }}t                              |          }|r|                                \  }|                     ||||           n| j	        r| 	                    |           || _
        d S | j        r=|                     d                    t          d | j
        |g                               d | _
        d S )Nr   )RE_LOG_STARTr   RE_TASK_RECEIVEDr#   r=   RE_TASK_READYRE_TASK_RESULTr    rC   r0   r1   r/   r   filterrA   s        r   r4   z
Audit.feedN   s0   d## 	"%%d++ (%.t__"	7""4G<<<<$$T** (%.t__"	7'--d33 .$mmooGFi&AAAA= (MM$'''!DNNN} Odiitdnd5K(L(LMMNNN!DNNNr   c                      | j         | j        z  S r   )r(   r+   r   s    r   incomplete_taskszAudit.incomplete_tasksb   s    x$*$$r   c                     dt          | j                                                  t          | j                  | j        t          | j                  t          | j                  | j        z
  diS )Ntask)typestotalerrors	completedr?   )r
   r,   most_commonlenr(   r-   r+   r   s    r   reportzAudit.reporte   sa    %do&A&A&C&CDDTX* __ __t/?? 
 	
r   )NNN)r   r   r   r2   r6   r=   rC   r@   r4   rL   rU   r   r   r   r%   r%   +   s        
 
 
 
  
( ( (
> > >A A A
" " "(% % %	
 	
 	
 	
 	
r   r%   c                     dS )r   Nr   )ctxs    r   r   r   q   s      r   )clsr5   )nargsc           	          | j                             t          j        di t	                                          |                                                     d S )Nr   )objechoREPORT_FORMATr   r%   r6   rU   rW   r5   s     r   statsr`   x   s^     GLL%  
''++e


#
#
%
%      r   c                 `    t          | j        j                                      |           d S )N)r/   r%   r\   r]   r6   r_   s     r   tracesrc      -     
37<   $$U+++++r   c                 T     t           fd                              |           d S )Nc                 8    j                             |           S r   )r\   r]   )r!   _rW   s     r   <lambda>zerrors.<locals>.<lambda>   s    d);); r   )r.   )r%   r6   r_   s   ` r   rQ   rQ      s4     
;;;;<<<@@GGGGGr   c                     t                      }|                    |           |                                D ]}| j                            d|             d S )NzDid not complete: )r%   r6   rL   r\   r]   )rW   r5   auditr<   s       r   
incompleterk      sd     GGE	IIe))++ 5 53'3344445 5r   c                 `    t          | j        j                                      |           d S )N)r0   rb   r_   s     r   debugrm      rd   r   ) __doc__recollectionsr   	fileinputr   clickcelery.bin.baser   r   __all__compilerF   rG   rH   r   rI   r^   listr
   r#   r%   grouppass_contextr   commandargumentr`   rc   rQ   rk   rm   r   r   r   <module>r{      s   % % 				              A A A A A A A A
rz4552:/00 
=))rz455566
< < < < <4 < < <  
C
 C
 C
 C
 C
 C
 C
 C
L * *   * 	]##r"""   #" $# 	]##r""", ,  #" $#, 	]##r"""H H  #" $#H 	]##r"""5 5  #" $#5 	]##r""", ,  #" $#, , ,r   