Constantes pré-définies
<<<
Comment utiliser APD dans vos scripts ? Informations de contact
>>>

8.2 Débogueur avancé pour PHP
8 Référence des fonctions
 Manuel PHP

Introduction
Installation
Compilation sous un environnement Win32
Configuration à l'exécution
Types de ressources
Constantes pré-définies
->Comment utiliser APD dans vos scripts ?
Informations de contact
apd_breakpoint
apd_callstack
apd_clunk
apd_continue
apd_croak
apd_dump_function_table
apd_dump_persistent_resources
apd_dump_regular_resources
apd_echo
apd_get_active_symbols
apd_set_pprof_trace
apd_set_session_trace
apd_set_session
apd_set_socket_session_trace
override_function
rename_function

8.2.7 Comment utiliser APD dans vos scripts ?

A la première ligne de vos scripts PHP, appelez la fonction apd_pprof_trace() pour commencer la trace :


apd_set_pprof_trace();

Vous pouvez ajouter cette ligne n'importe où dans votre script, mais si vous ne commencez pas à tracer au début de votre script, vous désactivez les données de profil qui pourraient autrement vous mener à un goulot d'étranglement d'exécution.

Maintenant, éxécutez votre script. Le contenu de la sortie devrait être écrit dans le fichier apd.dumpdir/pprof_pid.ext . Array

Pour afficher les données de profile formattées, exécutez la commande pprofp avec les options de trie et d'affichage de votre choix. L'affichage formattée pourra ressembler à cela :
bash-2.05b$ pprofp -R /tmp/pprof.22141.0

Trace for /home/dan/testapd.php
Total Elapsed Time = 0.00
Total System Time = 0.00
Total User Time = 0.00


Real User System secs/ cumm
%Time (excl/cumm) (excl/cumm) (excl/cumm) Calls call s/call Memory Usage Name
--------------------------------------------------------------------------------------
100.0 0.00 0.00 0.00 0.00 0.00 0.00 1 0.0000 0.0009 0 main
56.9 0.00 0.00 0.00 0.00 0.00 0.00 1 0.0005 0.0005 0 apd_set_pprof_trace
28.0 0.00 0.00 0.00 0.00 0.00 0.00 10 0.0000 0.0000 0 preg_replace
14.3 0.00 0.00 0.00 0.00 0.00 0.00 10 0.0000 0.0000 0 str_replace

L'option -R utilisée dans cet exemple trie la table de profil par la durée réelle qu'une fonction donnée coûte au script. La colonne "cumm call" révèle le nombre d'appel de chaque fonction et la colonne "s/call", le nombre de secondes chaque appel à la fonction nécessite, en moyenne.

Pour générer un fichier d'appel sous forme d'arbre que vous pourrez importer dans l'application KCacheGrind (application d'analyse de profile), exécutez la commande pprof2calltree .

<< Comment utiliser APD dans vos scripts ? >>
Constantes pré-définies Débogueur avancé pour PHP Informations de contact