Netbeans e Xdebug per debugging e profiling di applicazioni PHP
Php ile debugging
-
Upload
volkan-altan -
Category
Technology
-
view
1.169 -
download
4
description
Transcript of Php ile debugging
PHP uygulamalarında hata ayıklama yöntemleri
Volkan Altan
@volkanaltan TEMMUZ’13 - PHPIST
Friday, July 5, 13
Bugün ne yapacağız?• Neye benziyor?
• Yazılım geliştirme süreçlerinde debugging
• Neden debugging?
• Araçlar
• Ayarlar
• Demo
Friday, July 5, 13
Neye benziyor?
Hommer ‘ın boynunda breakpoint olduğunu hayal edin. Yiyeceğin her ilerleyişini amcanın takip ettiğini düşünün.
Friday, July 5, 13
Yazılım geliştirme süreçlerinde debugging
• Yazılım geliştirme döngüsünde önemli bir süreçtir. Zayıflıkları, hataları ve kodun nasıl çalıştığını keşfetmenin bir yoludur.
• Sadece ihtiyacınız olduğunda aktif hâle getirirsiniz.
• Çoğu programlama ortamında dahili olarak mevcuttur. Kullanımı çok kolaydır. ( Başla, İlerle, Dur)
Nelere çözüm üretiyoruz?
Friday, July 5, 13
Neden Debugging?• Büyük projelerde iş akışlarının takibini kolayca
yapın.bir işlemin yaşam döngüsünü izleyin.
• Uygulamada beklenmeyen davranışları keşfedin ve düzeltin.
karşılaştığınız hataların detayına inin!
• Dışarıdan aldığınız modüllerin nasıl çalıştığını keşfedin (magento, drupal, wordpress).
şifreli bir şekilde satın aldığınız modüllerin neler yaptığını merak etmiyor musunuz?
Friday, July 5, 13
Neden Debugging?
Sorunlar üste üste geliyor, peki çözümü?
Friday, July 5, 13
Araçlar• Dâhili
• echo• var_dump• print_r
• Harici• Zend debugger• Xdebug• DBG• Advanced PHP
Debugger (APD)
• PECL APD
PHP dâhili debugger içermemektedir. O nedenle eklenti olarak aktif edilmeli.
• Loglama• firePHP• formaldehyde• frameworklerin araçları
• İzleme• sistem araçları
Friday, July 5, 13
Klasik PHPdisplay_errors = Onerror_reporting = E_ALL
Friday, July 5, 13
Xdebugzend_extension="xdebug.so"xdebug.remote_enable=1xdebug.idekey="xdebug"xdebug.collect_params=4
xdebug.scream ?
Friday, July 5, 13
http://debugging-mag.local/?XDEBUG_SESSION_START=xdebug
Hayat debugging yapana güzel!
Friday, July 5, 13
Debugging
Neler yapabilirsiniz?
Friday, July 5, 13
İzlemesudo iosnoop -an httpdhttp://debugging-mag.local/index.php/
Diskimizde neler oluyor? Bu isteği tekrar edelim!
Friday, July 5, 13
İzlemehttp://debugging-mag.local/index.php/
Sizce ne değişti?
Friday, July 5, 13
İzlemesudo opensnoop -an httpdhttp://debugging-mag.local/index.php/
Erişilen dosyalar...
Friday, July 5, 13
İzlemehttp://localhost/info.php
info.php ancak bu kadar erişim yapabiliyor...
Friday, July 5, 13
İzleme
http://localhost/debugging/curl.php
sudo soconnect_mac.d|grep httpd
İçerde neler oluyor?
Friday, July 5, 13
Genel Kültür• Profiling (qcachegrind, webgrind ile güzel)
• PHP Unit
• Simple Test
• Selenium
• JMeter
• Ab
• Wireshark
Friday, July 5, 13
Muhafız Demo
Friday, July 5, 13
Kaynaklarhttp://www.php.net/manual/en/debugger-about.php
http://dtrace.org/blogs/brendan/2011/10/10/top-10-dtrace-scripts-for-mac-os-x/
http://www.slideshare.net/IanBarber/debugging-rules-tools
http://www.slideshare.net/ujovlado/xdebug-debugging-php-applications
Friday, July 5, 13
Sorular
Friday, July 5, 13