import paramiko key_path = r'C:\Users\Snarf\.ssh\id_ed25519_snarfnet' ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) ssh.connect('140.44.4.71', username='snarf', key_filename=key_path, timeout=10) # Check error logs for pihole1 (55) and pihole2 (43) stdin, stdout, stderr = ssh.exec_command("sudo docker exec $(sudo docker ps -q -f name=nginx-proxy-manager) tail -n 30 /data/logs/proxy-host-43_error.log 2>/dev/null || true") print("=== Error log 43 (pihole2) ===") print(stdout.read().decode()) stdin, stdout, stderr = ssh.exec_command("sudo docker exec $(sudo docker ps -q -f name=nginx-proxy-manager) tail -n 30 /data/logs/proxy-host-43_access.log 2>/dev/null || true") print("=== Access log 43 (pihole2) ===") print(stdout.read().decode()) stdin, stdout, stderr = ssh.exec_command("sudo docker exec $(sudo docker ps -q -f name=nginx-proxy-manager) tail -n 30 /data/logs/proxy-host-55_error.log 2>/dev/null || true") print("=== Error log 55 (pihole1) ===") print(stdout.read().decode()) stdin, stdout, stderr = ssh.exec_command("sudo docker exec $(sudo docker ps -q -f name=nginx-proxy-manager) tail -n 30 /data/logs/proxy-host-55_access.log 2>/dev/null || true") print("=== Access log 55 (pihole1) ===") print(stdout.read().decode()) # Check default error log stdin, stdout, stderr = ssh.exec_command("sudo docker exec $(sudo docker ps -q -f name=nginx-proxy-manager) tail -n 30 /data/logs/fallback_error.log 2>/dev/null || true") print("=== Fallback error log ===") print(stdout.read().decode()) ssh.close()