import paramiko
from datetime import datetime

HOST = "135.125.102.180"
USER = "ubuntu"
PASS = "BotPascal2026!"
REMOTE_BASE = "/var/www/html/repondeur_mail_grok"

def main():
    try:
        ssh = paramiko.SSHClient()
        ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
        ssh.connect(HOST, username=USER, password=PASS)
        
        # Check logs
        today = datetime.now().strftime("%Y-%m-%d")
        log_file = f"{REMOTE_BASE}/data/logs/app_{today}.log"
        
        print(f"📋 Verification des logs ({log_file})...")
        print("=" * 60)
        
        stdin, stdout, stderr = ssh.exec_command(f"grep 'CLIENT RE-CHECK' {log_file} -A 50 | tail -n 20")
        logs = stdout.read().decode()
        if logs:
            print(logs)
        else:
            print("⚠️ Aucun log trouvé pour le re-check.")
            
        # Check queue stats
        print("\n📊 Statistiques de la queue:")
        print("=" * 60)
        stdin, stdout, stderr = ssh.exec_command(f"cat {REMOTE_BASE}/data/queue.csv")
        content = stdout.read().decode()
        
        lines = content.strip().split('\n')
        total = len(lines) - 1
        
        yellow_count = 0
        purple_count = 0
        
        import csv
        from io import StringIO
        
        reader = csv.DictReader(StringIO(content))
        for row in reader:
            tag = row.get('tag_zimbra', '')
            if tag == 'Yellow':
                yellow_count += 1
            elif tag == 'Purple':
                purple_count += 1
                
        print(f"Total: {total}")
        print(f"🟡 Yellow (Clients): {yellow_count}")
        print(f"🟣 Purple (Inconnu): {purple_count}")
        
        ssh.close()
        
    except Exception as e:
        print(f"❌ Error: {e}")

if __name__ == "__main__":
    main()
