Время генерации страницы

Автор Snow_Irbis, 26 июня 2017, 09:53:15

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

Snow_Irbis

Последнее время стал замечать что страницы начались долго генерироваться, относительно того, как они генерировались ранее. Для примера ранее в среднем страницы генерировались 0.08 секунд, сейчас же 0.2 секунды, хотя бывает что и по 0.5-1 секунде. Как пишу в саппорт то сразу страницы начинают генерироваться нормально, 0.08-0.1 секунда и естественно саппорт говорит что все нищак, при этом один раз рекомендовали перейти на другой тарифный план, при этом не учитывая что я даже 25% своего тарифного плана не использую :facepalm: Вообщем вопрос такого плана, как можно реализовать запись в лог (текстовый файлик) время генерации страниц, что бы потом посмотреть как оно например на протяжении дня грузиться и посчитать средний результат? Есть вот такая идея, поставить следующий код в index.php, но не знаю в какой переменной SMF хранит время генерации страницы что выводится на страницах.



$generationtime = /*какая переменная в SMF?*/ ;
$date=(date("d.m.y"));
$time=(date("H:i"));
$fp = @fopen("log.txt", "a");
@fputs($fp, "Дата: [ $date $time ] | Время генерации: $generationtime \n");
@fclose($fp);

 


Snow_Irbis

Что то не пойму откуда берется эта переменная  :facepalm:

if ($context['show_load_time'])
echo '
<p>', $txt['page_created'], $context['load_time'], $txt['seconds_with'], $context['load_queries'], $txt['queries'], '</p>';

$context и $txt пишут аррай, парсил по запятой по очереди и
$context и $txt, возвращает пустой результат. Думал подставить знак переменной к page_created, load_time, seconds_with, результат тот же, пустая строка.


Snow_Irbis

Огромное спасибо, все получилось  O0  Если вдруг кому то понадобиться так же как и мне записывать в файл данные о времени генерации страницы, количестве запросов в БД, адресе загружаемой страницы и даты/времени когда она загружается, то вот код скрипта:

$generationtime = $context['load_time'] ; /* Записываем в переменную время генерации страницы */
$dbrequests = $context['load_queries'] ;  /* Записываем в переменную количество запросов к БД */
$urlpageload = getenv("QUERY_STRING");    /* Записываем в переменную адрес загружаемой страницы */
$date=(date("d.m.y"));                    /* Записываем в переменную дату */
$time=(date("H:i"));                      /* Записываем в переменную время */
$fp = @fopen("log.txt", "a");
@fputs($fp, "$date $time; $urlpageload; $generationtime; $dbrequests \n");
@fclose($fp);

Вставить его нужно в index.template.php как и сказал ув.тов.Диггер, после вставки скрипта должно получится так:

// Show the load time?
if ($context['show_load_time'])
echo '
<p>', $txt['page_created'], $context['load_time'], $txt['seconds_with'], $context['load_queries'], $txt['queries'], '</p>';

$generationtime = $context['load_time'] ; /* Записываем в переменную время генерации страницы */
$dbrequests = $context['load_queries'] ;  /* Записываем в переменную количество запросов к БД */
$urlpageload = getenv("QUERY_STRING");    /* Записываем в переменную адрес загружаемой страницы */
$date=(date("d.m.y"));                    /* Записываем в переменную дату */
$time=(date("H:i"));                      /* Записываем в переменную время */
$fp = @fopen("log.txt", "a");
@fputs($fp, "$date $time; $urlpageload; $generationtime; $dbrequests \n");
@fclose($fp);

echo '

</div></div>', !empty($settings['forum_width']) ? '
</div>' : '';
}

function template_html_below()
{
global $context, $settings, $options, $scripturl, $txt, $modSettings;

echo '

</body></html>';
}

Данные будут записываться в файл log.txt в корневом каталоге сайта  :)


Snow_Irbis

Цитата: digger® от 26 июня 2017, 11:42:22Можно писать сразу в csv файл и потом ловко построить график в Excel.

Так Ексель и так его воспринимает как  csv файл, главное во время открытия указать разделитель точку с запятой  :)  Единственное что это по каким то причинам диаграмма не строится если в значении есть "." а не ","  :facepalm:  решил не заморачиваясь автозамену сделать  :)  Теперь буду смотреть и анализировать, уже было 6 и 13 секунд время генерации страницы, явно какие то косяки на хостинге



А какое время генерации считается оптимальным и максимально допустимым для движка SMF?