o
    O6ufö  ã                   @   sR   d dl mZmZmZmZ G dd„ deƒZG dd„ deeeƒZG dd„ deeƒZdS )	é    )ÚPluginÚRedHatPluginÚDebianPluginÚUbuntuPluginc                   @   s4   e Zd ZdZdZdZdZdd„ Zdd„ Zd	d
„ Z	dS )ÚOpenStackCeilometerzOpenstack CeilometerÚopenstack_ceilometer)Ú	openstackÚopenstack_controllerÚopenstack_computez0/var/lib/config-data/puppet-generated/ceilometerc                 C   sJ   |   d¡r|  dg¡ n|  dg¡ |  d| jd g¡ |  ddi¡ d S )NÚall_logsz/var/log/ceilometer/*z/var/log/ceilometer/*.logú/etc/ceilometer/*z/var/log/ceilometer/central.logÚceilometer_central_log)Ú
get_optionÚadd_copy_specÚvar_puppet_genÚadd_file_tags©Úself© r   úI/usr/lib/python3/dist-packages/sos/report/plugins/openstack_ceilometer.pyÚsetup   s   
ÿÿþ
þzOpenStackCeilometer.setupc                 C   s&   |   d||¡ |   | jd ||¡ dS )z Apply regex substitution r   N)Údo_path_regex_subr   )r   ÚregexpÚsubstr   r   r   Úapply_regex_sub-   s
   þz#OpenStackCeilometer.apply_regex_subc                 C   sL   g d¢}g d¢}d  |¡}|  dd  |¡› d�d¡ |  d|› d�d¡ d S )	N)Úadmin_passwordÚconnection_passwordÚhost_passwordÚmemcache_secret_keyÚos_passwordÚpasswordÚqpid_passwordÚrabbit_passwordÚreadonly_user_passwordÚ
secret_keyÚssl_key_passwordÚtelemetry_secretÚmetering_secret)Ú
connectionÚbackend_urlÚtransport_urlú|z(^\s*(z)\s*=\s*)(.*)z\1*********z!)\s*=\s*(.*)://(\w*):)(.*)(@(.*))z\1*********\6)Újoinr   )r   Úprotect_keysÚconnection_keysÚjoin_con_keysr   r   r   Úpostproc5   s   
þ
þzOpenStackCeilometer.postprocN)
Ú__name__Ú
__module__Ú__qualname__Ú
short_descÚplugin_nameÚprofilesr   r   r   r0   r   r   r   r   r      s    r   c                   @   s   e Zd ZdZdS )ÚDebianCeilometer)zceilometer-apizceilometer-agent-centralzceilometer-agent-computezceilometer-agent-notificationzceilometer-collectorzceilometer-commonzpython-ceilometerzpython3-ceilometerN)r1   r2   r3   Úpackagesr   r   r   r   r7   J   s    r7   c                       s    e Zd ZdZ‡ fdd„Z‡  ZS )ÚRedHatCeilometer)zopenstack-selinuxc                    s4   t ƒ  ¡  |  d¡r|  dg¡ d S |  dg¡ d S )Nr   z /var/log/containers/ceilometer/*z$/var/log/containers/ceilometer/*.log)Úsuperr   r   r   r   ©Ú	__class__r   r   r   ]   s   


ÿ
ÿzRedHatCeilometer.setup)r1   r2   r3   r8   r   Ú__classcell__r   r   r;   r   r9   Y   s    r9   N)Úsos.report.pluginsr   r   r   r   r   r7   r9   r   r   r   r   Ú<module>   s   8ÿ