5.0 KiB
5.0 KiB
🔧 Инструкция по отладке загрузки файлов
📋 Что мы создали:
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: Автоматический мониторинг
- Откройте
https://crm.clientright.ru/debug_upload_monitor.html - Нажмите "🔄 Авто-обновление" для мониторинга в реальном времени
- Нажмите "💉 Внедрить JS отладку" - откроется окно CRM с отладкой
- Попробуйте загрузить файл в CRM
- Смотрите логи в мониторе
Вариант 2: Ручная отладка
- Откройте CRM в браузере
- Откройте консоль разработчика (F12)
- Выполните в консоли:
// Загружаем скрипт отладки var script = document.createElement('script'); script.src = '/debug_upload_console.js'; document.head.appendChild(script); - Попробуйте загрузить файл
- Смотрите детальные логи в консоли
Вариант 3: Серверные логи
- Откройте
https://crm.clientright.ru/debug_upload_log_viewer.php?log=server - Или смотрите файл напрямую:
tail -f logs/debug_upload_server.log
🎯 Доступные команды в консоли:
После загрузки debug_upload_console.js:
// Показать все формы на странице
debugUpload.logCurrentForms()
// Показать все файловые поля
debugUpload.logFileInputs()
// Тестовая загрузка файла
debugUpload.testUpload('test.txt')
📊 Что логируется:
JavaScript (консоль браузера):
- ✅ Все AJAX запросы к index.php
- ✅ Отправка форм с файлами
- ✅ Изменения в файловых полях
- ✅ Ответы сервера (успех/ошибка)
- ✅ Размеры и типы файлов
PHP (серверные логи):
- ✅ Все POST запросы с деталями
- ✅ Информация о загружаемых файлах
- ✅ PHP настройки загрузки
- ✅ Ошибки и исключения
- ✅ Этапы обработки документов
🔍 Как найти проблему:
- Файл не выбирается: Смотрите в консоли "FILE INPUT CHANGED"
- Форма не отправляется: Смотрите "FORM SUBMISSION"
- AJAX не работает: Смотрите "AJAX REQUEST STARTED"
- Сервер не получает файл: Смотрите
debug_upload_server.log - Ошибка в PHP: Смотрите секцию "ERROR" в логах
🧪 Тестирование:
- Откройте консоль в CRM
- Выполните:
debugUpload.testUpload() - Это создаст тестовый файл и попытается его загрузить
- Смотрите логи для диагностики
📁 Файлы для мониторинга:
logs/debug_upload_server.log- серверная отладкаlogs/debug.log- основной лог CRMlogs/s3_storage.log- операции с S3logs/vtigercrm.log- системный лог vTiger
🔧 Отключение отладки:
Для отключения просто удалите или переименуйте файлы:
debug_upload_console.jsdebug_server_logging.phpmodules/Documents/actions/SaveDebug.php
Теперь у нас есть полная система мониторинга загрузки файлов! 🎉