Ответы пользователя по тегу Отладка
  • Как отлаживать Django в продакшн?

    @rPman
    Различаются архитектуры процессоров и операционки
    самое простое что можно сделать сначала - попробовать среду разработки сделать ближе к той что на продакшне, т.е. установить у себя в виртуалке хотя бы ту же ОС и битность (или наоборот на сервере)

    я правильно понимаю что ты дома пытаешься на x64 windows разрабатывать, а на продакшне у тебя виртуалка почему то x86 32-битная (иначе как объяснить падения преобразования float -> int).

    Еще момент, все зависит как ты разворачиваешь свою версию в продакшне, собирай списки файлов там и тут, сравнивай по хешам (благо речь о паре команд в консоли), в общем удостоверься что у тебя действительно одинаковые копии файлов и нет лишних

    Удостоверься что у тебя нет ошибок в логах, если есть - изучи их, они не зря там появляются, многие разработчики по глупости оставляют варнинги и не критичные ошибки типа - ну там и так все ясно, а когда их пара сотен набирается, уже не могут отличить знакомые от незнакомых.
    Ответ написан
  • Где в сети можно найти php коды для отладки?

    @rPman
    Правильное создание забагованного кода это отличный способ обучаться.

    Задавайся вопросом, как ведет себя та или иная функция когда на вход подаются неправильный данные. Пустые, не того типа, слишком большие, закрытые дескрипторы, писать в заблокированные файлы, проблемы с сетью в той или иной функции типа работы с базами данных или ожидании post данных от пользователя и т.п.
    Ответ написан
    Комментировать
  • Как можно выполнить отладку большого js скрипта без точек останова (PHPStorm)?

    @rPman
    Безотносительно того, какой язык или платформа используется, есть классический способ отладки приложений - логирование событий и данных.

    Т.е. вы должны покрыть свой код выводом отладочной информацией, в который как минимум должны включить вызовы методов и часть информации о передаваемых параметрах. Полноту и формат логируемой информации и место размещения выбирайте от того, как именно все это будете использовать, например одно время я использовал текстовый формат с машиночитаемым форматом хранения информации (каждая строка - json, определенный формат для указания времени, содержимого стека вызовов методов, аргументов и выделенных переменных) и для анализа логов писал небольшое приложение (в большинстве случаев достаточно взгляда на лог просто выводом в консоль и утилит tail и grep).

    На самом деле не обязательно покрывать отладочной информацией ВЕСЬ проект, это слишком раздувает файл логов, затрудняя его анализ и замедляя работу приложения. Обычно вы знаете, в каком месте кода у вас проблема, и именно эту часть покрываете отладочной информацией.

    Делайте общее место размещения лога, если у вас отладка многопользовательского приложения, само собой вы должны включать в лог идентификатор клиента, это сильно поможет разрешать ситуации по монопольному доступу к данным, например.

    p.s. свой колбек на вызов функции в javascript можно зарегистрировать так:
    (function() {
        var call = Function.prototype.call;
        Function.prototype.call = function() {
            console.log(this, arguments);
            return call.apply(this, arguments);
        };
    }());
    Ответ написан
  • Как мне выводить дату при выводе ошибки в php?

    @rPman
    добавьте вывод даты тут:
    php.net/manual/ru/function.set-error-handler.php

    но осторожно, этот калбек вызывается чаще чем хочется, поэтому настраивайте и проверяйте типы ошибок.
    Ответ написан
    Комментировать
  • Какой лучший отладчик на PHP?

    @rPman
    xdebug?
    phpshtorm например поддерживает
    p.s. настроить на windows xdebug — будет проблемно, в готовом бинарном виде совместимые версии php и xdebug фиг найдешь, хотя я серьезно и не копал.
    Ответ написан
    3 комментария