Linux cyberpanel 5.15.0-156-generic #166-Ubuntu SMP Sat Aug 9 00:02:46 UTC 2025 x86_64
LiteSpeed
: 160.191.175.3 | : 216.73.216.114
Cant Read [ /etc/named.conf ]
8.2.29
aodai6801
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
usr /
lib /
python3 /
dist-packages /
sos /
report /
plugins /
[ HOME SHELL ]
Name
Size
Permission
Action
__pycache__
[ DIR ]
drwxr-xr-x
__init__.py
136.88
KB
-rw-r--r--
aap_controller.py
3.15
KB
-rw-r--r--
aap_eda.py
2.01
KB
-rw-r--r--
aap_gateway.py
1.71
KB
-rw-r--r--
aap_hub.py
1.31
KB
-rw-r--r--
aap_receptor.py
1.85
KB
-rw-r--r--
abrt.py
1.51
KB
-rw-r--r--
acpid.py
917
B
-rw-r--r--
activemq.py
1.65
KB
-rw-r--r--
aide.py
1.41
KB
-rw-r--r--
alternatives.py
2.27
KB
-rw-r--r--
anaconda.py
1.46
KB
-rw-r--r--
anacron.py
782
B
-rw-r--r--
ansible.py
1.08
KB
-rw-r--r--
apache.py
5.17
KB
-rw-r--r--
apparmor.py
1.05
KB
-rw-r--r--
apport.py
1.37
KB
-rw-r--r--
apt.py
1.73
KB
-rw-r--r--
arcconf.py
2.17
KB
-rw-r--r--
ata.py
1016
B
-rw-r--r--
auditd.py
1.83
KB
-rw-r--r--
autofs.py
2.77
KB
-rw-r--r--
azure.py
2.37
KB
-rw-r--r--
bcache.py
2.2
KB
-rw-r--r--
bird.py
2.41
KB
-rw-r--r--
block.py
2.44
KB
-rw-r--r--
boom.py
1.05
KB
-rw-r--r--
boot.py
1.95
KB
-rw-r--r--
bootc.py
881
B
-rw-r--r--
btrfs.py
739
B
-rw-r--r--
buildah.py
1.82
KB
-rw-r--r--
candlepin.py
5.84
KB
-rw-r--r--
canonical_livepatch.py
1.04
KB
-rw-r--r--
canonical_livepatch_onprem.py
1.22
KB
-rw-r--r--
ceph_ansible.py
956
B
-rw-r--r--
ceph_common.py
3.91
KB
-rw-r--r--
ceph_iscsi.py
1.55
KB
-rw-r--r--
ceph_mds.py
4.15
KB
-rw-r--r--
ceph_mgr.py
5.92
KB
-rw-r--r--
ceph_mon.py
9.78
KB
-rw-r--r--
ceph_osd.py
5.27
KB
-rw-r--r--
ceph_rgw.py
4.51
KB
-rw-r--r--
cgroups.py
1.39
KB
-rw-r--r--
charmed_postgresql.py
6.05
KB
-rw-r--r--
chrony.py
1.54
KB
-rw-r--r--
cifs.py
962
B
-rw-r--r--
clear_containers.py
2.58
KB
-rw-r--r--
cloud_init.py
1.07
KB
-rw-r--r--
cman.py
1.78
KB
-rw-r--r--
cobbler.py
1.29
KB
-rw-r--r--
cockpit.py
968
B
-rw-r--r--
collectd.py
2.24
KB
-rw-r--r--
collectl.py
752
B
-rw-r--r--
composer.py
2.11
KB
-rw-r--r--
conntrack.py
2.37
KB
-rw-r--r--
console.py
869
B
-rw-r--r--
container_log.py
1.54
KB
-rw-r--r--
containerd.py
1.07
KB
-rw-r--r--
containers_common.py
2.64
KB
-rw-r--r--
convert2rhel.py
1.04
KB
-rw-r--r--
coredump.py
5.13
KB
-rw-r--r--
corosync.py
2.41
KB
-rw-r--r--
crio.py
3.68
KB
-rw-r--r--
cron.py
1.01
KB
-rw-r--r--
crypto.py
1.38
KB
-rw-r--r--
cs.py
4.5
KB
-rw-r--r--
ctdb.py
1.42
KB
-rw-r--r--
cups.py
1.2
KB
-rw-r--r--
curtin.py
1.74
KB
-rw-r--r--
cxl.py
1.32
KB
-rw-r--r--
date.py
867
B
-rw-r--r--
dbus.py
877
B
-rw-r--r--
dellrac.py
1.69
KB
-rw-r--r--
devicemapper.py
1.13
KB
-rw-r--r--
devices.py
740
B
-rw-r--r--
dhcp.py
1.03
KB
-rw-r--r--
discovery.py
1.15
KB
-rw-r--r--
distupgrade.py
1.51
KB
-rw-r--r--
dlm.py
1.52
KB
-rw-r--r--
dmraid.py
1.29
KB
-rw-r--r--
dnf.py
5.28
KB
-rw-r--r--
docker.py
5.17
KB
-rw-r--r--
docker_distribution.py
1.3
KB
-rw-r--r--
dovecot.py
1007
B
-rw-r--r--
dpkg.py
1.14
KB
-rw-r--r--
dracut.py
942
B
-rw-r--r--
drbd.py
955
B
-rw-r--r--
ds.py
3.6
KB
-rw-r--r--
ebpf.py
3.11
KB
-rw-r--r--
elastic.py
2.5
KB
-rw-r--r--
etcd.py
2.14
KB
-rw-r--r--
fail2ban.py
830
B
-rw-r--r--
fapolicyd.py
1.21
KB
-rw-r--r--
fcoe.py
1018
B
-rw-r--r--
fibrechannel.py
1.77
KB
-rw-r--r--
filesys.py
3.81
KB
-rw-r--r--
firewall_tables.py
5.07
KB
-rw-r--r--
firewalld.py
1.95
KB
-rw-r--r--
flatpak.py
1.29
KB
-rw-r--r--
foreman.py
14.97
KB
-rw-r--r--
foreman_installer.py
3.8
KB
-rw-r--r--
foreman_openscap.py
830
B
-rw-r--r--
foreman_proxy.py
2.38
KB
-rw-r--r--
freeipmi.py
896
B
-rw-r--r--
frr.py
1.79
KB
-rw-r--r--
fwupd.py
1.41
KB
-rw-r--r--
gcp.py
5.38
KB
-rw-r--r--
gdm.py
735
B
-rw-r--r--
gfs2.py
1.32
KB
-rw-r--r--
gluster.py
5.4
KB
-rw-r--r--
gluster_block.py
1.07
KB
-rw-r--r--
grafana.py
2.01
KB
-rw-r--r--
greenboot.py
905
B
-rw-r--r--
grub.py
988
B
-rw-r--r--
grub2.py
2.81
KB
-rw-r--r--
gssproxy.py
823
B
-rw-r--r--
haproxy.py
2.41
KB
-rw-r--r--
hardware.py
1.13
KB
-rw-r--r--
host.py
1.74
KB
-rw-r--r--
hpasm.py
898
B
-rw-r--r--
hpssm.py
2.65
KB
-rw-r--r--
hts.py
700
B
-rw-r--r--
hyperv.py
886
B
-rw-r--r--
i18n.py
774
B
-rw-r--r--
infiniband.py
2.66
KB
-rw-r--r--
infinidat.py
1.38
KB
-rw-r--r--
insights.py
2.49
KB
-rw-r--r--
instructlab.py
5.45
KB
-rw-r--r--
ipa.py
7.32
KB
-rw-r--r--
ipmitool.py
1.53
KB
-rw-r--r--
iprconfig.py
4.53
KB
-rw-r--r--
ipvs.py
1.04
KB
-rw-r--r--
iscsi.py
2.18
KB
-rw-r--r--
iscsitarget.py
1.25
KB
-rw-r--r--
jars.py
5.39
KB
-rw-r--r--
java.py
978
B
-rw-r--r--
juju.py
7.14
KB
-rw-r--r--
kafka.py
2.07
KB
-rw-r--r--
kata_containers.py
1.34
KB
-rw-r--r--
kdump.py
5.55
KB
-rw-r--r--
kea.py
1.37
KB
-rw-r--r--
keepalived.py
855
B
-rw-r--r--
kernel.py
5.69
KB
-rw-r--r--
kernelrt.py
1.66
KB
-rw-r--r--
keyutils.py
894
B
-rw-r--r--
kimchi.py
1009
B
-rw-r--r--
kpatch.py
1.02
KB
-rw-r--r--
krb5.py
2.88
KB
-rw-r--r--
kubernetes.py
12.45
KB
-rw-r--r--
kvm.py
954
B
-rw-r--r--
landscape.py
3.17
KB
-rw-r--r--
ldap.py
2.99
KB
-rw-r--r--
leapp.py
1.13
KB
-rw-r--r--
libraries.py
1.56
KB
-rw-r--r--
libreswan.py
2.47
KB
-rw-r--r--
libvirt.py
3.76
KB
-rw-r--r--
lightdm.py
1.11
KB
-rw-r--r--
lilo.py
716
B
-rw-r--r--
login.py
1.06
KB
-rw-r--r--
logrotate.py
1.24
KB
-rw-r--r--
logs.py
3.92
KB
-rw-r--r--
lstopo.py
1.2
KB
-rw-r--r--
lustre.py
2.73
KB
-rw-r--r--
lvm2.py
4.6
KB
-rw-r--r--
lxd.py
2.29
KB
-rw-r--r--
maas.py
5.07
KB
-rw-r--r--
manageiq.py
2.86
KB
-rw-r--r--
md.py
1.22
KB
-rw-r--r--
megacli.py
1.01
KB
-rw-r--r--
mellanox_firmware.py
4.7
KB
-rw-r--r--
memcached.py
1.58
KB
-rw-r--r--
memory.py
1.45
KB
-rw-r--r--
microcloud.py
1.27
KB
-rw-r--r--
microk8s.py
2.02
KB
-rw-r--r--
microovn.py
1.14
KB
-rw-r--r--
microshift.py
6.96
KB
-rw-r--r--
microshift_ovn.py
1.69
KB
-rw-r--r--
migration_results.py
637
B
-rw-r--r--
mongodb.py
1.95
KB
-rw-r--r--
monit.py
1.68
KB
-rw-r--r--
mpt.py
732
B
-rw-r--r--
mssql.py
3.29
KB
-rw-r--r--
multipath.py
1011
B
-rw-r--r--
mvcli.py
1003
B
-rw-r--r--
mysql.py
4.44
KB
-rw-r--r--
named.py
2.5
KB
-rw-r--r--
navicli.py
2.47
KB
-rw-r--r--
networking.py
13.73
KB
-rw-r--r--
networkmanager.py
5.04
KB
-rw-r--r--
nfs.py
1.32
KB
-rw-r--r--
nfsganesha.py
1.2
KB
-rw-r--r--
nginx.py
1.53
KB
-rw-r--r--
nis.py
812
B
-rw-r--r--
nodejs.py
1.18
KB
-rw-r--r--
npm.py
2.06
KB
-rw-r--r--
nscd.py
989
B
-rw-r--r--
nss.py
885
B
-rw-r--r--
ntb.py
937
B
-rw-r--r--
ntp.py
1.41
KB
-rw-r--r--
numa.py
1.46
KB
-rw-r--r--
nvidia.py
1.82
KB
-rw-r--r--
nvme.py
1.71
KB
-rw-r--r--
nvmetcli.py
977
B
-rw-r--r--
oddjob.py
871
B
-rw-r--r--
omnipath_client.py
1.99
KB
-rw-r--r--
omnipath_manager.py
2.45
KB
-rw-r--r--
omsa.py
1.64
KB
-rw-r--r--
opencl.py
692
B
-rw-r--r--
opencontrail.py
1.35
KB
-rw-r--r--
opendaylight.py
1.38
KB
-rw-r--r--
opengl.py
694
B
-rw-r--r--
openhpi.py
878
B
-rw-r--r--
openshift.py
16.88
KB
-rw-r--r--
openshift_ovn.py
2.61
KB
-rw-r--r--
openssl.py
1.4
KB
-rw-r--r--
openstack_ansible.py
1.31
KB
-rw-r--r--
openstack_aodh.py
3.93
KB
-rw-r--r--
openstack_barbican.py
1.76
KB
-rw-r--r--
openstack_ceilometer.py
3.24
KB
-rw-r--r--
openstack_cinder.py
6.84
KB
-rw-r--r--
openstack_database.py
2.47
KB
-rw-r--r--
openstack_designate.py
3.6
KB
-rw-r--r--
openstack_edpm.py
1.45
KB
-rw-r--r--
openstack_glance.py
4.67
KB
-rw-r--r--
openstack_gnocchi.py
3.38
KB
-rw-r--r--
openstack_heat.py
5.34
KB
-rw-r--r--
openstack_horizon.py
3.37
KB
-rw-r--r--
openstack_instack.py
5.98
KB
-rw-r--r--
openstack_ironic.py
8.28
KB
-rw-r--r--
openstack_keystone.py
4.9
KB
-rw-r--r--
openstack_manila.py
3.68
KB
-rw-r--r--
openstack_masakari.py
2.08
KB
-rw-r--r--
openstack_masakarimonitors.py
1.5
KB
-rw-r--r--
openstack_mistral.py
1.6
KB
-rw-r--r--
openstack_neutron.py
6.29
KB
-rw-r--r--
openstack_nova.py
8.75
KB
-rw-r--r--
openstack_novajoin.py
1.15
KB
-rw-r--r--
openstack_octavia.py
5.16
KB
-rw-r--r--
openstack_placement.py
5.01
KB
-rw-r--r--
openstack_sahara.py
2.67
KB
-rw-r--r--
openstack_swift.py
2.95
KB
-rw-r--r--
openstack_tripleo.py
1.62
KB
-rw-r--r--
openstack_trove.py
2.26
KB
-rw-r--r--
opensvc.py
2.74
KB
-rw-r--r--
openvswitch.py
17.26
KB
-rw-r--r--
origin.py
8.57
KB
-rw-r--r--
os_net_config.py
800
B
-rw-r--r--
ostree.py
1.05
KB
-rw-r--r--
ovirt.py
9.44
KB
-rw-r--r--
ovirt_engine_backup.py
1.72
KB
-rw-r--r--
ovirt_hosted_engine.py
2.16
KB
-rw-r--r--
ovirt_imageio.py
1.56
KB
-rw-r--r--
ovirt_node.py
1.62
KB
-rw-r--r--
ovirt_provider_ovn.py
1.16
KB
-rw-r--r--
ovn_central.py
9.49
KB
-rw-r--r--
ovn_host.py
3.05
KB
-rw-r--r--
pacemaker.py
5.81
KB
-rw-r--r--
pam.py
1.37
KB
-rw-r--r--
pci.py
1.35
KB
-rw-r--r--
pcp.py
6.05
KB
-rw-r--r--
perccli.py
1.81
KB
-rw-r--r--
perccli2.py
1.82
KB
-rw-r--r--
peripety.py
1.19
KB
-rw-r--r--
perl.py
662
B
-rw-r--r--
pmem.py
3.34
KB
-rw-r--r--
podman.py
5.63
KB
-rw-r--r--
postfix.py
4.32
KB
-rw-r--r--
postgresql.py
4.36
KB
-rw-r--r--
powerpath.py
1.82
KB
-rw-r--r--
powerpc.py
4.22
KB
-rw-r--r--
ppp.py
848
B
-rw-r--r--
procenv.py
710
B
-rw-r--r--
process.py
4.29
KB
-rw-r--r--
processor.py
2.56
KB
-rw-r--r--
proxmox.py
2.98
KB
-rw-r--r--
psacct.py
1.29
KB
-rw-r--r--
ptp.py
817
B
-rw-r--r--
pulp.py
7.66
KB
-rw-r--r--
pulpcore.py
7.62
KB
-rw-r--r--
puppet.py
2.19
KB
-rw-r--r--
pxe.py
1.39
KB
-rw-r--r--
python.py
3.79
KB
-rw-r--r--
qaucli.py
1.35
KB
-rw-r--r--
qpid.py
3.53
KB
-rw-r--r--
qpid_dispatch.py
2.19
KB
-rw-r--r--
qt.py
809
B
-rw-r--r--
quagga.py
755
B
-rw-r--r--
rabbitmq.py
2.73
KB
-rw-r--r--
radius.py
1.34
KB
-rw-r--r--
rasdaemon.py
994
B
-rw-r--r--
rear.py
1.22
KB
-rw-r--r--
redis.py
1.58
KB
-rw-r--r--
release.py
1.2
KB
-rw-r--r--
rhc.py
2.02
KB
-rw-r--r--
rhcos.py
1.36
KB
-rw-r--r--
rhui.py
2.27
KB
-rw-r--r--
rhv_analyzer.py
941
B
-rw-r--r--
rpm.py
2.34
KB
-rw-r--r--
rpmostree.py
1.12
KB
-rw-r--r--
ruby.py
813
B
-rw-r--r--
s390.py
2.38
KB
-rw-r--r--
salt.py
2.14
KB
-rw-r--r--
saltmaster.py
2.26
KB
-rw-r--r--
samba.py
1.76
KB
-rw-r--r--
sanlock.py
1000
B
-rw-r--r--
saphana.py
2.52
KB
-rw-r--r--
sapnw.py
5.03
KB
-rw-r--r--
sar.py
3.95
KB
-rw-r--r--
sas3ircu.py
1.3
KB
-rw-r--r--
scsi.py
2.4
KB
-rw-r--r--
seagate_ses.py
2.1
KB
-rw-r--r--
sedutil.py
1.7
KB
-rw-r--r--
selinux.py
2.02
KB
-rw-r--r--
sendmail.py
1.18
KB
-rw-r--r--
services.py
1.43
KB
-rw-r--r--
shmcli.py
4.21
KB
-rw-r--r--
skydive.py
2.28
KB
-rw-r--r--
slurm.py
3.75
KB
-rw-r--r--
smartcard.py
1.49
KB
-rw-r--r--
smclient.py
1.89
KB
-rw-r--r--
snap.py
2.99
KB
-rw-r--r--
snapper.py
741
B
-rw-r--r--
snmp.py
903
B
-rw-r--r--
sos_extras.py
3.74
KB
-rw-r--r--
soundcard.py
1.08
KB
-rw-r--r--
squid.py
1.28
KB
-rw-r--r--
ssh.py
3.65
KB
-rw-r--r--
ssmtp.py
976
B
-rw-r--r--
sssd.py
2.33
KB
-rw-r--r--
storageconsole.py
1.66
KB
-rw-r--r--
storcli.py
1.8
KB
-rw-r--r--
stratis.py
1.12
KB
-rw-r--r--
subscription_manager.py
5.51
KB
-rw-r--r--
sudo.py
1.48
KB
-rw-r--r--
sunbeam.py
5.93
KB
-rw-r--r--
sunbeam_hypervisor.py
3.16
KB
-rw-r--r--
sunrpc.py
818
B
-rw-r--r--
symcli.py
3.46
KB
-rw-r--r--
system.py
1.67
KB
-rw-r--r--
systemd.py
3.68
KB
-rw-r--r--
systemtap.py
881
B
-rw-r--r--
sysvipc.py
886
B
-rw-r--r--
targetcli.py
1.12
KB
-rw-r--r--
teamd.py
1.24
KB
-rw-r--r--
telegraf.py
1.68
KB
-rw-r--r--
tftpserver.py
811
B
-rw-r--r--
tigervnc.py
1.67
KB
-rw-r--r--
tomcat.py
2.02
KB
-rw-r--r--
tpm2.py
989
B
-rw-r--r--
tuned.py
1.17
KB
-rw-r--r--
ubuntu.py
1.98
KB
-rw-r--r--
udev.py
900
B
-rw-r--r--
udisks.py
804
B
-rw-r--r--
ufw.py
987
B
-rw-r--r--
ultrapath.py
1.3
KB
-rw-r--r--
unbound.py
899
B
-rw-r--r--
unity.py
703
B
-rw-r--r--
unpackaged.py
3.48
KB
-rw-r--r--
usb.py
731
B
-rw-r--r--
usbguard.py
813
B
-rw-r--r--
validation_framework.py
1.5
KB
-rw-r--r--
vault.py
1.74
KB
-rw-r--r--
vdo.py
2.27
KB
-rw-r--r--
vdsm.py
5.05
KB
-rw-r--r--
vectordev.py
1.2
KB
-rw-r--r--
veritas.py
1.33
KB
-rw-r--r--
vhostmd.py
1.71
KB
-rw-r--r--
virsh.py
4.4
KB
-rw-r--r--
virtwho.py
985
B
-rw-r--r--
vmware.py
1.74
KB
-rw-r--r--
vsftpd.py
724
B
-rw-r--r--
vulkan.py
700
B
-rw-r--r--
watchdog.py
2.89
KB
-rw-r--r--
wireless.py
886
B
-rw-r--r--
x11.py
1.38
KB
-rw-r--r--
xdp.py
659
B
-rw-r--r--
xen.py
3.32
KB
-rw-r--r--
xfs.py
1.34
KB
-rw-r--r--
xinetd.py
837
B
-rw-r--r--
zfs.py
1.91
KB
-rw-r--r--
zvm.py
2.76
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : charmed_postgresql.py
# This file is part of the sos project: https://github.com/sosreport/sos # # This copyrighted material is made available to anyone wishing to use, # modify, copy, or redistribute it subject to the terms and conditions of # version 2 of the GNU General Public License. # # See the LICENSE file in the source distribution for further information. import os import yaml from sos.report.plugins import Plugin, UbuntuPlugin SNAP_COMMON_PATH = "/var/snap/charmed-postgresql/common" SNAP_CURRENT_PATH = "/var/snap/charmed-postgresql/current" PATHS = { "POSTGRESQL_CONF": SNAP_COMMON_PATH + "/var/lib/postgresql", "POSTGRESQL_LOGS": SNAP_COMMON_PATH + "/var/log/postgresql", "PATRONI_CONF": SNAP_CURRENT_PATH + "/etc/patroni", "PATRONI_LOGS": SNAP_COMMON_PATH + "/var/log/patroni", "PGBACKREST_CONF": SNAP_CURRENT_PATH + "/etc/pgbackrest", "PGBACKREST_LOGS": SNAP_COMMON_PATH + "/var/log/pgbackrest", "PGBOUNCER_CONF": SNAP_CURRENT_PATH + "/etc/pgbouncer", "PGBOUNCER_LOGS": SNAP_COMMON_PATH + "/var/log/pgbouncer", } PATRONI_CONFIG_FILE = f"{PATHS['PATRONI_CONF']}/patroni.yaml" RUNAS = "snap_daemon" PSQL = "charmed-postgresql.psql" PATRONICTL = "charmed-postgresql.patronictl" class CharmedPostgreSQL(Plugin, UbuntuPlugin): short_desc = "Charmed PostgreSQL" plugin_name = "charmed_postgresql" packages = ('charmed-postgresql',) @property def patronictl_args(self) -> str: return f"--config-file {PATRONI_CONFIG_FILE}" @property def psql_args(self) -> str: return (f"-U {self.postgresql_username} " f"-h {self.postgresql_host} " f"-p {self.postgresql_port} " r"-d postgres -P pager=off") def setup(self): # --- FILE EXCLUSIONS --- # Keys and certificates self.add_forbidden_path([ f"{PATHS['PATRONI_CONF']}/*.pem", f"{PATHS['PGBOUNCER_CONF']}/*.pem", ]) # --- FILE INCLUSIONS --- self.add_copy_spec([ f"{PATHS['POSTGRESQL_CONF']}/*.conf*", f"{PATHS['POSTGRESQL_LOGS']}", f"{PATHS['PATRONI_CONF']}/*.y*ml", f"{PATHS['PATRONI_LOGS']}", f"{PATHS['PGBACKREST_CONF']}", f"{PATHS['PGBACKREST_LOGS']}", f"{PATHS['PGBOUNCER_CONF']}", f"{PATHS['PGBOUNCER_LOGS']}", ]) # --- SNAP LOGS --- self.add_journal("snap.charmed-postgresql.*") # --- SNAP INFO --- self.add_cmd_output( "snap info charmed-postgresql", suggest_filename="snap-info", ) # Read and parse patroni config, finish setup if there are errors try: with open(PATRONI_CONFIG_FILE, encoding='utf-8') as f: patroni_config = yaml.safe_load(f) self.patroni_cluster_name = patroni_config["scope"] postgresql = patroni_config["postgresql"] host_port = postgresql["connect_address"].split(":") self.postgresql_host, self.postgresql_port = host_port authentication = postgresql["authentication"] superuser = authentication["superuser"] self.postgresql_username = superuser["username"] self.postgresql_password = superuser["password"] except (OSError, yaml.YAMLError, TypeError, ValueError, KeyError, AttributeError) as error: self._log_warn("Can not run additional commands due to " "an error on opening or parsing the config file " f"{PATRONI_CONFIG_FILE}: " f'{error}') return # --- TOPOLOGY --- self.add_cmd_output( (f"{PATRONICTL} {self.patronictl_args} " f"topology {self.patroni_cluster_name}"), suggest_filename="patroni-topology", runas=RUNAS, ) # --- HISTORY --- self.add_cmd_output( (f"{PATRONICTL} {self.patronictl_args} " f"history {self.patroni_cluster_name}"), suggest_filename="patroni-history", runas=RUNAS, ) # --- DCS CONFIGS --- self.add_cmd_output( (f"{PATRONICTL} {self.patronictl_args} " f"show-config {self.patroni_cluster_name}"), suggest_filename="patroni-dcs-config", runas=RUNAS, ) # ADD DB PASSWORD TO ENVIRONMENT os.environ["PGPASSWORD"] = self.postgresql_password # --- DATABASES --- self.add_cmd_output( (f"{PSQL} {self.psql_args} " r"-c '\l+'"), suggest_filename="postgresql-databases", runas=RUNAS, ) # --- USERS --- self.add_cmd_output( (f"{PSQL} {self.psql_args} " r"-c '\duS+'"), suggest_filename="postgresql-users", runas=RUNAS, ) # --- TABLES --- self.add_cmd_output( (f"{PSQL} {self.psql_args} " r"-c '\dtS+'"), suggest_filename="postgresql-tables", runas=RUNAS, ) def postproc(self): # REMOVE DB PASSWORD FROM ENVIRONMENT if "PGPASSWORD" in os.environ: del os.environ["PGPASSWORD"] # --- SCRUB PASSWORDS --- # Match lines containing password: and # followed by anything which may be enclosed with " self.do_path_regex_sub( f"{PATHS['PATRONI_CONF']}/*", r'(password: )"?.*"?', r'\1"*********"', ) # https://pgbackrest.org/configuration.html#section-repository/option-repo-s3-key # https://pgbackrest.org/configuration.html#section-repository/option-repo-s3-key-secret self.do_path_regex_sub( f"{PATHS['PGBACKREST_CONF']}/pgbackrest.conf", r'(.*s3-key.*=).*', r'\1*********', ) # https://www.pgbouncer.org/config.html#authentication-file-format self.do_path_regex_sub( f"{PATHS['PGBOUNCER_CONF']}/pgbouncer/userlist.txt", r'(".*" )".*"', r'\1"*********"', )
Close