a >h"@sbddlZddlZddlmZmZmZmZGdddeZGdddeeZGdddeeeZ dS) N)Plugin RedHatPlugin DebianPlugin UbuntuPluginc@s<eZdZdZdZdZdZdedfZdZdd Z d d Z d S) MongoDbzMongoDB document databasemongodb)servicesz-/var/lib/config-data/puppet-generated/mongodb/etc/mongodb.confz/etc/mongod.confz/var/lib/mongodbcCs8|d|jd|jdddg|d|jddS)Nr z/etc/z%/etc/systemd/system/mongod.service.d/z/var/log/mongodb/mongodb.logz/var/lib/mongodb/mongodb.log*zdu -sh /) add_copy_specvar_puppet_genadd_cmd_output db_folderselfr>/usr/lib/python3.9/site-packages/sos/report/plugins/mongodb.pysetup sz MongoDb.setupcCs&d|jdfD]}||ddqdS)Nr z(mms-token)\s*=\s*(.*)z \1 = ********)r Z do_file_sub)rfilerrrpostproc*szMongoDb.postprocN) __name__ __module__ __qualname__Z short_descZ plugin_nameZprofilesr filesrrrrrrrrs rcs eZdZdZfddZZS) RedHatMongoDb)mongodb-serverzrh-mongodb32-mongodb-serverzrh-mongodb34-mongodb-serverzrh-mongodb36-mongodb-servercst|gddS)N)z/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)rrrpackagesr __classcell__rrrrr4srcs0eZdZdZdZdZfddZddZZS) UbuntuMongodb)rzmongodb-server-corejuju-db)/var/lib/juju/db/var/snap/juju-db/current/db)r"rc s|d}rd|_n|d}r*d|_t|r|dD]l}td|rB|}td|ddd d .}t |}|d }| ||Wdn1s0YqqBdS) Nr#z/var/snap/juju-db/curent/dbr$z/var/lib/juju/agentsz machine-*z/var/lib/juju/agents/z /agent.confrzUTF-8)encodingZ statepassword) path_existsrrrlistdirresearchopenyamlZ safe_load_capture_db_data)rZ get_juju_infoZthe_dirusernamefdatapasswordrrrrYs"    *zUbuntuMongodb.setupc Cs`|drd}n|dr d}nd}gd}|D]*}|j|d|d|d||dd q0dS) Nz/usr/bin/mongoz/usr/lib/juju/mongo*/bin/mongoz/snap/bin/juju-db.mongo) z db.hostInfo()zdb.getCollectionInfos()zdb.getCollectionNames()zdb.getProfilingStatus()zdb.replicationInfo()zdb.serverStatus()z db.stats()z rs.conf()z rs.status()zd 127.0.0.1:37017/juju --authenticationDatabase admin --ssl --sslAllowInvalidCertificates --username z --password z --eval Z db_commands)Zsuggest_filenameZsubdir)r'r )rr.r1ZclientZ cmds_to_checkcmdrrrr-ms"   zUbuntuMongodb._capture_db_data) rrrrrrrr-r rrrrr!Gs  r!) r)r,Zsos.report.pluginsrrrrrrr!rrrr s $