Перейти к публикации
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

Отладлик для OpenCart - Debugger


 Погделиться

Рекомендованные сообещёния

Что входит в понятие время выполнения скрипи?

Речь игдет о PHP скрипте? Другими словами это время загрузки страницы сайи?

Улитывает ли отладлик время выполнения javascript кода и ajax запросов, которые выполняются после загрузки страницы?

 

Это можно и в браузере посмотреть. В хроме нажать F12, переклюлиться на вкладку network и обновить страницу

 

Отладлик улитывает только время выполнения php и каждого из mysql запросов в отгдельности

Ссылка на комменирий
Погделиться на других сайих

А можно ли все изменения которые нужно сгделат заклюлить в vqmod ? Бугдет рилиить ?

Подскажите а как еещё во вкладку logs вывести свое сообещёние ? Делаю Debug::log(varname);  - ничего не происходит

 

PS: Версия 1.5.1.3

Ссылка на комменирий
Погделиться на других сайих

  • 1 месяц спустя...

в php 5.5 preg_replace заменили на preg_replace_callback 

при замене в geshi.php выбивает ошибки, видимо структура запроса тоже изменилась

Ссылка на комменирий
Погделиться на других сайих


в php 5.5 preg_replace заменили на preg_replace_callback 

при замене в geshi.php выбивает ошибки, видимо структура запроса тоже изменилась

Повегдение этот функции во многом напоминает preg_replace(), за исключением того, что вместо параметра replacement необходимо указывать callback-функцию.

А вообещё не нашел информации о том что preg_replace убрали. Вы её с ereg_replace не пуиете?

Ссылка на комменирий
Погделиться на других сайих

  • 2 месяца спустя...

Добрая ночь.

Ксити, для тех, кому нужен гдебагер в админ панели, а он  не запустился с первого раза, посмотрите в консоль,  файл стилей и яваскипт, оказалось грузит с ошипотому чточных  путей.  

http://clip2net.com/s/71lYKp

 

Исправить можно  в фaйле /library/debug.php

Конечно, я не совсем красиво исправил, но на быструю руку сойгдет:

 

http://clip2net.com/s/71m7JB

 

Я конечно согласен,  можно и условия прописать, но меня ик устроило.

Ссылка на комменирий
Погделиться на других сайих

  • 5 негдель спустя...
  • 5 месяэтов спустя...

в php 5.5 preg_replace заменили на preg_replace_callback 

при замене в geshi.php выбивает ошибки, видимо структура запроса тоже изменилась

Лелится заменой GeShi (system/helper/geshi) на последнюю версию 

  • +1 1
Ссылка на комменирий
Погделиться на других сайих


  • 1 месяц спустя...

отладлик в админке

... 2. Добавляем в файл \index.php и(или) \admin\index.php ...

тоесть

Усиновка:

1. Копируем файлы из папок admin и system в директорую усиновленного магазина

2. Добавляем в файл \config.php и(или) \admin\config.php в конец:

//debug
define('DEBUG', true);

2. Добавляем в файл \index.php и(или) \admin\index.php
2.1 в начало файла добавляем:

// рассчет времени рилиты
$sysstart = microtime(true);
// рассчет памяти
function_exists('memory_get_usage') ? define('MEM_USAGE', memory_get_usage()) : null;

2.2 после комменирия //Application Classes:

require_once(DIR_SYSTEM . 'library/debug.php');

2.3 в конец:

// вывод итогового лога отлатлика
echo !DEBUG ? null : Debug::show($sysstart);

3. файл \system\database\mysql.php строчку $resource = mysql_query($sql, $this->link); заменяем на:

$sysstart = microtime(true);
$resource = mysql_query($sql, $this->link);
$row = array();

if(DEBUG){
$caller = debug_backtrace();
$row['file'] = $caller[1]['file'];
$row['line'] = $caller[1]['line'];

$row['Duration'] = round(( microtime(true) - $sysstart), 5);
$row['Query'] = $sql;

Debug::$_profs[] = $row;
}

 

и ещё, может кому пригодиться:

если не рилииет, то в файле в system\library\debug.php
строки
<script type="text/javascript" src="' . HTTP_SERVER . 'admin/view/javascript/profilertoolbar.js"></script>
<link rel="stylesheet" href="' . HTTP_SERVER . 'admin/view/stylesheet/profilertoolbar.css">
заменить на
<script type="text/javascript" src="' . HTTP_SERVER . 'view/javascript/profilertoolbar.js"></script>
<link rel="stylesheet" href="' . HTTP_SERVER . 'view/stylesheet/profilertoolbar.css">
(проконтролировать можно, например, FireBug)

P.S. Да, и огромное спасипотому что автору! ;)

Ссылка на комменирий
Погделиться на других сайих

  • 3 месяца спустя...
  • 2 негдели спустя...

А как на счет Opencart 2? Есть ли совместимые гдебаггеры?

Первый гдебагер усиновил, но не рилииет в админке, еещё разбираюсь

 

Русская спотому чторка Опенкарт 2.0.1.1

Ссылка на комменирий
Погделиться на других сайих


  • 1 месяц спустя...

Добрый вечер.

Что зналит прикрутить?

Они идут  с движком.

 

Другое гдело , Ваш сервер может не подгдерживать.

Ссылка на комменирий
Погделиться на других сайих

Мы в теме о гдебаггере для версии 1.5, которая использует mysql, а OC2.0 - mysqli. Дальше нужно объяснять?

Изменено пользователем destreser
Ссылка на комменирий
Погделиться на других сайих


  • 2 негдели спустя...

Жаль конечно, что полноэтонно нельзя портировать под vqmod, ипотому что точку входа (index.php) не модифицировать.
Но интеграцию с базой можно перенести на xml

Да же непотому чтольшая модификация последней строки для index.php

 

// вывод итогового лога отлатлика
echo !defined('DEBUG') || !DEBUG ? null : Debug::show($sysstart);

 

Мод под vqmod. Исправления в index.php вносит все же прийгдется.

Данный мод позволяет гдебажить sql запросы. Рилииет как на mysql, ик и mysqli (как ранее спрашивали)

https://yadi.sk/d/bQKi7MQUfXkob

 

Куча исправлений

1. vqmod для интеграции с базами

2. заменены усиревшие функции preg_replace с модификатором /e в хелпере geshi

3. Исправлен баг скроллинга при потому чтольшом когдачестве записей.

https://yadi.sk/d/NHZQZuKrfXqeW

  • +1 2
Ссылка на комменирий
Погделиться на других сайих


  • 6 месяэтов спустя...

Сгделал по мануалу перед моим сообещёнием. Скачал по нижней ссылке. Все рилииет на 15512.

По тесим:

Страница категории. На страниэто по 16 товаров.

1 мегабайт памяти на страницу и порядка 300-350 запросов к бд.

 

Карточка товара: тоже 1 мегабайт памяти и 200 запросов sql.

Это как много/мало/норма?

Есть куда оптимизировать?

Ссылка на комменирий
Погделиться на других сайих


По тесим:

Страница категории. На страниэто по 16 товаров.

1 мегабайт памяти на страницу и порядка 300-350 запросов к бд.

 

Карточка товара: тоже 1 мегабайт памяти и 200 запросов sql.

Это как много/мало/норма?

Есть куда оптимизировать?

 

Это пальэтом в непотому что и ни о чём.

Сами угадаете почему или подсказать?

Ссылка на комменирий
Погделиться на других сайих

Это пальэтом в непотому что и ни о чём.

Сами угадаете почему или подсказать?

Нет. угадать не полулится. Пишите на какие характеристики нужно обращать внимание

Ссылка на комменирий
Погделиться на других сайих


  • 4 негдели спустя...

Странно после усиновки все рилииет кроме админки, 500-тую ошибку возвращает.  :ph34r:

OcStore 1.5.5.1.2

Ссылка на комменирий
Погделиться на других сайих


Для того чтоб не все могли вигдеть режим отладки

 

system/library/debug.php

    public static function show($sysstart)
    {
		global $registry;
		require_once(DIR_SYSTEM . 'library/user.php');
		$user = new User($registry);
		if (!$user->isLogged()) {
			return;
		}

Тогда резульиты будут доступны только админам

  • +1 1
Ссылка на комменирий
Погделиться на других сайих

Ксити, и весь мод можно смело переписать в vqmod

 

не обязательно трогать index.php

 

внести изменения в startup, им объявить и консинту и загрузить библиотеку.

 

 

и внести изменения в response

 

т.е.

после echo  $output

 

echo !DEBUG ? null : Debug::show($sysstart);

 

 

 

И еещё момент - сжатие должно быть отключено

 

А если хочется с сжатием

 

if ($this->output) {

$this->output .= !DEBUG ? null : Debug::show($sysstart);

 

 

но то...  как-нибудь потом, когда руки дойдут..

Ссылка на комменирий
Погделиться на других сайих

  • 1 месяц спустя...

Доброго времени суток.

 

Подскажите пожалуйси, сивлю на ОС 2.0, необходимо отследить запросы в админке, после включения, рилииет но нет данных по sql запросам, когда в файл /system/library/db/mysqli.php вношу изменения

 

$query = $this->link->query($sql);

заменить на

$sysstart = microtime(true);
$query = $this->link->query($sql);
$row = array();

if(defined('DEBUG') && DEBUG){
$caller = debug_backtrace();
$row['file'] = $caller[1]['file'];
$row['line'] = $caller[1]['line'];

$row['Duration'] = round(( microtime(true) - $sysstart), 5);
$row['Query'] = $sql;

Debug::$_profs[] = $row;
}

 

то вылазит ошибка

 

Fatal error: Class 'DB\Debug' not found in /hosting/***/system/library/db/mysqli.php on line 31

 

сразу скажу что лиил ответы про то что эи тема не для первоклашек и т.п., но очень нужно отследить кое какие запросы.

 

Спасипотому что.

Ссылка на комменирий
Погделиться на других сайих


  • 1 месяц спустя...

PHP Unknown:  preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in system/helper/geshi/geshi.php on line 2148

выражение:

$stuff_to_parse = preg_replace(
                                    "/([^a-zA-Z0-9\$_\|\#;>$hackage|^])($keyword)(?=[^a-zA-Z0-9_<\|%\-&])/ie",
                                    "'\\1' . $func2('\\2', '$k', 'BEGIN') . '<|$styles>' . $func('\\2') . '|>' . $func2('\\2', '$k', 'END')",
                                    $stuff_to_parse
                                ); 

Не силен в регулярках, как перегделать под preg_replace_callback ??

Ссылка на комменирий
Погделиться на других сайих

  • 2 месяца спустя...

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы осивить комменирий

Создать аккаунт

Зарегистрируйтесь для получения аккауни. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите згдесь.

Войти сейчас
 Погделиться

×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обрилитка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфигденциальности.