Size: a a a

WordPress Ukraine Community

2020 August 30

IV

Ihor Vorotnov in WordPress Ukraine Community
Pavel Bondarchuk
@olegvalko у тебя при включенном дебаге страница висит бесконечно?
так і має бути. breakpoint - це ж точка зупинки виконання скрипта. php зупиняє роботу в цьому місці і “зависає” поки ти не дасиш йому дозвіл продовжити
источник

IV

Ihor Vorotnov in WordPress Ukraine Community
в цьому весь смисл step debugging
источник

OV

Oleg Valko in WordPress Ukraine Community
о щось вийшло навіть у вінді
источник

IV

Ihor Vorotnov in WordPress Ukraine Community
Pavel Bondarchuk
а если мне нужно допустим профилировать загрузку шаблона, я ставлю точку в начале шаблона страницы и захожу на эту страницу на фронте в браузере?
для профілювання ніяких точок не треба. включаєш профайлер і перегружаєш сторінку, все
источник

IV

Ihor Vorotnov in WordPress Ukraine Community
Oleg Valko
о щось вийшло навіть у вінді
во, норм
источник

IV

Ihor Vorotnov in WordPress Ukraine Community
далі маєш вкладки Statistics / Call Tree та Callees / Callers
источник

IV

Ihor Vorotnov in WordPress Ukraine Community
ну і колоночки з інфою
источник

IV

Ihor Vorotnov in WordPress Ukraine Community
далі можеш гуглити як ці дані розуміти, які “паттерни” шукати як потенційні проблеми
источник

IV

Ihor Vorotnov in WordPress Ukraine Community
розгорни там якийсь з своїх сайтів і відпрофілюй його, побачиш багато цікавого)
источник

OV

Oleg Valko in WordPress Ukraine Community
Ihor Vorotnov
розгорни там якийсь з своїх сайтів і відпрофілюй його, побачиш багато цікавого)
а може в мене там все настільки професійно що профайлер навіть відмовиться сканувати
источник

OV

Oleg Valko in WordPress Ukraine Community
😂😂
источник

PB

Pavel Bondarchuk in WordPress Ukraine Community
Ihor Vorotnov
для профілювання ніяких точок не треба. включаєш профайлер і перегружаєш сторінку, все
мм. стесняюсь спросить. а как это сделать? )))
источник

IV

Ihor Vorotnov in WordPress Ukraine Community
Pavel Bondarchuk
мм. стесняюсь спросить. а как это сделать? )))
вище обговорювали, я навіть писав інструкцію на 7 чи скіко там кроків 🙂
источник

IV

Ihor Vorotnov in WordPress Ukraine Community
Переслано от Ihor Vorotnov
1. Налаштувати профілювання в конфігу xdebug
2. В браузері в тому екстеншні включити Profile
3. Перезагрузити потрібну сторінку
4. В папці для профайлів (яку ти налаштував в п.1) буде лежати файл
5. В штормі Tools - Analyze Profiler Snapshot і вибираєш той файлик
источник

OV

Oleg Valko in WordPress Ukraine Community
Pavel Bondarchuk
мм. стесняюсь спросить. а как это сделать? )))
стєсняться не треба, цим ти віддаляєшся від поставленої цілі
источник

IV

Ihor Vorotnov in WordPress Ukraine Community
кароч якшо коротко:
- xdebug складається з дебаггера, профайлер і трейсера/трассіровщика (по різному перекладають на нашу)
- для відладки коду юзається дебаггер. ставиш в коді брейкпоінт, виконання коду на цьому місці зупинаяється і ти можеш подивитися в якому стані все в цей момент, можеш змінити якісь значення, можеш покроково рухатись далі по виконанню коду, рядок за рядком (step debuggin)
- для профілюванная - профайлер. його задача відрендерити сторінку як стандартно пхп рендерить, але записати “лог” з усіма викликами функцій, які дозволять побудувати графік залежностей і статистику - це дозволить тобі побачити вузькі місця в твоєму коді
- трейсинг дає можливість записати в лог всі виклики функцій і подивитись потім як працює логіка, шо за чим, які є “шляхи виконання” (execution paths) в залежності від зміни логіки (іфи наприклад) чи вхідних даних. це вже більш просунута тема
источник

IV

Ihor Vorotnov in WordPress Ukraine Community
ось тут детальніше про трейсинг https://xdebug.org/docs/execution_trace
источник

MD

Maxym Denysenko in WordPress Ukraine Community
Ihor Vorotnov
кароч якшо коротко:
- xdebug складається з дебаггера, профайлер і трейсера/трассіровщика (по різному перекладають на нашу)
- для відладки коду юзається дебаггер. ставиш в коді брейкпоінт, виконання коду на цьому місці зупинаяється і ти можеш подивитися в якому стані все в цей момент, можеш змінити якісь значення, можеш покроково рухатись далі по виконанню коду, рядок за рядком (step debuggin)
- для профілюванная - профайлер. його задача відрендерити сторінку як стандартно пхп рендерить, але записати “лог” з усіма викликами функцій, які дозволять побудувати графік залежностей і статистику - це дозволить тобі побачити вузькі місця в твоєму коді
- трейсинг дає можливість записати в лог всі виклики функцій і подивитись потім як працює логіка, шо за чим, які є “шляхи виконання” (execution paths) в залежності від зміни логіки (іфи наприклад) чи вхідних даних. це вже більш просунута тема
Расскажи об этом на митапе в четверг
источник

MD

Maxym Denysenko in WordPress Ukraine Community
Тебе подготовится пару часов)
источник

OV

Oleg Valko in WordPress Ukraine Community
Ihor Vorotnov
кароч якшо коротко:
- xdebug складається з дебаггера, профайлер і трейсера/трассіровщика (по різному перекладають на нашу)
- для відладки коду юзається дебаггер. ставиш в коді брейкпоінт, виконання коду на цьому місці зупинаяється і ти можеш подивитися в якому стані все в цей момент, можеш змінити якісь значення, можеш покроково рухатись далі по виконанню коду, рядок за рядком (step debuggin)
- для профілюванная - профайлер. його задача відрендерити сторінку як стандартно пхп рендерить, але записати “лог” з усіма викликами функцій, які дозволять побудувати графік залежностей і статистику - це дозволить тобі побачити вузькі місця в твоєму коді
- трейсинг дає можливість записати в лог всі виклики функцій і подивитись потім як працює логіка, шо за чим, які є “шляхи виконання” (execution paths) в залежності від зміни логіки (іфи наприклад) чи вхідних даних. це вже більш просунута тема
Дякую за такий детальний опис.
источник