├── .gitignore
├── Logger
├── Logger.php
├── LoggableInterface.php
├── Handler.php
└── DataLogger.php
├── view
└── base
│ ├── web
│ ├── images
│ │ ├── readme
│ │ │ ├── ajax.png
│ │ │ ├── cache.png
│ │ │ ├── hyva.png
│ │ │ ├── config.png
│ │ │ ├── database.png
│ │ │ ├── events.png
│ │ │ ├── homepage.png
│ │ │ ├── memory.png
│ │ │ ├── models.png
│ │ │ ├── plugins.png
│ │ │ ├── request.png
│ │ │ ├── callmap-main.png
│ │ │ ├── callmap-popup.png
│ │ │ ├── layout-render.png
│ │ │ ├── performance.png
│ │ │ ├── translation.png
│ │ │ └── layout-block-cache.png
│ │ ├── jquery-ui
│ │ │ ├── ui-icons_444444_256x240.png
│ │ │ ├── ui-icons_555555_256x240.png
│ │ │ ├── ui-icons_777620_256x240.png
│ │ │ ├── ui-icons_777777_256x240.png
│ │ │ ├── ui-icons_cc0000_256x240.png
│ │ │ └── ui-icons_ffffff_256x240.png
│ │ ├── collector
│ │ │ ├── customer.svg
│ │ │ ├── layout.svg
│ │ │ ├── memory.svg
│ │ │ ├── config.svg
│ │ │ ├── time.svg
│ │ │ ├── model.svg
│ │ │ ├── models.svg
│ │ │ ├── ajax.svg
│ │ │ ├── cache.svg
│ │ │ ├── database.svg
│ │ │ ├── logs.svg
│ │ │ ├── redirect.svg
│ │ │ ├── event.svg
│ │ │ ├── plugin.svg
│ │ │ └── translation.svg
│ │ ├── icon
│ │ │ ├── no.svg
│ │ │ ├── yes.svg
│ │ │ ├── close.svg
│ │ │ ├── menu.svg
│ │ │ ├── search.svg
│ │ │ └── settings.svg
│ │ └── magento.svg
│ └── js
│ │ └── callmap
│ │ └── extra-data.js
│ ├── layout
│ ├── clawrock_debug.xml
│ ├── debug_panel_cache.xml
│ ├── debug_panel_event.xml
│ ├── debug_panel_model.xml
│ ├── debug_panel_time.xml
│ ├── debug_panel_config.xml
│ ├── debug_panel_database.xml
│ ├── debug_panel_layout.xml
│ ├── debug_panel_plugin.xml
│ ├── debug_panel_request.xml
│ ├── debug_panel_translation.xml
│ ├── debug_profiler_info.xml
│ ├── debug_xhprof_detail.xml
│ ├── debug_panel_callmap.xml
│ └── debug_profiler_search.xml
│ ├── requirejs-config.js
│ ├── templates
│ ├── renderer
│ │ ├── layout
│ │ │ ├── graph.phtml
│ │ │ └── node.phtml
│ │ ├── redirect.phtml
│ │ ├── table.phtml
│ │ ├── trace
│ │ │ └── call.phtml
│ │ ├── trace.phtml
│ │ ├── parameters.phtml
│ │ ├── query
│ │ │ └── list.phtml
│ │ └── query.phtml
│ ├── menu
│ │ ├── settings.phtml
│ │ ├── cache.phtml
│ │ ├── config.phtml
│ │ ├── callmap.phtml
│ │ ├── request.phtml
│ │ ├── event.phtml
│ │ ├── time.phtml
│ │ ├── plugin.phtml
│ │ ├── layout.phtml
│ │ ├── database.phtml
│ │ ├── translation.phtml
│ │ └── model.phtml
│ ├── toolbar.phtml
│ ├── profiler.phtml
│ ├── toolbar
│ │ ├── time.phtml
│ │ ├── callmap.phtml
│ │ ├── memory.phtml
│ │ ├── translation.phtml
│ │ ├── ajax.phtml
│ │ ├── plugin.phtml
│ │ ├── event.phtml
│ │ ├── database.phtml
│ │ ├── layout.phtml
│ │ └── model.phtml
│ └── profiler
│ │ └── summary.phtml
│ └── page_layout
│ └── toolbar.xml
├── Model
├── Session.php
├── View
│ ├── Renderer
│ │ ├── RendererInterface.php
│ │ ├── VarRenderer.php
│ │ ├── RedirectRenderer.php
│ │ ├── ParametersRenderer.php
│ │ ├── TableRenderer.php
│ │ ├── QueryParametersRenderer.php
│ │ ├── TraceRenderer.php
│ │ ├── LayoutNodeRenderer.php
│ │ ├── TraceCallRenderer.php
│ │ ├── QueryListRenderer.php
│ │ └── QueryRenderer.php
│ ├── Summary.php
│ ├── Menu.php
│ ├── Xhprof.php
│ └── Search.php
├── Collector
│ ├── LateCollectorInterface.php
│ ├── LoggerCollectorInterface.php
│ ├── CollectorInterface.php
│ └── AjaxCollector.php
├── Url
│ └── ScopeResolver.php
├── Info
│ ├── CallmapInfo.php
│ ├── ExtensionInfo.php
│ ├── LayoutInfo.php
│ ├── MemoryInfo.php
│ ├── CustomerInfo.php
│ └── MagentoInfo.php
├── Storage
│ ├── ProfileMemoryStorage.php
│ └── HttpStorage.php
├── Config
│ ├── Source
│ │ ├── ErrorHandler.php
│ │ └── XhprofFlags.php
│ └── Database
│ │ └── ProfilerWriter.php
├── DataCollector.php
├── ValueObject
│ ├── Translation.php
│ ├── LoopModelAction.php
│ ├── EventObserver.php
│ ├── ModelAction.php
│ └── Plugin.php
├── Serializer
│ ├── CollectorSerializer.php
│ └── ProfileSerializer.php
└── Indexer
│ └── ProfileIndexer.php
├── registration.php
├── App
├── Action
│ ├── Context.php
│ └── Frontend
│ │ └── Context.php
├── AbstractAction.php
├── ConfigInterface.php
├── DefaultPath.php
├── Request
│ └── PathInfoProcessor.php
├── Config.php
├── Router
│ └── NoRouteHandler.php
└── Router.php
├── Exception
└── CollectorNotFoundException.php
├── Serializer
├── SerializerInterface.php
└── Serializer.php
├── etc
├── debug
│ ├── routes.xml
│ └── di.xml
├── frontend
│ └── routes.xml
├── adminhtml
│ ├── routes.xml
│ ├── di.xml
│ └── events.xml
├── module.xml
└── events.xml
├── Controller
├── Debug
│ ├── Profiler
│ │ ├── PHPInfo.php
│ │ ├── Toolbar.php
│ │ ├── Purge.php
│ │ └── Search.php
│ └── Cache
│ │ ├── Enable.php
│ │ ├── Disable.php
│ │ ├── Clean.php
│ │ └── Flush.php
└── Adminhtml
│ └── Profiler
│ └── Config.php
├── Observer
├── ValidateRedirect.php
├── DebugHandle.php
├── AllowedIP.php
├── Collector
│ ├── LayoutCollectorBeforeToHtml.php
│ └── LayoutCollectorAfterToHtml.php
├── BeforeSendResponse.php
└── Config
│ └── DatabaseProfiler.php
├── Plugin
├── Collector
│ ├── TimeCollectorPlugin.php
│ ├── EventCollectorPlugin.php
│ ├── TranslationCollectorPlugin.php
│ └── CacheCollectorPlugin.php
├── PageCache
│ └── KernelPlugin.php
├── ProfileRepository
│ └── RequestTimePlugin.php
└── ErrorHandler
│ └── WhoopsPlugin.php
├── Interception
├── Code
│ └── Generator
│ │ ├── Interceptor.php
│ │ └── SetupInterceptor.php
├── PluginDataCollector.php
└── CliProfiler.php
├── phpmd.xml
├── Console
└── Command
│ ├── DatabaseProfilerEnableCommand.php
│ └── DatabaseProfilerDisableCommand.php
├── Helper
├── Debug.php
├── Formatter.php
├── File.php
└── Injector.php
├── Api
├── Data
│ └── ProfileInterface.php
└── ProfileRepositoryInterface.php
├── composer.json
└── .travis.yml
/.gitignore:
--------------------------------------------------------------------------------
1 | /.idea/
2 | composer.lock
3 | /vendor
4 |
--------------------------------------------------------------------------------
/Logger/Logger.php:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4 | getNodes() as $node) : ?> 5 | = /* @noEscape */ $block->getLayoutNodeRenderer()->create(['node' => $node])->render(); ?> 6 | 7 |8 | -------------------------------------------------------------------------------- /view/base/web/images/collector/customer.svg: -------------------------------------------------------------------------------- 1 | 4 | -------------------------------------------------------------------------------- /Serializer/Serializer.php: -------------------------------------------------------------------------------- 1 | 2 |
| = $block->escapeHtml(__($block->getKeyLabel())); ?> | 6 |= $block->escapeHtml(__($block->getValueLabel())); ?> | 7 |
|---|---|
| = /* @noEscape */ $key ?> | 13 |= /* @noEscape */ $block->getVarRenderer()->create(['variable' => $value])->render(); ?> | 14 |
| = $block->escapeHtml(__('Key')); ?> | 6 |= $block->escapeHtml(__('Value')); ?> | 7 |
|---|---|
| = /* @noEscape */ $key ?> | 15 |= /* @noEscape */ $block->getVarRenderer()->create(['variable' => $value])->render(); ?> | 16 |
| = $block->escapeHtml(__('No data')); ?> | 21 ||
| # | 9 |= $block->escapeHtml(__('Query Count')) ?> | 10 |= $block->escapeHtml(__('Time')) ?> | 11 |= $block->escapeHtml(__('Info')) ?> | 12 |
|---|---|---|---|
| = /* @noEscape */ ++$index ?> | 26 |= /* @noEscape */ $count ?> | 27 |28 | = /* @noEscape */ $block->getFormatter()->microtime($query->getElapsedSecs()); ?> ms 29 | | 30 |= /* @noEscape */ $block->getQueryRenderer()->create(['query' => $query])->render(); ?> | 31 |