From Nova Wiki

Nova: Debugtelemetry

модули debug

debug/telemetry.php

Предупреждение
Данный модуль при неправильном использовании может вызвать серьезные сбои в работе сайта, или даже нескольких серверов, вызвав ДОС из-за ошибки в настройках.
Модуль debug/telemetry.php помогает проводить отладку и тестирование кода удаленно или локально.
Модуль активизиурется, если глобальная переменная $NovaTelemetry==true. В процессе активации модуль выполняет запрос HTTP POST к URL, указанному в его настройках, и передает след. параметры:
obj[page]='ключ страницы на которой он запустился', obj[_SERVER]=/*содержимое $_SERVER/*, obj[_ENV]=/*$_ENV*/ В ответ можно отправить пустую строку или массив json с командами тестирования или отладки, вида:

[
{command:"Команда 1",data:{параметры команды 1},payload_init:"модификатор url для отправки отчета 1"},
...
{command:"Команда 2",data:{параметры команды 1},payload_init:"модификатор url для отправки отчета 2"},
]

Здесь:

Это может быть фрагмент URL вида "param1=value1&param2=value2" или хеш-массив {param1:value1,param2:value2}

Как это работает в-целом

Модуль инициализируется и выполняет запрос по адресу, заданному в настройках и таким образом инициализирует сессию телеметрии. В ответ он получает одну или несколько команд с параметрами и выполняет их. По мере срабатывания отправляются вызовы либо по адресу из настроек, либо по модифицированному адресу, полученному из payload_init и в ответ также могут быть получены новые наборы команд, котрые модуль также будет пытаться выполнить. Т.о. в результате получаем информацию о выполнении тех или иных частей кода, можем проводить отладку, запускать различные ветви тестирования.

Вызов телеметрии в блоке TCODE

Когда модуль телеметрии активен, он добавляет обработчик отправки и получения данных телеметрии: $_ENV['T'];
Пример:

code ...
/*<!--{
//отправим отладочные данные
$_ENV['T'](array('command'=>'log','page'=>'some_test_report_page','obj'=>array('foo'=>$foo,'bar'=>$bar)));
}-->*/
code ...

Дополнительные данные передаваемые при каждом вызове.

Retrieved from http://wiki.nova-cmf.cv.ua/index.php?n=Nova.Debugtelemetry
Page last modified on June 28, 2015, at 09:09 PM EST