Current File : //usr/lib/python3.6/site-packages/sos/report/plugins/__pycache__/mongodb.cpython-36.pyc
3

 :�h��@sbddlZddlZddlmZmZmZmZGdd�de�ZGdd�dee�ZGdd�deee�Z	dS)	�N)�Plugin�RedHatPlugin�DebianPlugin�UbuntuPluginc@s<eZdZdZdZd
ZdZdedfZdZdd	�Z	d
d�Z
dS)�MongoDbzMongoDB document database�mongodb�servicesz-/var/lib/config-data/puppet-generated/mongodbz/etc/mongodb.confz/etc/mongod.confz/var/lib/mongodbcCs8|jd|jd|jdddg�|jd|j�d��dS)Nz/etc/mongodb.confz/etc/z%/etc/systemd/system/mongod.service.d/z/var/log/mongodb/mongodb.logz/var/lib/mongodb/mongodb.log*zdu -sh �/)�
add_copy_spec�var_puppet_gen�add_cmd_output�	db_folder)�self�r�/usr/lib/python3.6/mongodb.py�setup sz
MongoDb.setupcCs*x$d|jdgD]}|j|dd�qWdS)Nz/etc/mongodb.confz(mms-token)\s*=\s*(.*)z
\1 = ********)rZdo_file_sub)r�filerrr�postproc*szMongoDb.postprocN)r)�__name__�
__module__�__qualname__Z
short_descZplugin_nameZprofilesr�filesr
rrrrrrrs

rcs eZdZdZ�fdd�Z�ZS)�
RedHatMongoDb�mongodb-server�rh-mongodb32-mongodb-server�rh-mongodb34-mongodb-server�rh-mongodb36-mongodb-servercs t�j�|jddddg�dS)Nz/etc/sysconfig/mongodbz/etc/rh-mongodb*-mongo*.confz#/etc/opt/rh/rh-mongodb*/mongo*.confz./var/opt/rh/rh-mongodb*/log/mongodb/mongod.log)�superrr
)r)�	__class__rrr=s
zRedHatMongoDb.setup)rrrr)rrr�packagesr�
__classcell__rr)rrr4s
rcs0eZdZdZdZd
Z�fdd�Zd	d
�Z�ZS)�
UbuntuMongodb�mongodb-server�mongodb-server-core�juju-db�/var/lib/juju/db�/var/snap/juju-db/current/dbrcs�|jd�r|jd�}d|_n|jd�r6|jd�}d|_t�j�|r�xd|jd�D]V}tjd|�rP|}td|�d�dd	d
��$}tj	|�}|d}|j
||�WdQRXPqPWdS)Nz/var/lib/juju/dbz/var/snap/juju-db/curent/dbz/var/snap/juju-db/current/dbz/var/lib/juju/agentsz	machine-*z/var/lib/juju/agents/z/agent.conf�rzUTF-8)�encodingZ
statepassword)�path_existsr
rr�listdir�re�search�open�yamlZ	safe_load�_capture_db_data)rZ
get_juju_infoZthe_dir�username�f�data�password)rrrrYs"





zUbuntuMongodb.setupc	Csr|jd�rd}n|jd�r d}nd}dddddd	d
ddg	}x2|D]*}|j|�d
|�d|�d|��|dd�q@WdS)Nz/usr/bin/mongoz/usr/lib/juju/mongo*/bin/mongoz/snap/bin/juju-db.mongoz
db.hostInfo()zdb.getCollectionInfos()zdb.getCollectionNames()zdb.getProfilingStatus()zdb.replicationInfo()zdb.serverStatus()z
db.stats()z	rs.conf()zrs.status()zd 127.0.0.1:37017/juju --authenticationDatabase admin --ssl --sslAllowInvalidCertificates --username z --password z --eval Zdb_commands)Zsuggest_filenameZsubdir)r)r)rr0r3ZclientZ
cmds_to_check�cmdrrrr/os$


zUbuntuMongodb._capture_db_data)r"r#r$)r%r&)r$r)	rrrrrrrr/r rr)rrr!Gsr!)
r+r.Zsos.report.pluginsrrrrrrr!rrrr�<module>s
$