�
i��de � �, � d dl mZmZ G d� dee� Zy)� )�Plugin�RedHatPluginc �( � e Zd ZdZdZdZdZd� Zd� Zy)�LustrezLustre filesystem�lustre)�storage�network�cluster)r z
lustre-clientc �V � | j ddj |� z d|z d�� y)zZUse lctl get_param to collect a selection of parameters into a
file.
zlctl get_param %s� z params-%sF)�suggest_filename�stderrN)�add_cmd_output�join)�self�name�
param_lists �;/usr/lib/python3/dist-packages/sos/report/plugins/lustre.py�
get_paramszLustre.get_params s3 � �
���/�#�(�(�:�2F�F�-8�4�-?�#(� � *� c � � | j g d�� | j dg d�� | j dg d�� | j dddg� | j d d
g� | j ddd
g� | j ddg� | j ddg� | j ddg� | j ddg� | j dg d�� | j ddg� | j ddg� | j dddg� | j dd g� | j d!d"g� | j d#� | j d$d%g� | j d&� r| j d'� y y )(N)zlctl debug_kernelzlctl device_listzlctl list_nidszlctl route_listzlnetctl net show -v�basic)�version�health_check�debug�timeout�lnet)�peers�routes�routers�niszldlm-lruzldlm.namespaces.*.lru_max_agezldlm.namespaces.*.lru_sizezldlm-statesz *.*.state�jobid�
jobid_name� jobid_varz job-statsz
*.*.job_stats�server_uuidsz*.*.*server_uuid�mgc_irstatezmgc.*.ir_statezlfs dfz lfs df -i�
osc_client)zosc.*.max_dirty_mbzosc.*.max_pages_per_rpczosc.*.checksumszosc.*.max_rpcs_in_flight�osdz3osd-*.*.{mntdev,files*,kbytes*,blocksize,brw_stats}�quotaz)osd-*.*.quota_slave.{info,limit_*,acct_*}�mgszmgs.MGS.ir_timeoutzmgs.MGS.live.*�exportsz*.*.exports.*.*�mntdevz
osd*.*.mntdevz*/mb_groupsz/sys/fs/ldiskfsz/proc/fs/ldiskfs�all_logsz/tmp/lustre-log.*)r r �add_forbidden_path�
add_copy_spec�
get_option)r s r �setupzLustre.setup s� � ����
� �
����;�
�
���� E�F�����
,�.J�K�
�
���
��}�5�����,��!<�=�����o�%6�7�����);�(<�=����
�(8�'9�:�
�����
� �
���� '
� �
���� !?� @� A����� #:� ";� <����� 4�6F�G�H���� �$5�#6�7�����?�"3�4�
���
�.������
� � �?�?�:�&����2�3� 'r N) �__name__�
__module__�__qualname__�
short_desc�plugin_name�profiles�packagesr r1 � r r r r s � �$�J��K�2�H�,�H�*�64r r N)�sos.report.pluginsr r r r9 r r �<module>r; s �� 4�G4�V�\� G4r |