Servidor RPA - ServeMEI Automação
Última atualização: 02/12/2025
# Status detalhado dos serviços sudo systemctl status xvfb.service sudo systemctl status servemei-rpa.service # Status resumido sudo systemctl is-active xvfb.service servemei-rpa.service # Verificar se estão habilitados na inicialização sudo systemctl is-enabled xvfb.service servemei-rpa.service
# CPU, Memória, Processos htop top # Memória detalhada free -h cat /proc/meminfo | head -20 # Uso de disco df -h du -sh /home/luciano/servemei-rpa/ # Network ss -tulpn | grep :8001
sudo systemctl daemon-reload após modificar arquivos de serviço.
# Recarregar configurações (APÓS MODIFICAÇÕES) sudo systemctl daemon-reload # Reiniciar serviços sudo systemctl restart xvfb.service servemei-rpa.service # Parar serviços sudo systemctl stop servemei-rpa.service xvfb.service # Iniciar serviços sudo systemctl start xvfb.service servemei-rpa.service # Habilitar na inicialização sudo systemctl enable xvfb.service servemei-rpa.service
# Backup antes de editar sudo cp /etc/systemd/system/servemei-rpa.service /etc/systemd/system/servemei-rpa.service.backup # Editar serviço sudo nano /etc/systemd/system/servemei-rpa.service # Verificar sintaxe sudo systemd-analyze verify /etc/systemd/system/servemei-rpa.service
# Logs em tempo real (seguir) sudo journalctl -u servemei-rpa.service -f sudo journalctl -u xvfb.service -f # Últimas 100 linhas sudo journalctl -u servemei-rpa.service -n 100 # Desde uma data específica sudo journalctl -u servemei-rpa.service --since "2025-12-01 00:00:00" # Filtrar por nível sudo journalctl -u servemei-rpa.service -p err --since "1 hour ago"
# Verificar variáveis de ambiente do serviço sudo systemctl show servemei-rpa.service | grep -E "(Environment|PID|User)" # Verificar permissões sudo -u luciano printenv DISPLAY sudo -u luciano printenv XAUTHORITY # Testar DISPLAY manualmente sudo -u luciano DISPLAY=:99 xdpyinfo 2>/dev/null | head -5
# Ver processos Chrome pgrep -a chrome ps aux | grep chrome | grep -v grep # Ver processos Python pgrep -a python ps aux | grep python | grep -v grep # Ver processos Xvfb pgrep -a Xvfb # Matar processos problemáticos sudo pkill -9 chrome sudo pkill -9 chromedriver sudo pkill -9 Xvfb
# Limpar cache do Chrome sudo rm -rf /tmp/chrome-* sudo rm -rf /tmp/.com.google.Chrome* sudo rm -rf /tmp/.org.chromium.Chromium* sudo rm -rf /home/luciano/.cache/google-chrome # Limpar screenshots antigos (mais de 7 dias) find /tmp -name "rpa_debug_*.png" -type f -mtime +7 -delete # Limpar logs temporários sudo rm -f /tmp/rpa_*.log
# Teste completo do ambiente sudo -u luciano bash -c " echo '=== TESTE DE AMBIENTE RPA ===' echo '1. DISPLAY: ' \$DISPLAY echo '2. Python: ' \$(python3 --version) echo '3. Chrome: ' \$(google-chrome --version 2>/dev/null || echo 'Não encontrado') echo '4. Xvfb: ' \$(ps aux | grep Xvfb | grep -v grep | wc -l) 'processo(s)' echo '5. PyAutoGUI Teste:' source /home/luciano/servemei-rpa/venv/bin/activate python3 -c ' import pyautogui, os print(f\" Tela: {pyautogui.size()}\") print(f\" DISPLAY: {os.environ.get(\"DISPLAY\")}\") ' echo '=== FIM DO TESTE ===' "
# Testar API localmente curl -X POST http://localhost:8001/consultar-dasn \ -H "Content-Type: application/json" \ -d '{"cnpj": "63856088000168"}' \ --max-time 120 # Testar com múltiplas requisições for i in {1..3}; do echo "Teste \$i:" curl -s -X POST http://localhost:8001/consultar-dasn \ -H "Content-Type: application/json" \ -d '{"cnpj": "63856088000168"}' | jq '.status' sleep 2 done
# Criar diretório de backup BACKUP_DIR="/home/luciano/backups/rpa_$(date +%Y%m%d_%H%M%S)" mkdir -p $BACKUP_DIR # Backup dos serviços sudo cp /etc/systemd/system/xvfb.service $BACKUP_DIR/ sudo cp /etc/systemd/system/servemei-rpa.service $BACKUP_DIR/ # Backup do código cp -r /home/luciano/servemei-rpa $BACKUP_DIR/codigo/ # Compactar backup tar -czf $BACKUP_DIR.tar.gz $BACKUP_DIR rm -rf $BACKUP_DIR echo "Backup criado: $BACKUP_DIR.tar.gz"
#!/bin/bash # /home/luciano/scripts/backup_rpa_diario.sh DATE=$(date +%Y%m%d) BACKUP_FILE="/home/luciano/backups/rpa_backup_$DATE.tar.gz" # Criar backup tar -czf $BACKUP_FILE \ /home/luciano/servemei-rpa \ /etc/systemd/system/xvfb.service \ /etc/systemd/system/servemei-rpa.service \ 2>/dev/null # Manter apenas últimos 7 backups find /home/luciano/backups -name "rpa_backup_*.tar.gz" -mtime +7 -delete echo "Backup diário criado: $BACKUP_FILE"
0 2 * * * /home/luciano/scripts/backup_rpa_diario.sh
# Atualizar lista de pacotes sudo apt-get update # Atualizar pacotes instalados sudo apt-get upgrade -y # Limpar pacotes desnecessários sudo apt-get autoremove -y sudo apt-get autoclean # Verificar atualizações de segurança sudo unattended-upgrades --dry-run
# Ativar ambiente virtual source /home/luciano/servemei-rpa/venv/bin/activate # Atualizar pip pip install --upgrade pip # Verificar pacotes desatualizados pip list --outdated --format=columns # Congelar requirements atual pip freeze > /home/luciano/servemei-rpa/requirements.txt
#!/bin/bash # /usr/local/bin/monitor-rpa.sh LOG_FILE="/var/log/rpa-monitor.log" log() { echo "[$(date '+%Y-%m-%d %H:%M:%S')] \$1" | tee -a "$LOG_FILE" } check_service() { SERVICE="\$1" if systemctl is-active --quiet "$SERVICE"; then log "✅ $SERVICE está rodando" return 0 else log "❌ $SERVICE está parado - Tentando reiniciar..." systemctl restart "$SERVICE" sleep 5 if systemctl is-active --quiet "$SERVICE"; then log "✅ $SERVICE reiniciado com sucesso" return 0 else log "⚠️ Falha ao reiniciar $SERVICE" return 1 fi fi } # Executar verificações log "=== INICIANDO MONITORAMENTO RPA ===" check_service xvfb.service check_service servemei-rpa.service # Verificar processos Chrome CHROME_COUNT=$(pgrep chrome | wc -l) if [ "$CHROME_COUNT" -gt 10 ]; then log "⚠️ Muitos processos Chrome: $CHROME_COUNT" sudo pkill -9 chrome fi log "=== MONITORAMENTO CONCLUÍDO ==="
*/15 * * * * /usr/local/bin/monitor-rpa.sh
#!/bin/bash # /usr/local/bin/restart-rpa-complete.sh echo "=== REINICIALIZAÇÃO COMPLETA RPA ===" echo "Data/Hora: $(date)" # 1. Parar serviços echo "1. Parando serviços..." sudo systemctl stop servemei-rpa.service sleep 2 # 2. Matar todos os processos relacionados echo "2. Finalizando processos..." sudo pkill -9 chrome 2>/dev/null sudo pkill -9 chromedriver 2>/dev/null sudo pkill -9 python 2>/dev/null sudo pkill -9 Xvfb 2>/dev/null sleep 3 # 3. Limpar cache echo "3. Limpando cache..." sudo rm -rf /tmp/chrome-* sudo rm -rf /tmp/.com.google.Chrome* sudo rm -rf /tmp/rpa_debug_*.png # 4. Reiniciar Xvfb echo "4. Reiniciando Xvfb..." sudo systemctl restart xvfb.service sleep 3 # 5. Verificar Xvfb echo "5. Verificando Xvfb..." if sudo -u luciano DISPLAY=:99 xdpyinfo 2>/dev/null; then echo "✅ Xvfb funcionando" else echo "❌ Xvfb falhou" exit 1 fi # 6. Reiniciar serviço principal echo "6. Iniciando serviço RPA..." sudo systemctl start servemei-rpa.service sleep 5 # 7. Verificar status final echo "7. Status final:" sudo systemctl status servemei-rpa.service --no-pager | head -20 echo "=== REINICIALIZAÇÃO CONCLUÍDA ==="
sudo /usr/local/bin/restart-rpa-complete.shsudo journalctl -u servemei-rpa.service -f