3
ܓi @ s. d dl Z d dlmZmZ G dd deeZdS ) N)PluginIndependentPluginc @ s, e Zd ZdZdZd
ZdZdd Zdd Zd S )ElasticzElasticSearch serviceZelasticservices
elasticsearchc C s d}d}yt |dd}x||D ]t}tjd|}tjd|}|rnt|j dkrn|j d j }tjd d
|}q|rt|j dkr|j d j }qW W dQ R X W n8 tk
r } z| jd| d
| W Y dd}~X nX ||fS )z Get hostname and port number Z localhostZ9200zUTF-8)encodingz(^network.host):(.*)z(^http.port):(.*) z"|\' NzFailed to parse z: r ) openresearchlengroupsstripsub ExceptionZ _log_info) selfels_config_fileZhostnameportZfreadlineZnetwork_hostZnetwork_porterr r /usr/lib/python3.6/elastic.pyget_hostname_port s
"(zElastic.get_hostname_portc
C s | j d}| j| | jdr*| jd n
| jd | j|\}}|d | }| jd| dd| dd| d d| d
d| dd| dd| 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)r )r ) __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