#!/bin/bash

# Script para diagnosticar e corrigir problemas após deploy

echo "🔍 Diagnosticando problemas após deploy..."
echo ""

# Ir para o diretório do backend
cd "$(dirname "$0")" || exit 1

echo "1️⃣ Verificando logs de erro..."
echo "--- Últimas 50 linhas do log ---"
tail -n 50 storage/logs/laravel.log
echo ""

echo "2️⃣ Limpando caches..."
php artisan config:clear
php artisan cache:clear
php artisan route:clear
php artisan view:clear
php artisan optimize:clear
echo "✅ Caches limpos"
echo ""

echo "3️⃣ Verificando sintaxe PHP..."
php artisan about
if [ $? -eq 0 ]; then
    echo "✅ Sintaxe PHP OK"
else
    echo "❌ Erro na sintaxe PHP"
fi
echo ""

echo "4️⃣ Verificando dependências..."
composer install --no-dev --optimize-autoloader --quiet
if [ $? -eq 0 ]; then
    echo "✅ Dependências OK"
else
    echo "❌ Erro ao instalar dependências"
fi
echo ""

echo "5️⃣ Verificando permissões..."
chmod -R 775 storage bootstrap/cache
echo "✅ Permissões ajustadas"
echo ""

echo "6️⃣ Verificando migrações..."
php artisan migrate:status
echo ""

echo "7️⃣ Recriando cache de configuração..."
php artisan config:cache
php artisan route:cache
php artisan view:cache
echo "✅ Cache recriado"
echo ""

echo "8️⃣ Verificando erros recentes no log..."
echo "--- Erros das últimas 20 linhas ---"
tail -n 100 storage/logs/laravel.log | grep -i "error\|exception\|fatal" | tail -n 20
echo ""

echo "✅ Diagnóstico completo!"
echo ""
echo "Se ainda houver erro, verifique:"
echo "- Logs do servidor web (nginx/apache)"
echo "- Permissões de arquivos"
echo "- Variáveis de ambiente (.env)"
echo "- Espaço em disco"

