# 🔧 Инструкция по отладке загрузки файлов ## 📋 Что мы создали: ### 1. **Консольное логирование (JavaScript)** - **Файл**: `debug_upload_console.js` - **Назначение**: Перехватывает все AJAX запросы, отправку форм, изменения файловых полей - **Логирует в консоль браузера**: все этапы загрузки файлов ### 2. **Серверное логирование (PHP)** - **Файл**: `debug_server_logging.php` - **Назначение**: Детальное логирование всех POST запросов с файлами - **Лог файл**: `logs/debug_upload_server.log` ### 3. **Отладочный Action для Documents** - **Файл**: `modules/Documents/actions/SaveDebug.php` - **Назначение**: Расширенное логирование процесса сохранения документов ### 4. **Монитор в реальном времени** - **Файл**: `debug_upload_monitor.html` - **Назначение**: Веб-интерфейс для мониторинга всех логов ### 5. **Просмотрщик логов** - **Файл**: `debug_upload_log_viewer.php` - **Назначение**: API для получения содержимого логов ## 🚀 Как использовать: ### Вариант 1: Автоматический мониторинг 1. Откройте `https://crm.clientright.ru/debug_upload_monitor.html` 2. Нажмите "🔄 Авто-обновление" для мониторинга в реальном времени 3. Нажмите "💉 Внедрить JS отладку" - откроется окно CRM с отладкой 4. Попробуйте загрузить файл в CRM 5. Смотрите логи в мониторе ### Вариант 2: Ручная отладка 1. Откройте CRM в браузере 2. Откройте консоль разработчика (F12) 3. Выполните в консоли: ```javascript // Загружаем скрипт отладки var script = document.createElement('script'); script.src = '/debug_upload_console.js'; document.head.appendChild(script); ``` 4. Попробуйте загрузить файл 5. Смотрите детальные логи в консоли ### Вариант 3: Серверные логи 1. Откройте `https://crm.clientright.ru/debug_upload_log_viewer.php?log=server` 2. Или смотрите файл напрямую: `tail -f logs/debug_upload_server.log` ## 🎯 Доступные команды в консоли: После загрузки `debug_upload_console.js`: ```javascript // Показать все формы на странице debugUpload.logCurrentForms() // Показать все файловые поля debugUpload.logFileInputs() // Тестовая загрузка файла debugUpload.testUpload('test.txt') ``` ## 📊 Что логируется: ### JavaScript (консоль браузера): - ✅ Все AJAX запросы к index.php - ✅ Отправка форм с файлами - ✅ Изменения в файловых полях - ✅ Ответы сервера (успех/ошибка) - ✅ Размеры и типы файлов ### PHP (серверные логи): - ✅ Все POST запросы с деталями - ✅ Информация о загружаемых файлах - ✅ PHP настройки загрузки - ✅ Ошибки и исключения - ✅ Этапы обработки документов ## 🔍 Как найти проблему: 1. **Файл не выбирается**: Смотрите в консоли "FILE INPUT CHANGED" 2. **Форма не отправляется**: Смотрите "FORM SUBMISSION" 3. **AJAX не работает**: Смотрите "AJAX REQUEST STARTED" 4. **Сервер не получает файл**: Смотрите `debug_upload_server.log` 5. **Ошибка в PHP**: Смотрите секцию "ERROR" в логах ## 🧪 Тестирование: 1. Откройте консоль в CRM 2. Выполните: `debugUpload.testUpload()` 3. Это создаст тестовый файл и попытается его загрузить 4. Смотрите логи для диагностики ## 📁 Файлы для мониторинга: - `logs/debug_upload_server.log` - серверная отладка - `logs/debug.log` - основной лог CRM - `logs/s3_storage.log` - операции с S3 - `logs/vtigercrm.log` - системный лог vTiger ## 🔧 Отключение отладки: Для отключения просто удалите или переименуйте файлы: - `debug_upload_console.js` - `debug_server_logging.php` - `modules/Documents/actions/SaveDebug.php` --- **Теперь у нас есть полная система мониторинга загрузки файлов!** 🎉