o
    *b                     @   s2   d dl mZmZmZ d dlZG dd deeZdS )    )PluginIndependentPlugin	PluginOptNc                   @   s<   e Zd ZdZdZdZdZeddddgZd	d
 Z	dd Z
dS )DlmzDLM (Distributed lock manager)dlm)Zcluster)Zcmanr   Z	pacemakerlockdumpFzcapture lock dumps for DLM)defaultZdescc                 C   s4   |  dg | g d | dr|   d S d S )Nz/etc/sysconfig/dlm)zdlm_tool log_plockzdlm_tool dumpzdlm_tool ls -nr   )Zadd_copy_specadd_cmd_outputZ
get_optiondo_lockdump)self r   8/usr/lib/python3/dist-packages/sos/report/plugins/dlm.pysetup   s   
z	Dlm.setupc                 C   s^   d}|  |}|d dkrd S d}t|tj}||d D ]}| jd| d| d qd S )	Nzdlm_tool lsstatusr   z^name\s+([^\s]+)$outputzdlm_tool lockdebug -svw '%s'zdlm_locks_%s)Zsuggest_filename)Zcollect_cmd_outputrecompile	MULTILINEfindallr	   )r   Zdlm_toolresultZlock_expZlock_reZ	lockspacer   r   r   r
   $   s   
zDlm.do_lockdumpN)__name__
__module____qualname__Z
short_descZplugin_nameZprofilesZpackagesr   Zoption_listr   r
   r   r   r   r   r      s    r   )Zsos.report.pluginsr   r   r   r   r   r   r   r   r   <module>   s   