Користувальницькькі налаштування

Налаштування сайту


xhprof

Розбіжності

Тут показані розбіжності між вибраною ревізією та поточною версією сторінки.

Посилання на цей список змін

Порівняння попередніх версій Попередня ревізія
Попередня ревізія
Остання ревізія По сторонах наступні версії
xhprof [2016/10/21 18:34]
xhprof [2023/02/18 10:37]
nightfly
Рядок 1: Рядок 1:
 +====== Ієрархічний профайлер XHprof ======
  
 +У Ubilling з релізу 0.5.0 інтегровано інструментарій, що дозволяє включати інтеграцію з [[http://pecl.php.net/package/xhprof|XHprof]]. Даний інструментарій є дуже корисним для оцінки вузьких місць швидкодії, при розробці та відлагодженні модулів Ubilling. 
 +
 +===== Встановлення з PHP 5.3/5.6 =====
 +
 +Все має бути на місці. Але якщо при перегляді full callgraph ви бачите "нічого" - потрібно просто встановити graphviz
 +<code sh>
 +# cd /usr/ports/graphics/graphviz/
 +# make && make install
 +</code>
 +
 +===== Встановлення з PHP 7.0/7.1/7.4 =====
 +Сумно та оригінальний xhprof не працює з PHP 7.0 та вище. Доведеться ставити ручками його працюючий форк.\\
 +<code>
 +# wget https://pecl.php.net/get/xhprof
 +# tar zxvf xhprof
 +# cd xhprof-2.2.0/extension/
 +# phpize
 +# ./configure --with-php-config=/usr/local/bin/php-config
 +# make && make install
 +</code>
 +
 +===== Встановлення з PHP 8.2 =====
 +
 +<code>
 +# wget https://pecl.php.net/get/xhprof
 +# tar zxvf xhprof
 +# cd xhprof-2.3.9/extension/
 +# phpize
 +# ./configure --with-php-config=/usr/local/bin/php-config
 +# make && make install
 +</code>
 +
 +та розкоментовуємо в **/usr/local/etc/php.ini** наступний рядок:
 +<file ini php.ini>
 +extension=xhprof.so
 +</file>
 +
 +Після чого виконуємо 
 +<code>
 +# apachectl restart
 +</code>
 +
 +===== Встановлення на Debian 11 з PHP 7.4 =====
 +<code>
 +# apt install php-dev
 +# wget https://pecl.php.net/get/xhprof
 +# tar zxvf xhprof
 +# cd xhprof-2.3.5/extension/
 +# phpize
 +# ./configure --with-php-config=/usr/bin/php-config7.4
 +# make && make install
 +# ln -fs /usr/bin/dot /usr/local/bin/dot
 +</code>
 +
 +Після чого переконайтеся, що в **/usr/local/etc/php.ini** вказані наступні опції
 +<code ini>
 +[xhprof]                                                   
 +xhprof.output_dir=/tmp/
 +</code>
 +
 +а також розкоментуйте (тільки для PHP7)
 +<code ini>
 +extension=xhprof.so
 +</code>
 +
 +
 +
 +===== Використання =====
 +Для ввімкнення режиму відлагодження, необхідно в файлі конфігурації **config/billing.ini** увімкнути відповідну опцію
 +
 +<code ini>
 +XHPROF=1
 +</code>
 +
 +
 +Після чого, на всіх сторінках Ubilling, згори, має матеріалізуватися відповідний лінк:
 +
 +{{:undefined:xhprof1.png|}}
 +
 +Котрий викликає ось таку красу:
 +
 +{{:undefined:xhprof2.png|}}
 +
 +{{:undefined:xhprof3.png|}}
 +
 +{{:undefined:xhprof4.png|}}
 +
 +**Важливо:** не забувайте вимикати XHprof у продакшні! Це інструментар тільки для розробки та відлагодження!
xhprof.txt · Востаннє змінено: 2023/02/18 10:38 повз nightfly