a >h@sBddlmZddlmZddlmZmZmZGdddeeZdS))match)quote)Plugin RedHatPlugin PluginOptc@sTeZdZdZdZdZdZeddddgZd Z d Z d Z d Z d d Z ddZddZdS)Pulpz Pulp platformZpulp)z pulp-serverz pulp-katellozpython3-pulpcore)/etc/pulp/settings.pytasksz*number of tasks to collect from DB queries)defaultZdescZ localhostZ27017cCsd}d}ztdddd}|}Wdn1s:0Y|D]}td|r|dd d d }|d |_|d|_td |rd |d|_td|rd|d|_| drd}|rH| drH|d}d}qHWnt yYn0| ddi| gd| d}|d|d}|d|d} |d|d} |d} |d} |j|dd|j| dd|j| d d|j| d!d|j| d"dd#D](} |jd$| d%|d&d'| d(q|jd)d*ddS)+Nr Fz/etc/pulp/server.confrzUTF-8)encodingz^\s*seeds:\s+\S+:\S+,r:z\s*username:\s+\S+z-u z\s*password:\s+\S+z-p z [messaging]Tz certfile:z/etc/default/pulp_workersZpulp_worker_defaults) z/etc/pulp/*.confr/etc/pulp/settings.local.pyz /etc/pulp/server/plugins.conf.d/z/etc/default/pulp*z/var/log/httpd/pulp-http.log*z/var/log/httpd/pulp-https.log*z(/var/log/httpd/pulp-http_access_ssl.log*z)/var/log/httpd/pulp-https_access_ssl.log*z'/var/log/httpd/pulp-http_error_ssl.log*z(/var/log/httpd/pulp-https_error_ssl.log*r z"DBQuery.shellBatchSize=zG;; db.task_status.find().sort({finish_time: -1}).pretty().shellPrint()"z6;; db.reserved_resources.find().pretty().shellPrint()"zK;; db.task_status.find({state:{\$ne: \"finished\"}}).pretty().shellPrint()"a"function humanReadable(bytes) { var i = -1; var byteUnits = ['kB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB']; do { bytes = bytes / 1024; i++; } while (bytes > 1024); return Math.max(bytes, 0.1).toFixed(1) + ' ' + byteUnits[i];};var collectionNames = db.getCollectionNames(), stats = [];collectionNames.forEach(function (n) { stats.push(db[n].stats()); });stats = stats.sort(function(a, b) { return b['size'] - a['size']; });for (var c in stats) { print(stats[c]['ns'] + ': ' + humanReadable(stats[c]['size']) + ' (' + humanReadable(stats[c]['storageSize']) + ')'); }"z "db.stats()"zmongo-task_status)Zsuggest_filenamezmongo-reserved_resourceszpulp-running_taskszmongo-collection_sizeszmongo-db_statsZqucz qpid-stat -z --ssl-certificate=z -b amqps://localhost:5671Z qpid_stat_)tagszosudo -u pulp PULP_SETTINGS='/etc/pulp/settings.py' DJANGO_SETTINGS_MODULE='pulpcore.app.settings' dynaconf listZ dynaconf_list)openread splitlinesrsplitdbhostdbportdbuser dbpassword startswithIOErrorZ add_file_tagsZ add_copy_specZ get_optionbuild_mongo_cmdZadd_cmd_output)selfZmessaging_cert_fileZin_messaging_sectionfileZ pulp_lineslineZuriZ num_tasksZmtasksZmresZprunZcsizesZdbstatsoptr#;/usr/lib/python3.9/site-packages/sos/report/plugins/pulp.pysetup!sn *              z Pulp.setupcCs@d}d|jd|jd|jd|j}d}|t|||fS)z Build mongoDB command z bash -c %sz--host z --port  z mongo pulp_database %s --eval %s)rrrrr)rqueryZ_cmdZ_mondbZ_moncmdr#r#r$rs zPulp.build_mongo_cmdcCsbd}d}|d||d}d}|d||d}d}|d|||d |||d ||dS) Nz0(([a-z].*(passw|token|cred|secret).*)\:(\s))(.*)z \1 ********z/etc/pulp/(.*)\.conf$z7(\s*\".*(passw|cred|token|secret).*\"\s*:(\s))(.*)(\w+)z \1********z/etc/pulp(.*)(.json$)z_((?:SECRET_KEY|AUTH_LDAP_BIND_PASSWORD)(?:\<.+\>)?(\s*=)?|(password|PASSWORD)(\"|'|:)+)\s*(\S*)rrz dynaconf list)Zdo_path_regex_subZdo_cmd_output_sub)rZetcregreplZjregZ key_pass_rer#r#r$postprocsz Pulp.postprocN)__name__ __module__ __qualname__Z short_descZ plugin_nameZpackagesfilesrZ option_listrrrrr%rr)r#r#r#r$rsvrN) rerZshlexrZsos.report.pluginsrrrrr#r#r#r$ s