SlideShare a Scribd company logo
1 of 18
Download to read offline
ITIL
24/01/2013
Softjourn Inc.




xdebug
        Анатолій Охотніков
           Softjourn Inc.
1/23/13

                  Про що буде йти мова
          ●   Що таке xdebug?
          ●   Налаштування PhpStorm
          ●   Профілірування (profiling)
          ●   Обробка помилок
          ●   Трасування (tracing)
          ●   Посилання
          ●   Питання та обговорення
Що таке xdebug?
 xdebug – це розширення для PHP,
  написане Derick Rethans, одним з
  розробників мови PHP
 Силова станція РНР
 Має багато можливостей, наприклад
  відладка, трасування, профілірування та
  аналіз проблем у РНР коді
 Відображення(дампи) змінних, віддалена
  відладка, трасування функцій, аналіз
  покриття коду
Налаштування PhpStorm
 Додати сервер
 Вказати порт для прослуховування
 Почати прослуховування
 Відкрити сторінку
 Почати відладку
 ???
 PROFIT!
Додати сервер
Вказати порт для прослуховування
Почати прослуховування
Відкрити сторінку
Почати відладку
???




          javascript:(/** @version 0.5.2 */function()
   {document.cookie='XDEBUG_SESSION='+'PHPSTORM-
XDEBUG'+';path=/;';document.location.reload();document.cookie='X
  DEBUG_SESSION='+''+';expires=Mon, 05 Jul 2000 00:00:00
                       GMT;path=/;';})()
PROFIT!
Профілірування (profiling)
 Xdebug може генерувати cachegrind файли,
  які містять інформацію для
  профілірування
 Це може використовуватись для
  знаходження вузьких місць у ваших
  скриптах
 Інструменти: WinCacheGrind, KCacheGrind,
    webgrind
   Дозволяють аналізувати виконання
    скрипта (розбивка часу виконання,
    кількість викликів функцій, тощо)
KCacheGrind
Обробка помилок
php_flag       xdebug.collect_vars      on
php_value      xdebug.collect_params    4
php_flag       xdebug.dump_globals      on
php_value      xdebug.dump.SERVER       REQUEST_URI
php_value      xdebug.dump.GET          *
php_value      xdebug.dump.POST         *
php_value      xdebug.dump.COOKIE       *
php_flag       xdebug.show_local_vars   on
Трасування (tracing)

        php_value   xdebug.show_mem_delta   1
        php_value   xdebug.collect_return   1
        php_value   xdebug.collect_params   4
        php_value   xdebug.auto_trace       1
Посилання
 http://blog.jetbrains.com/webide/2011/02/ze
  ro-configuration-debugging-with-xdebug-
  and-phpstorm-2-0/
 http://blog.jetbrains.com/webide/2011/03/co
  nfigure-php-debugging-in-phpstorm-2-0/
 http://habrahabr.ru/post/31452/
 http://xdebug.org/
 PHP-Code-Profiling-and-Debugging-
  XDebug.ppt
 Xdebug-PHP-Performance-Profiling-
  Debugging.ppt
Питання та обговорення
“Анатолій Охотніков”
<aokhotnikov@softjourn.com>




   Copyright © 2000-2011 Softjourn, Inc. All rights reserved

More Related Content

What's hot

08 Exceptions and AOP
08  Exceptions and AOP08  Exceptions and AOP
08 Exceptions and AOPeleksdev
 
Angular. presentation
Angular. presentationAngular. presentation
Angular. presentationeleksdev
 
System programing module 1. Processes
System programing module 1. ProcessesSystem programing module 1. Processes
System programing module 1. ProcessesAndrii Hladkyi
 
G rpc lection1_theory_bkp2
G rpc lection1_theory_bkp2G rpc lection1_theory_bkp2
G rpc lection1_theory_bkp2eleksdev
 
System programing module 2. Threads
System programing module 2. ThreadsSystem programing module 2. Threads
System programing module 2. ThreadsAndrii Hladkyi
 
12 Architecture
12 Architecture12 Architecture
12 Architectureeleksdev
 
JS Fest 2019/Autumn. Роман Савіцький. Webcomponents & lit-element in production
JS Fest 2019/Autumn. Роман Савіцький. Webcomponents & lit-element in productionJS Fest 2019/Autumn. Роман Савіцький. Webcomponents & lit-element in production
JS Fest 2019/Autumn. Роман Савіцький. Webcomponents & lit-element in productionJSFestUA
 
Web service lecture
Web service lectureWeb service lecture
Web service lectureeleksdev
 
Тестування при розробці програмного забезпечення. Unit Tests.
Тестування при розробці програмного забезпечення. Unit Tests.Тестування при розробці програмного забезпечення. Unit Tests.
Тестування при розробці програмного забезпечення. Unit Tests.Elantix
 
Net framework і c# module 5
Net framework і c# module 5Net framework і c# module 5
Net framework і c# module 5Andrii Hladkyi
 
11 web services
11 web services11 web services
11 web serviceseleksdev
 
Net framework і c# module 10
Net framework і c# module 10Net framework і c# module 10
Net framework і c# module 10Andrii Hladkyi
 
Net framework and C# module 17. Serialization
Net framework and  C# module 17. SerializationNet framework and  C# module 17. Serialization
Net framework and C# module 17. SerializationAndrii Hladkyi
 

What's hot (16)

08 Exceptions and AOP
08  Exceptions and AOP08  Exceptions and AOP
08 Exceptions and AOP
 
Angular. presentation
Angular. presentationAngular. presentation
Angular. presentation
 
System programing module 1. Processes
System programing module 1. ProcessesSystem programing module 1. Processes
System programing module 1. Processes
 
G rpc lection1_theory_bkp2
G rpc lection1_theory_bkp2G rpc lection1_theory_bkp2
G rpc lection1_theory_bkp2
 
System programing module 2. Threads
System programing module 2. ThreadsSystem programing module 2. Threads
System programing module 2. Threads
 
12 Architecture
12 Architecture12 Architecture
12 Architecture
 
JS Fest 2019/Autumn. Роман Савіцький. Webcomponents & lit-element in production
JS Fest 2019/Autumn. Роман Савіцький. Webcomponents & lit-element in productionJS Fest 2019/Autumn. Роман Савіцький. Webcomponents & lit-element in production
JS Fest 2019/Autumn. Роман Савіцький. Webcomponents & lit-element in production
 
Rpc
RpcRpc
Rpc
 
Web service lecture
Web service lectureWeb service lecture
Web service lecture
 
Тестування при розробці програмного забезпечення. Unit Tests.
Тестування при розробці програмного забезпечення. Unit Tests.Тестування при розробці програмного забезпечення. Unit Tests.
Тестування при розробці програмного забезпечення. Unit Tests.
 
Net framework і c# module 5
Net framework і c# module 5Net framework і c# module 5
Net framework і c# module 5
 
вашенюк
вашенюквашенюк
вашенюк
 
cpp-2013 #20 Best practices
cpp-2013 #20 Best practicescpp-2013 #20 Best practices
cpp-2013 #20 Best practices
 
11 web services
11 web services11 web services
11 web services
 
Net framework і c# module 10
Net framework і c# module 10Net framework і c# module 10
Net framework і c# module 10
 
Net framework and C# module 17. Serialization
Net framework and  C# module 17. SerializationNet framework and  C# module 17. Serialization
Net framework and C# module 17. Serialization
 

Viewers also liked (17)

Agile (IF PM Group) v2
Agile (IF PM Group) v2Agile (IF PM Group) v2
Agile (IF PM Group) v2
 
Debugging PHP With Xdebug
Debugging PHP With XdebugDebugging PHP With Xdebug
Debugging PHP With Xdebug
 
Php web app security (eng)
Php web app security (eng)Php web app security (eng)
Php web app security (eng)
 
ITEvent: Continuous Integration (ukr)
ITEvent: Continuous Integration (ukr)ITEvent: Continuous Integration (ukr)
ITEvent: Continuous Integration (ukr)
 
Ubuntu server wireless access point (eng)
Ubuntu server wireless access point (eng)Ubuntu server wireless access point (eng)
Ubuntu server wireless access point (eng)
 
Debug (ukr)
Debug (ukr)Debug (ukr)
Debug (ukr)
 
Php unit (eng)
Php unit (eng)Php unit (eng)
Php unit (eng)
 
Web application security (eng)
Web application security (eng)Web application security (eng)
Web application security (eng)
 
Jenkins CI (ukr)
Jenkins CI (ukr)Jenkins CI (ukr)
Jenkins CI (ukr)
 
ITIL (ukr)
ITIL (ukr)ITIL (ukr)
ITIL (ukr)
 
Continuous integration (eng)
Continuous integration (eng)Continuous integration (eng)
Continuous integration (eng)
 
ITEvent: Kanban Intro (ukr)
ITEvent: Kanban Intro (ukr)ITEvent: Kanban Intro (ukr)
ITEvent: Kanban Intro (ukr)
 
Db design (ukr)
Db design (ukr)Db design (ukr)
Db design (ukr)
 
Linux introduction (eng)
Linux introduction (eng)Linux introduction (eng)
Linux introduction (eng)
 
Project Management: Burn-Down Chart / OrangeHRM Project MOD (eng)
Project Management: Burn-Down Chart / OrangeHRM Project MOD (eng)Project Management: Burn-Down Chart / OrangeHRM Project MOD (eng)
Project Management: Burn-Down Chart / OrangeHRM Project MOD (eng)
 
Agile Feedback Loops (ukr)
Agile Feedback Loops (ukr)Agile Feedback Loops (ukr)
Agile Feedback Loops (ukr)
 
Ldap introduction (eng)
Ldap introduction (eng)Ldap introduction (eng)
Ldap introduction (eng)
 

Similar to Xdebug (ukr)

Як прокачати трьох студентів за п’ять тижнів
Як прокачати трьох студентів за п’ять тижнівЯк прокачати трьох студентів за п’ять тижнів
Як прокачати трьох студентів за п’ять тижнівStfalcon Meetups
 
Як прокачати трьох студентів за п’ять тижнів
Як прокачати трьох студентів за п’ять тижнівЯк прокачати трьох студентів за п’ять тижнів
Як прокачати трьох студентів за п’ять тижнівArtem Henvald
 
Невивчені уроки або логи антивірусних війн
Невивчені уроки або логи антивірусних війнНевивчені уроки або логи антивірусних війн
Невивчені уроки або логи антивірусних війнVladyslav Radetsky
 
Корнілов Андрій
Корнілов АндрійКорнілов Андрій
Корнілов АндрійOleg Nazarevych
 
"Laravel Tips & Tricks - 7 Steps to Dramatically Improve Performance", Yehor ...
"Laravel Tips & Tricks - 7 Steps to Dramatically Improve Performance", Yehor ..."Laravel Tips & Tricks - 7 Steps to Dramatically Improve Performance", Yehor ...
"Laravel Tips & Tricks - 7 Steps to Dramatically Improve Performance", Yehor ...Fwdays
 
природна і економна дорожня карта для переходу команди розробки на тест центр...
природна і економна дорожня карта для переходу команди розробки на тест центр...природна і економна дорожня карта для переходу команди розробки на тест центр...
природна і економна дорожня карта для переходу команди розробки на тест центр...Andrii Podanenko
 
"Rethinking Continuous Delivery", Andrii Nasinnyk
"Rethinking Continuous Delivery",  Andrii Nasinnyk"Rethinking Continuous Delivery",  Andrii Nasinnyk
"Rethinking Continuous Delivery", Andrii NasinnykFwdays
 
Stfalcon QA Meetup 31.01.2020
Stfalcon QA Meetup 31.01.2020Stfalcon QA Meetup 31.01.2020
Stfalcon QA Meetup 31.01.2020Stfalcon Meetups
 
DrupalTour. Zhytomyr — Drupal Optimization (Dmitry Kinakh, InternetDevels)
DrupalTour. Zhytomyr — Drupal Optimization (Dmitry Kinakh, InternetDevels)DrupalTour. Zhytomyr — Drupal Optimization (Dmitry Kinakh, InternetDevels)
DrupalTour. Zhytomyr — Drupal Optimization (Dmitry Kinakh, InternetDevels)Drupaltour
 
Порівняння Drupal та Typo3
Порівняння Drupal та Typo3Порівняння Drupal та Typo3
Порівняння Drupal та Typo3Drupal Camp Kyiv
 
порівняння Drupal та Typo3
порівняння Drupal та Typo3порівняння Drupal та Typo3
порівняння Drupal та Typo3Inna Tuyeva
 
Розробка веб-сайту. Основні етапи
Розробка веб-сайту. Основні етапиРозробка веб-сайту. Основні етапи
Розробка веб-сайту. Основні етапиОлексій Артеменко
 
Global logic tech talk switching to Angular.js
Global logic tech talk switching to Angular.jsGlobal logic tech talk switching to Angular.js
Global logic tech talk switching to Angular.jsPavlo Iuriichuk
 
Павло Юрійчук — Перехід на Angular.js. Howto
Павло Юрійчук — Перехід на Angular.js. HowtoПавло Юрійчук — Перехід на Angular.js. Howto
Павло Юрійчук — Перехід на Angular.js. HowtoGlobalLogic Ukraine
 
Joomla 3. Що нового для розробників у новій версії - Віталій Маренков
Joomla 3. Що нового для розробників у новій версії - Віталій МаренковJoomla 3. Що нового для розробників у новій версії - Віталій Маренков
Joomla 3. Що нового для розробників у новій версії - Віталій МаренковIgor Bronovskyy
 
'Why svelte' by BORYS MOHYLA at OdessaJS'2020
'Why svelte' by BORYS MOHYLA at OdessaJS'2020'Why svelte' by BORYS MOHYLA at OdessaJS'2020
'Why svelte' by BORYS MOHYLA at OdessaJS'2020OdessaJS Conf
 
"Request Lifecycle at Prom.ua", Vitaliy Kharytonskiy
"Request Lifecycle at Prom.ua", Vitaliy Kharytonskiy"Request Lifecycle at Prom.ua", Vitaliy Kharytonskiy
"Request Lifecycle at Prom.ua", Vitaliy KharytonskiyFwdays
 

Similar to Xdebug (ukr) (20)

Як прокачати трьох студентів за п’ять тижнів
Як прокачати трьох студентів за п’ять тижнівЯк прокачати трьох студентів за п’ять тижнів
Як прокачати трьох студентів за п’ять тижнів
 
Як прокачати трьох студентів за п’ять тижнів
Як прокачати трьох студентів за п’ять тижнівЯк прокачати трьох студентів за п’ять тижнів
Як прокачати трьох студентів за п’ять тижнів
 
Невивчені уроки або логи антивірусних війн
Невивчені уроки або логи антивірусних війнНевивчені уроки або логи антивірусних війн
Невивчені уроки або логи антивірусних війн
 
Корнілов Андрій
Корнілов АндрійКорнілов Андрій
Корнілов Андрій
 
"Laravel Tips & Tricks - 7 Steps to Dramatically Improve Performance", Yehor ...
"Laravel Tips & Tricks - 7 Steps to Dramatically Improve Performance", Yehor ..."Laravel Tips & Tricks - 7 Steps to Dramatically Improve Performance", Yehor ...
"Laravel Tips & Tricks - 7 Steps to Dramatically Improve Performance", Yehor ...
 
природна і економна дорожня карта для переходу команди розробки на тест центр...
природна і економна дорожня карта для переходу команди розробки на тест центр...природна і економна дорожня карта для переходу команди розробки на тест центр...
природна і економна дорожня карта для переходу команди розробки на тест центр...
 
"Rethinking Continuous Delivery", Andrii Nasinnyk
"Rethinking Continuous Delivery",  Andrii Nasinnyk"Rethinking Continuous Delivery",  Andrii Nasinnyk
"Rethinking Continuous Delivery", Andrii Nasinnyk
 
Stfalcon QA Meetup 31.01.2020
Stfalcon QA Meetup 31.01.2020Stfalcon QA Meetup 31.01.2020
Stfalcon QA Meetup 31.01.2020
 
DrupalTour. Zhytomyr — Drupal Optimization (Dmitry Kinakh, InternetDevels)
DrupalTour. Zhytomyr — Drupal Optimization (Dmitry Kinakh, InternetDevels)DrupalTour. Zhytomyr — Drupal Optimization (Dmitry Kinakh, InternetDevels)
DrupalTour. Zhytomyr — Drupal Optimization (Dmitry Kinakh, InternetDevels)
 
Порівняння Drupal та Typo3
Порівняння Drupal та Typo3Порівняння Drupal та Typo3
Порівняння Drupal та Typo3
 
порівняння Drupal та Typo3
порівняння Drupal та Typo3порівняння Drupal та Typo3
порівняння Drupal та Typo3
 
Розробка веб-сайту. Основні етапи
Розробка веб-сайту. Основні етапиРозробка веб-сайту. Основні етапи
Розробка веб-сайту. Основні етапи
 
Drupal Optimization
Drupal OptimizationDrupal Optimization
Drupal Optimization
 
Global logic tech talk switching to Angular.js
Global logic tech talk switching to Angular.jsGlobal logic tech talk switching to Angular.js
Global logic tech talk switching to Angular.js
 
Павло Юрійчук — Перехід на Angular.js. Howto
Павло Юрійчук — Перехід на Angular.js. HowtoПавло Юрійчук — Перехід на Angular.js. Howto
Павло Юрійчук — Перехід на Angular.js. Howto
 
ASP.Net MVC
ASP.Net MVCASP.Net MVC
ASP.Net MVC
 
Joomla 3. Що нового для розробників у новій версії - Віталій Маренков
Joomla 3. Що нового для розробників у новій версії - Віталій МаренковJoomla 3. Що нового для розробників у новій версії - Віталій Маренков
Joomla 3. Що нового для розробників у новій версії - Віталій Маренков
 
Html5
Html5Html5
Html5
 
'Why svelte' by BORYS MOHYLA at OdessaJS'2020
'Why svelte' by BORYS MOHYLA at OdessaJS'2020'Why svelte' by BORYS MOHYLA at OdessaJS'2020
'Why svelte' by BORYS MOHYLA at OdessaJS'2020
 
"Request Lifecycle at Prom.ua", Vitaliy Kharytonskiy
"Request Lifecycle at Prom.ua", Vitaliy Kharytonskiy"Request Lifecycle at Prom.ua", Vitaliy Kharytonskiy
"Request Lifecycle at Prom.ua", Vitaliy Kharytonskiy
 

Xdebug (ukr)

  • 2. Softjourn Inc. xdebug Анатолій Охотніков Softjourn Inc.
  • 3. 1/23/13 Про що буде йти мова ● Що таке xdebug? ● Налаштування PhpStorm ● Профілірування (profiling) ● Обробка помилок ● Трасування (tracing) ● Посилання ● Питання та обговорення
  • 4. Що таке xdebug?  xdebug – це розширення для PHP, написане Derick Rethans, одним з розробників мови PHP  Силова станція РНР  Має багато можливостей, наприклад відладка, трасування, профілірування та аналіз проблем у РНР коді  Відображення(дампи) змінних, віддалена відладка, трасування функцій, аналіз покриття коду
  • 5. Налаштування PhpStorm  Додати сервер  Вказати порт для прослуховування  Почати прослуховування  Відкрити сторінку  Почати відладку  ???  PROFIT!
  • 7. Вказати порт для прослуховування
  • 11. ??? javascript:(/** @version 0.5.2 */function() {document.cookie='XDEBUG_SESSION='+'PHPSTORM- XDEBUG'+';path=/;';document.location.reload();document.cookie='X DEBUG_SESSION='+''+';expires=Mon, 05 Jul 2000 00:00:00 GMT;path=/;';})()
  • 13. Профілірування (profiling)  Xdebug може генерувати cachegrind файли, які містять інформацію для профілірування  Це може використовуватись для знаходження вузьких місць у ваших скриптах  Інструменти: WinCacheGrind, KCacheGrind, webgrind  Дозволяють аналізувати виконання скрипта (розбивка часу виконання, кількість викликів функцій, тощо)
  • 15. Обробка помилок php_flag xdebug.collect_vars on php_value xdebug.collect_params 4 php_flag xdebug.dump_globals on php_value xdebug.dump.SERVER REQUEST_URI php_value xdebug.dump.GET * php_value xdebug.dump.POST * php_value xdebug.dump.COOKIE * php_flag xdebug.show_local_vars on
  • 16. Трасування (tracing) php_value xdebug.show_mem_delta 1 php_value xdebug.collect_return 1 php_value xdebug.collect_params 4 php_value xdebug.auto_trace 1
  • 17. Посилання  http://blog.jetbrains.com/webide/2011/02/ze ro-configuration-debugging-with-xdebug- and-phpstorm-2-0/  http://blog.jetbrains.com/webide/2011/03/co nfigure-php-debugging-in-phpstorm-2-0/  http://habrahabr.ru/post/31452/  http://xdebug.org/  PHP-Code-Profiling-and-Debugging- XDebug.ppt  Xdebug-PHP-Performance-Profiling- Debugging.ppt
  • 18. Питання та обговорення “Анатолій Охотніков” <aokhotnikov@softjourn.com> Copyright © 2000-2011 Softjourn, Inc. All rights reserved