관리-도구
편집 파일: elastic.cpython-39.opt-1.pyc
a -�_g� � @ s. d dl Z d dlmZmZ G dd� dee�ZdS )� N)�Plugin�IndependentPluginc @ s, e Zd ZdZdZdZdZdd� Zdd� Zd S ) �ElasticzElasticSearch serviceZelastic)Zservices)Z elasticsearchc C s� d}d}z�t |dd���}|D ]t}t�d|�}t�d|�}|rlt|�� �dkrl|�� d �� }t�d d |�}q|rt|�� �dkr|�� d �� }qW d � n1 s�0 Y W n: ty� } z"| �d|� d |� �� W Y d}~n d}~0 0 ||fS )z Get hostname and port number Z localhostZ9200zUTF-8)�encodingz(^network.host):(.*)z(^http.port):(.*)� ���z"|\'� NzFailed to parse z: ) �open�re�search�len�groups�strip�sub� ExceptionZ _log_info) �self�els_config_file�hostname�portZfread�lineZnetwork_hostZnetwork_port�err� r �>/usr/lib/python3.9/site-packages/sos/report/plugins/elastic.py�get_hostname_port s 4,zElastic.get_hostname_portc C s� | � d�}| �|� | �d�r*| �d� n | �d� | �|�\}}|d | }| �d|� d�d|� d�d|� d �d|� d �d|� d�d|� d�d|� d �g� d S )Nz$/etc/elasticsearch/elasticsearch.ymlZall_logsz/var/log/elasticsearch/*z/var/log/elasticsearch/*.log�:z curl -X GET 'z/_cluster/settings?pretty'z/_cluster/health?pretty'z/_cluster/stats?pretty'z/_cat/nodes?v'z/_cat/indices'z /_cat/shards'z/_cat/aliases')Z path_joinZ add_copy_specZ get_optionr Zadd_cmd_output)r r �hostr Zendpointr r r �setup* s$ � �z Elastic.setupN) �__name__� __module__�__qualname__Z short_descZplugin_nameZprofilesZpackagesr r r r r r r s r )r Zsos.report.pluginsr r r r r r r �<module> s