Серафим Пикалов
У клиента что-то сломалось, а у нас всё работает. Проклиная всё на свете,
идём в код к клиенту. Исправлять нужно срочно, отладчика нет, а скрипты
продолжают эксплуатироваться пользователями. Как искать ошибку, ничего не
ломая, как отладить исправленный код, как не показать никому ничего
лишнего?
Все мы прекрасно знаем, что любой код перед установкой клиенту должен быть
тщательно оттестирован, все ошибочные ситуации описаны, и сообщения о них
должны быть максимально информативны.
С другой стороны, все мы знаем,
что теория и практика – две разные вещи. Обнаружив ошибку, которую на
тестовой версии системы смоделировать не удалось, мы сталкиваемся с
необходимостью редактировать код, уже установленный клиенту и скорее всего
выполняющийся в этот момент. Тут возникает необходимость сделать всё
как можно более незаметно и безопасно.
О некоторых методах того, как это сделать, мы
поговорим в этой статье.
Условия работы
В рассматриваемой ситуации нам придётся работать со скриптами, которые уже
установлены у клиента и могут быть востребованы в любой момент.
Поэтому необходимо ввести некоторые
ограничения:
n Нам необходимо локализовать и исправить
ошибку, не испортив правильно работающие скрипты.
n Процесс нашей отладки должен быть виден только
нам, пользователи не должны ничего заметить.
n Мы не можем установить или перенастроить ПО на
сервере, т.е. использование сторонних отладочных систем невозможно, но мы можем
добавлять новые или редактировать старые php-скрипты.
n Мы имеем только ssh (и/или telnet) и
http-доступ.
Теперь полностью прояснив, что нам можно, а
чего нельзя, попробуем сделать нашу работу наиболее комфортной и продуктивной.