Files
crm.clientright.ru/DEBUG_UPLOAD_INSTRUCTIONS.md

5.0 KiB
Raw Blame History

🔧 Инструкция по отладке загрузки файлов

📋 Что мы создали:

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. Выполните в консоли:
    // Загружаем скрипт отладки
    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:

// Показать все формы на странице
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

Теперь у нас есть полная система мониторинга загрузки файлов! 🎉