๓
P'^c           @@ sฒ   d  Z  d d l m Z m Z d d l Z d d l m Z d d l m Z m	 Z	 m
 Z
 d d l m Z m Z m Z d g Z d e f d	     YZ d
   Z e d k rฎ e   n  d S(   uท  

The :program:`celery events` command.

.. program:: celery events

.. seealso::

    See :ref:`preload-options` and :ref:`daemon-options`.

.. cmdoption:: -d, --dump

    Dump events to stdout.

.. cmdoption:: -c, --camera

    Take snapshots of events using this camera.

.. cmdoption:: --detach

    Camera: Detach and run in the background as a daemon.

.. cmdoption:: -F, --freq, --frequency

    Camera: Shutter frequency.  Default is every 1.0 seconds.

.. cmdoption:: -r, --maxrate

    Camera: Optional shutter rate limit (e.g. 10/m).

.. cmdoption:: -l, --loglevel

    Logging level, choose between `DEBUG`, `INFO`, `WARNING`,
    `ERROR`, `CRITICAL`, or `FATAL`.  Default is INFO.

i    (   t   absolute_importt   unicode_literalsN(   t   partial(   t   detachedt   set_process_titlet   strargv(   t   Commandt   Optiont   daemon_optionsu   eventst   eventsc           B@ s   e  Z d  Z e Z e Z e d d d d d d d d d d d e d  Z d   Z d   Z	 d d d d d d e d  Z
 d d	  Z d
   Z RS(   uร  Event-stream utilities.

    Commands::

        celery events --app=proj
            start graphical monitor (requires curses)
        celery events -d --app=proj
            dump events to screen.
        celery events -b amqp://
        celery events -c <camera> [options]
            run snapshot camera.

    Examples::

        celery events
        celery events -d
        celery events -c mod.attr -F 1.0 --detach --maxrate=100/m -l info
    g      ๐?u   INFOu   celery eventsc         K@ sr   | |  _  | r |  j   S| rh |  j | d | d | d | d | d | d |	 d |
 d | d	 | d
 | 
S|  j   S(   Nt   freqt   maxratet   loglevelt   logfilet   pidfilet   uidt   gidt   umaskt   working_directoryt   detach(   t	   prog_namet
   run_evdumpt	   run_evcamt	   run_evtop(   t   selft   dumpt   camerat	   frequencyR   R   R   R   R   R   R   R   R   R   t   kwargs(    (    s3   /tmp/pip-unpacked-wheel-gV1wwp/celery/bin/events.pyt   runH   s    	
c         C@ s-   d d l  m } |  j d  | d |  j  S(   Ni    (   t   evdumpu   dumpt   app(   t   celery.events.dumperR   t   set_process_statusR   (   R   R   (    (    s3   /tmp/pip-unpacked-wheel-gV1wwp/celery/bin/events.pyR   Y   s    c         C@ s-   d d l  m } |  j d  | d |  j  S(   Ni    (   t   evtopu   topR   (   t   celery.events.cursesmonR"   R!   R   (   R   R"   (    (    s3   /tmp/pip-unpacked-wheel-gV1wwp/celery/bin/events.pyR   ^   s    c	         K@ s   d d l  m }
 | } |  j d  |  j |	 d <t |
 | d | d | |	 } | r t | | | | | |   |   SWd  QXn |   Sd  S(   Ni    (   t   evcamu   camu   appR   R   (   t   celery.events.snapshotR$   R!   R   R   R   (   R   R   R   R   R   R   R   R   R   R   R$   t   workdirt   cam(    (    s3   /tmp/pip-unpacked-wheel-gV1wwp/celery/bin/events.pyR   c   s    u    c         C@ s@   d j  |  j |  } d j  | t t j   } t | d | S(   Nu   {0}:{1}u   {0} {1}t   info(   t   formatR   R   t   syst   argvR   (   R   t   progR(   (    (    s3   /tmp/pip-unpacked-wheel-gV1wwp/celery/bin/events.pyR!   s   s    c         C@ s   t  d d d d t  d d  t  d d d t  d d	 d
 d d d d t  d d  t  d d d d f t d d  t |  j j d  S(   Nu   -du   --dumpt   actionu
   store_trueu   -cu   --camerau   --detachu   -Fu   --frequencyu   --freqt   typeu   floatt   defaultg      ๐?u   -ru	   --maxrateu   -lu
   --loglevelu   INFOt   default_pidfileu   celeryev.pidu   events(   R   R   t   tupleR   t   user_options(   R   (    (    s3   /tmp/pip-unpacked-wheel-gV1wwp/celery/bin/events.pyt   get_optionsx   s    	vN(   t   __name__t
   __module__t   __doc__t   doct   Falset   supports_argst   NoneR   R   R   R   R!   R3   (    (    (    s3   /tmp/pip-unpacked-wheel-gV1wwp/celery/bin/events.pyR	   2   s   					c          C@ s   t    }  |  j   d  S(   N(   R	   t   execute_from_commandline(   t   ev(    (    s3   /tmp/pip-unpacked-wheel-gV1wwp/celery/bin/events.pyt   main   s    	u   __main__(   R6   t
   __future__R    R   R*   t	   functoolsR   t   celery.platformsR   R   R   t   celery.bin.baseR   R   R   t   __all__R	   R=   R4   (    (    (    s3   /tmp/pip-unpacked-wheel-gV1wwp/celery/bin/events.pyt   <module>%   s   	T	