id[|ddlZddlmZmZmZmZmZddlmZGddeZ Gdde eZ Gdd e eeZ y) N)Plugin UbuntuPlugin DebianPlugin SCLPlugin PluginOpt)findc eZdZdZdZdZdZdZeddd ed d e d edde dez edde d edde d edde d gZ ddZ dZ y) PostgreSQLzPostgreSQL RDBMS postgresql)services)r zpostgresql-commonz' (password visible in process listings)pghomez/var/lib/pgsqlzpsql server home directory)defaultdescusernamepostgreszusername for pg_dump)rval_typerpasswordzpassword for pg_dumpdbnamez"database name to dump with pg_dumpdbhostz.database hostname/IP address (no unix sockets)dbporti8zdatabase server listening portNc |jdr0|jdsdtjvr|jdr"|jdtjd<|jdrKd|jdd|jdd|jd d |jd}n'd |jdd |jdd }||j||}|j ||d dy|j j d|jdyy)Nrr PGPASSWORDrz pg_dump -U rz -h z -p rz -w -F t zpg_dump -C -U  Tr)suggest_filenamebinary sizelimitz-password must be supplied to dump a database.z3WARN: password must be supplied to dump a database.) get_optionosenvironconvert_cmd_scladd_cmd_outputsoslogwarning add_alert)selfsclfilenamecmds ?/usr/lib/python3/dist-packages/sos/report/plugins/postgresql.py do_pg_dumpzPostgreSQL.do_pg_dump0s ??8 $z*lbjj.H??:./3z/JBJJ|,??8, 3111 C- 31C ?..sC8C##C(+/1$> ##CI= %cj|j|jd|jdzy)N du -sh %sr )r+r"r)r&s r*setupzPostgreSQL.setupSs(  K$//(*CCDr,)Nz pgdump.tar)__name__ __module__ __qualname__ short_desc plugin_nameprofilespackagespassword_warn_textrstrint option_listr+r/r,r*r r s#JKH2HB ($43 5*j3- /*b3-0BB D(B; =(BG I(D37 9 K!FEr,r c"eZdZdZfdZxZS)RedHatPostgreSQL)r z!rh-postgresql95-postgresql-serverz!rh-postgresql10-postgresql-serverz!rh-postgresql12-postgresql-serverc tt| |jd}|g}|jddD]}|j dd}|j ||}|j||j|r|jd|z|j|jdds||jvs|j|d|z |D]o}td |D]}|j|td |D]}|j|d D]$}|j|j!|d |&qy)Nr z -postgresql-rr.z-serverrzpgdump-scl-%s.tar)r'r(z*.logz*.conf) PG_VERSIONzpostmaster.optsdata)superr=r/rr6splitconvert_copyspec_sclappend path_isdirr"is_service_runningreplace scls_matchedr+r add_copy_spec path_join) r&r dirspkgr'_dirr(f __class__s r*r/zRedHatPostgreSQL.setupas\ +-*x==$ MC))N+A.C,,S&9D KK t$##K$$67'' Ir(BC4,,,C2E2KL M DD $/ -""8, -!40 -""8, -7 D""4>>$#BC D Dr,)r0r1r2r6r/ __classcell__rPs@r*r=r=XsHDDr,r=ceZdZfdZxZS)DebianPostgreSQLcPtt| |jgdy)N)z/var/log/postgresql/*.logz/etc/postgresql/*/main/*.confz%/var/lib/postgresql/*/main/PG_VERSIONz*/var/lib/postgresql/*/main/postmaster.opts)rBrTr/rJ)r&rPs r*r/zDebianPostgreSQL.setups$ +-   r,)r0r1r2r/rQrRs@r*rTrTs   r,rT) rsos.report.pluginsrrrrr sos.utilitiesrr r=rTr;r,r*rXsG ++?E?ED'Dz9'DT  z<  r,