Size: a a a

2021 February 07

SP

Sergey Protko in PHP
Алексей Гевондян
мне? боже упаси)
Ну с чего ты про него начал
источник

АГ

Алексей Гевондян... in PHP
не я начал)
источник

SP

Sergey Protko in PHP
Ну тогда не продолжай
источник

АГ

Алексей Гевондян... in PHP
+
источник

NO

Nex Otaku in PHP
Sergey Zolotov
20 минут на pecl install xdebug?
Сергей. Нет, иксдебаг так не заведëтся.

Установка иксдебага это пляски с бубном. Лазить по настройкам шторма, по настройкам иксдебага, врубить расширение, создать "конфигурацию запуска" прописать пути, указать интерпретатор, порт и т.д. и т.п.

И я повторюсь, что с докером это ещë веселее становится.

К сожалению одной командой не включишь его, в реальности а не в сказках из чата. Ну, на словах у каждого "я это делаю за одну минуту". Только вот это всë только на словах.
источник

Х

Хронокрад in PHP
Парни умеют читать документацию. Попробуй тоже.
источник

PA

Pavel Agaletskiy in PHP
Nex Otaku
Сергей. Нет, иксдебаг так не заведëтся.

Установка иксдебага это пляски с бубном. Лазить по настройкам шторма, по настройкам иксдебага, врубить расширение, создать "конфигурацию запуска" прописать пути, указать интерпретатор, порт и т.д. и т.п.

И я повторюсь, что с докером это ещë веселее становится.

К сожалению одной командой не включишь его, в реальности а не в сказках из чата. Ну, на словах у каждого "я это делаю за одну минуту". Только вот это всë только на словах.
Отладчик в пхп конечно чуть сложнее в настройке, чем в питоне, го или яве, но всё-таки не то, чтобы очень. Один раз его настроив, повторить действия очень просто для любого другого проекта. Docker - не оправдание, там так же не сложно.

Фактически, чтобы его включить надо:
- поставить модуль xdebug. Большинство установщиков (brew, apt как минимум) сразу же положат его конфиг
- для консоли достаточно в phpstorm выбрать интерпретатор, дальше шторм сам определит наличие xdebug
- для веба - добавить в конфиг xdebug одну опцию для того, чтобы он запускался всегда (или при установке переменной).

Для локального запуска - всё.

В докере чуть больше действий. Самое простой для него путь: в шторме включить опцию break on a first line, запустить скрипт, ловить брейк, в подсказке шторма прописать маппинг путей в контейнере и на локалке.

Все. Занимает не больше 5 минут.

При этом локальная установка xdebug легко распространяется на любые другие проекты.

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

В целом, очень бы хотелось, чтобы отладчик был встроен прямо в ядро, но к сожалению, это не так.
источник

VC

Vladimir Chernyshev in PHP
Pavel Agaletskiy
Отладчик в пхп конечно чуть сложнее в настройке, чем в питоне, го или яве, но всё-таки не то, чтобы очень. Один раз его настроив, повторить действия очень просто для любого другого проекта. Docker - не оправдание, там так же не сложно.

Фактически, чтобы его включить надо:
- поставить модуль xdebug. Большинство установщиков (brew, apt как минимум) сразу же положат его конфиг
- для консоли достаточно в phpstorm выбрать интерпретатор, дальше шторм сам определит наличие xdebug
- для веба - добавить в конфиг xdebug одну опцию для того, чтобы он запускался всегда (или при установке переменной).

Для локального запуска - всё.

В докере чуть больше действий. Самое простой для него путь: в шторме включить опцию break on a first line, запустить скрипт, ловить брейк, в подсказке шторма прописать маппинг путей в контейнере и на локалке.

Все. Занимает не больше 5 минут.

При этом локальная установка xdebug легко распространяется на любые другие проекты.

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

В целом, очень бы хотелось, чтобы отладчик был встроен прямо в ядро, но к сожалению, это не так.
Не хватает как его настроить для удалённого сервера, когда ты за NAT
источник

PA

Pavel Agaletskiy in PHP
Vladimir Chernyshev
Не хватает как его настроить для удалённого сервера, когда ты за NAT
Не дебажте на проде :)
источник

VC

Vladimir Chernyshev in PHP
Pavel Agaletskiy
Не дебажте на проде :)
Есть ещё стейджинги препроды}
источник

PA

Pavel Agaletskiy in PHP
Но в общем случае, думаю, поможет туннелирование и проброс портов.

Стейджинги и препроды тоже не места для отладки с отладчиком. Однако, в любом случае, надо, чтобы в случае, когда xdebug устанавливает коннект, то ему был доступен порт с твоей машины.

Часто однако препрод и стейдж в одной с тобой сети, даже вне офиса, за счёт vpn
источник

VC

Vladimir Chernyshev in PHP
Pavel Agaletskiy
Но в общем случае, думаю, поможет туннелирование и проброс портов.

Стейджинги и препроды тоже не места для отладки с отладчиком. Однако, в любом случае, надо, чтобы в случае, когда xdebug устанавливает коннект, то ему был доступен порт с твоей машины.

Часто однако препрод и стейдж в одной с тобой сети, даже вне офиса, за счёт vpn
Вот столько нюансов, что и топологии сети надо знать, и серверную инфраструктуру, и локальную, что впору задачу настроить xdebug на полную можно давать как тестовое для админов-девопсов. А потом удивляться, а чего больше 60 процентов разработчиков не использует отладчик
источник

PA

Pavel Agaletskiy in PHP
Это не совсем корректно. В большинстве случаев отладчик нужен и работает локально/в докере на твоей машине. И под этот кейс оно все и оптимизировано.

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

Но даже если нужно, то это все равно лучше, чем лезть в контейнер на проде/стейдже и там в виме расставлять var_dump по всюду.
В любом случае, это не является проблемой языка и отладчика
источник

VC

Vladimir Chernyshev in PHP
Или в локальной виртуалке частый кейс. Или в выделенном дев сервере. Я вот за последние 4 года 2 работал на проектах, где локальное разворачивание в принципе не предполагалось, а на текущем с мая так и не настроил полностью чтоб куда-то имело смысл лезть с отладчиком
источник

ЕР

Евгений Ромашкан... in PHP
Nex Otaku
Сергей. Нет, иксдебаг так не заведëтся.

Установка иксдебага это пляски с бубном. Лазить по настройкам шторма, по настройкам иксдебага, врубить расширение, создать "конфигурацию запуска" прописать пути, указать интерпретатор, порт и т.д. и т.п.

И я повторюсь, что с докером это ещë веселее становится.

К сожалению одной командой не включишь его, в реальности а не в сказках из чата. Ну, на словах у каждого "я это делаю за одну минуту". Только вот это всë только на словах.
В терминале заведётся
источник

DT

Dmitriy Tkachenko in PHP
Pavel Agaletskiy
Отладчик в пхп конечно чуть сложнее в настройке, чем в питоне, го или яве, но всё-таки не то, чтобы очень. Один раз его настроив, повторить действия очень просто для любого другого проекта. Docker - не оправдание, там так же не сложно.

Фактически, чтобы его включить надо:
- поставить модуль xdebug. Большинство установщиков (brew, apt как минимум) сразу же положат его конфиг
- для консоли достаточно в phpstorm выбрать интерпретатор, дальше шторм сам определит наличие xdebug
- для веба - добавить в конфиг xdebug одну опцию для того, чтобы он запускался всегда (или при установке переменной).

Для локального запуска - всё.

В докере чуть больше действий. Самое простой для него путь: в шторме включить опцию break on a first line, запустить скрипт, ловить брейк, в подсказке шторма прописать маппинг путей в контейнере и на локалке.

Все. Занимает не больше 5 минут.

При этом локальная установка xdebug легко распространяется на любые другие проекты.

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

В целом, очень бы хотелось, чтобы отладчик был встроен прямо в ядро, но к сожалению, это не так.
Для докера в шторме нужно настроить интерпретатор, сервер (для маппинга) и в контейнер 2 енв переменных
источник

PA

Pavel Agaletskiy in PHP
Vladimir Chernyshev
Или в локальной виртуалке частый кейс. Или в выделенном дев сервере. Я вот за последние 4 года 2 работал на проектах, где локальное разворачивание в принципе не предполагалось, а на текущем с мая так и не настроил полностью чтоб куда-то имело смысл лезть с отладчиком
Тоже самое, как в докере или локально на самом деле. В шторме можно пхп выбрать и прямо из виртуалки для проекта.

Вообщем, все не сложно, особенно в масштабе общего времени разработки и отладки проекта
источник

SP

Sergey Protko in PHP
Dmitriy Tkachenko
Для докера в шторме нужно настроить интерпретатор, сервер (для маппинга) и в контейнер 2 енв переменных
Не надо ничего, просто мэппинги директорий (в любом случае надо) и вруби connect back
источник

SP

Sergey Protko in PHP
Опять же статей туториалов и ь.д. хватает. Парк раз сделаешь и потом "просто pecl install"
источник

DT

Dmitriy Tkachenko in PHP
Та мне то вообще не надо) я уже все настроил😁
источник