o
    *b	
                     @   s&   d dl mZmZ G dd deeZdS )    )PluginIndependentPluginc                   @   s<   e Zd ZdZdZdZdZded fZdZdd	 Z	d
d Z
dS )RabbitMQzRabbitMQ messaging servicerabbitmq)servicesz./var/lib/config-data/puppet-generated/rabbitmq/etc/rabbitmq/rabbitmq.confz/etc/rabbitmq/rabbitmq.config)zrabbitmq-serverc                 C   s   d}g }|   }|D ]}|d drd}||d  q
|r;|D ]}| | | jd|dd | jd|ddd	 q!n| d | jddd
 | d| jd | jd | jd g | dg | jdgdd d S )NF   r   Tzrabbitmqctl report)	container
foregroundz4rabbitmqctl eval 'rabbit_diagnostics:maybe_stuck().'
   )r	   r
   timeout)r   z/etc/rabbitmq/*z/etc/security/limits.d/z/etc/systemd/z/var/log/rabbitmq/*z+/var/log/containers/rabbitmq/erl_crash.dumpr   )Z	sizelimit)Zget_containers
startswithappendZadd_container_logsZadd_cmd_outputZadd_copy_specvar_puppet_gen)selfZin_containerZcontainer_namesZ_containersZ_conr	    r   =/usr/lib/python3/dist-packages/sos/report/plugins/rabbitmq.pysetup   sT   


zRabbitMQ.setupc                 C   s   |  ddd d S )Nr   z(\s*default_pass\s*,\s*)\S+z\1<<***>>},)Zdo_file_sub)r   r   r   r   postprocF   s   zRabbitMQ.postprocN)__name__
__module____qualname__Z
short_descZplugin_nameZprofilesr   filesZpackagesr   r   r   r   r   r   r      s    .r   N)Zsos.report.pluginsr   r   r   r   r   r   r   <module>   s   