PHP code example of proklung / bitrix-webprofilier-module

1. Go to this page and download the library: Download proklung/bitrix-webprofilier-module library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

proklung / bitrix-webprofilier-module example snippets


use Bitrix\Main\Loader;

if (Loader:::init();
}

    'proklung.profilier' => [
        'value' => [
           'parameters' => [
                'container.dumper.inline_factories' => false,
                'compile_container_envs' => ['prod'],
                 // Директория, куда ляжет кэш модуля
                'cache_path' => '/bitrix/cache',
            ],
            'twig' => [
                'cache_dir' => null,
                'config' => [],
                'paths' => [$_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules/proklung.profilier/templates',
                            __DIR__ . '/../vendor/proklung/web-profilier-bundle/src/Bundle/Resources/view',
                    ],
            ],
            // Бандлы
            'bundles' => [],
             // Дополнительные data collectors
            'collectors' => [
                // ID сервиса  
                'fooCollector' => [
                    // Класс, объект или замыкание, возвращающее готовый объект
                    'className' => 'Proklung\Profilier\DataCollector\ModuleDataCollector',
                    'id' => 'module_collector', // Должно соответствовать тому, что возвращает getName
                    'template' => '/collectors/module.html.twig',
                    'priority' => 336
                ],
                // ID сервиса
                'metrics' => [
                    // Класс, объект или замыкание, возвращающее готовый объект
                    'className' => 'Prokl\WebProfilierBundle\Bitrix\Metric\MetrixDataCollector',
                    'id' => 'metrics',
                    'template' => '/collectors/metrics.html.twig',
                    'priority' => 336
                ],
            ],
            'transformers' => [
                // ID сервиса
                'metricsTransformer' => [
                    // Класс, объект или замыкание, возвращающее готовый объект
                    'className' => 'Prokl\WebProfilierBundle\Bitrix\Metric\MetricsDataCollectorTransformer',
                    'key' => 'metrics',
                ],
            ]
        ],
    ],


Параметр `cache_path` - путь, куда ляжет скомпилированный контейнер. Если не задано, то по умолчанию `/bitrix/cache/s1/proklung.profilier`.

Предполагается, что в системе так или иначе установлена переменная среды `DEBUG` в массиве `$_ENV`. Если нет, то по умолчанию
 полагается, что среда "отладочная".
 
Параметр (массив) `compile_container_envs` указывает окружения, при которых необходимо кэшировать контейнер.

Пока простая логика: `$_ENV["DEBUG"] === true` => окружение `dev`, иначе `prod`.