Files
crm.clientright.ru/DEBUG_UPLOAD_INSTRUCTIONS.md

116 lines
5.0 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 🔧 Инструкция по отладке загрузки файлов
## 📋 Что мы создали:
### 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`
---
**Теперь у нас есть полная система мониторинга загрузки файлов!** 🎉