Compare commits
7 Commits
Author | SHA1 | Date |
---|---|---|
Abel Hoogeveen | 9fe370c3e4 | |
Abel Hoogeveen | 4d74474327 | |
Abel Hoogeveen | c5a19353d5 | |
Abel Hoogeveen | d88c7fccd5 | |
Abel Hoogeveen | a060d8bb66 | |
Abel Hoogeveen | 4dd45c56fd | |
Abel Hoogeveen | bb6fa39d90 |
|
@ -1,7 +1,7 @@
|
|||
FuzeWorks - Readme
|
||||
===================
|
||||
|
||||
Version 1.2.0
|
||||
Version 1.3.0
|
||||
|
||||
A versatile PHP Framework built to perform.
|
||||
|
||||
|
|
|
@ -1,25 +1,18 @@
|
|||
{
|
||||
"name": "fuzeworks/tracycomponent",
|
||||
"description": "FuzeWorks Framework Tracy Debugger Component",
|
||||
"homepage": "https://techfuze.net/fuzeworks",
|
||||
"homepage": "https://i15.nl/fuzeworks",
|
||||
"license": ["MIT"],
|
||||
"authors": [
|
||||
{
|
||||
"name": "TechFuze",
|
||||
"homepage": "https://techfuze.net"
|
||||
},
|
||||
{
|
||||
"name": "FuzeWorks Community",
|
||||
"homepage": "https://techfuze.net/fuzeworks/contributors"
|
||||
"name": "Abel Hoogeveen",
|
||||
"homepage": "https://i15.nl"
|
||||
}
|
||||
],
|
||||
"require": {
|
||||
"php": ">=7.1.0",
|
||||
"tracy/tracy": "2.5.*",
|
||||
"fuzeworks/core": "1.2.0-RC2"
|
||||
},
|
||||
"require-dev": {
|
||||
"phpunit/phpunit": "^7"
|
||||
"php": ">=7.4.0",
|
||||
"tracy/tracy": "2.8.*",
|
||||
"fuzeworks/core": "~1.3.0"
|
||||
},
|
||||
"autoload": {
|
||||
"psr-4": {
|
||||
|
|
|
@ -35,6 +35,7 @@
|
|||
*/
|
||||
|
||||
namespace FuzeWorks;
|
||||
use FuzeWorks\Exception\EventException;
|
||||
use FuzeWorks\Exception\InvalidArgumentException;
|
||||
use Tracy\Debugger;
|
||||
|
||||
|
@ -59,6 +60,13 @@ class TracyComponent implements iComponent
|
|||
*/
|
||||
protected static $enableTracy = true;
|
||||
|
||||
/**
|
||||
* Set to true after tracy has been started
|
||||
*
|
||||
* @var bool $enabled
|
||||
*/
|
||||
protected static $enabled = false;
|
||||
|
||||
public function getName(): string
|
||||
{
|
||||
return 'TracyComponent';
|
||||
|
@ -75,7 +83,7 @@ class TracyComponent implements iComponent
|
|||
* Enables Tracy when requested to do so. Disables FuzeWorks Logger.
|
||||
*
|
||||
* @param Factory $container
|
||||
* @throws Exception\EventException
|
||||
* @throws EventException
|
||||
*/
|
||||
public function onCreateContainer(Factory $container)
|
||||
{
|
||||
|
@ -86,23 +94,41 @@ class TracyComponent implements iComponent
|
|||
return;
|
||||
}
|
||||
|
||||
// Disable screenLog
|
||||
Events::addListener(function($event){
|
||||
$event->setCancelled(true);
|
||||
}, 'screenLogEvent');
|
||||
|
||||
// Enable Tracy. Use DEVELOPMENT mode when logger is enabled
|
||||
if ($container->logger->isEnabled() == true)
|
||||
$debuggerEnabled = $container->logger->isEnabled();
|
||||
if ($debuggerEnabled)
|
||||
Debugger::enable(Debugger::DEVELOPMENT, realpath(Core::$logDir));
|
||||
else
|
||||
Debugger::enable(Debugger::PRODUCTION, realpath(Core::$logDir));
|
||||
|
||||
// Disable FuzeWorks Logger
|
||||
$container->logger->disable();
|
||||
Logger::disableScreenLog();
|
||||
|
||||
// Reset exception handlers
|
||||
set_error_handler(array('\FuzeWorks\Core', 'errorHandler'), E_ALL);
|
||||
set_exception_handler(array('\FuzeWorks\Core', 'exceptionHandler'));
|
||||
|
||||
// Register exception handler
|
||||
Core::addErrorHandler(['\Tracy\Debugger', 'errorHandler'], Priority::LOW);
|
||||
|
||||
// Tracy has an annoying default error 500 page.
|
||||
// This page will be suppressed when in production mode.
|
||||
if ($debuggerEnabled)
|
||||
{
|
||||
Core::addExceptionHandler(['\Tracy\Debugger', 'exceptionHandler'], Priority::LOW);
|
||||
}
|
||||
else
|
||||
Core::addExceptionHandler([$this, 'exceptionHandler'], Priority::LOW);
|
||||
|
||||
// Enable bridges
|
||||
GitTracyBridge::register();
|
||||
LoggerTracyBridge::register();
|
||||
self::$enabled = true;
|
||||
}
|
||||
|
||||
public function exceptionHandler($exception, $exit = true)
|
||||
{
|
||||
Debugger::getLogger()->log($exception, \Tracy\Logger::EXCEPTION);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -178,6 +204,6 @@ class TracyComponent implements iComponent
|
|||
*/
|
||||
public static function isEnabled(): bool
|
||||
{
|
||||
return self::$enableTracy;
|
||||
return self::$enabled;
|
||||
}
|
||||
}
|
|
@ -35,48 +35,12 @@
|
|||
*/
|
||||
?>
|
||||
<style class="tracy-debug">
|
||||
|
||||
|
||||
|
||||
</style>
|
||||
|
||||
<div class="fuzeworks-LoggerPanel">
|
||||
<h1> Logger</h1>
|
||||
|
||||
<div class="tracy-inner">
|
||||
<table>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>#</th>
|
||||
<th>Type</th>
|
||||
<th>Message</th>
|
||||
<th>File</th>
|
||||
<th>Line</th>
|
||||
<th>Timing</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
||||
<tbody>
|
||||
<?php foreach ($logs as $key => $log): ?>
|
||||
<?php if ($log['type'] === 'LEVEL_STOP')
|
||||
{
|
||||
continue;
|
||||
}
|
||||
elseif ($log['type'] === 'LEVEL_START')
|
||||
{
|
||||
$log['type'] = 'CINFO';
|
||||
}
|
||||
?>
|
||||
<tr class="<?php echo($log['type']); ?>">
|
||||
<td><?php echo( htmlspecialchars($key)); ?></td>
|
||||
<td><?php echo( htmlspecialchars ($log['type'])); ?></td>
|
||||
<td><?php echo( htmlspecialchars ($log['message'])); ?></td>
|
||||
<td><?php echo( empty($log['logFile']) ? 'x' : htmlspecialchars ($log['logFile'])); ?></td>
|
||||
<td><?php echo( empty($log['logLine']) ? 'x' : htmlspecialchars ($log['logLine'])); ?></td>
|
||||
<td><?php echo(round($log['runtime'] * 1000, 4)); ?> ms</td>
|
||||
</tr>
|
||||
<?php endforeach ?>
|
||||
</tbody>
|
||||
</table>
|
||||
<?php \FuzeWorks\Logger::logToScreen(); ?>
|
||||
</div>
|
||||
</div>
|
||||
|
|
Loading…
Reference in New Issue