perf(php): add conditional debug logging to prevent gb logs
- add ROI_DEBUG constant (default false) to control debug output
- create roi_debug_log() function for conditional logging
- replace all error_log DEBUG calls with roi_debug_log
- keep ERROR logs always active for exception tracking
- to enable debug, add define('ROI_DEBUG', true) in wp-config.php
this prevents production logs from growing to gb sizes
(previous error.log was 4.8gb from constant debug output)
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -1,5 +1,27 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
|
// =============================================================================
|
||||||
|
// ROI THEME DEBUG MODE
|
||||||
|
// =============================================================================
|
||||||
|
// Para activar el modo debug, agregar en wp-config.php:
|
||||||
|
// define('ROI_DEBUG', true);
|
||||||
|
//
|
||||||
|
// IMPORTANTE: Mantener desactivado en producción para evitar logs de GB.
|
||||||
|
// =============================================================================
|
||||||
|
if (!defined('ROI_DEBUG')) {
|
||||||
|
define('ROI_DEBUG', false);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Log de debug condicional para ROI Theme.
|
||||||
|
* Solo escribe al log si ROI_DEBUG está activado.
|
||||||
|
*/
|
||||||
|
function roi_debug_log(string $message): void {
|
||||||
|
if (ROI_DEBUG) {
|
||||||
|
error_log($message);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// =============================================================================
|
// =============================================================================
|
||||||
// AUTOLOADER PARA COMPONENTES
|
// AUTOLOADER PARA COMPONENTES
|
||||||
// =============================================================================
|
// =============================================================================
|
||||||
@@ -181,7 +203,7 @@ function roi_render_component(string $componentName): string {
|
|||||||
global $wpdb;
|
global $wpdb;
|
||||||
|
|
||||||
// DEBUG: Trace component rendering
|
// DEBUG: Trace component rendering
|
||||||
error_log("ROI Theme DEBUG: roi_render_component called with: {$componentName}");
|
roi_debug_log("ROI Theme DEBUG: roi_render_component called with: {$componentName}");
|
||||||
|
|
||||||
try {
|
try {
|
||||||
// Obtener datos del componente desde BD normalizada
|
// Obtener datos del componente desde BD normalizada
|
||||||
@@ -297,9 +319,9 @@ function roi_render_component(string $componentName): string {
|
|||||||
$renderer = new \ROITheme\Public\Navbar\Infrastructure\Ui\NavbarRenderer($cssGenerator);
|
$renderer = new \ROITheme\Public\Navbar\Infrastructure\Ui\NavbarRenderer($cssGenerator);
|
||||||
break;
|
break;
|
||||||
case 'hero':
|
case 'hero':
|
||||||
error_log("ROI Theme DEBUG: Creating HeroRenderer");
|
roi_debug_log("ROI Theme DEBUG: Creating HeroRenderer");
|
||||||
$renderer = new \ROITheme\Public\Hero\Infrastructure\Ui\HeroRenderer($cssGenerator);
|
$renderer = new \ROITheme\Public\Hero\Infrastructure\Ui\HeroRenderer($cssGenerator);
|
||||||
error_log("ROI Theme DEBUG: HeroRenderer created successfully");
|
roi_debug_log("ROI Theme DEBUG: HeroRenderer created successfully");
|
||||||
break;
|
break;
|
||||||
|
|
||||||
// Componentes sin soporte de CSS Crítico (below-the-fold)
|
// Componentes sin soporte de CSS Crítico (below-the-fold)
|
||||||
@@ -339,13 +361,13 @@ function roi_render_component(string $componentName): string {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!$renderer) {
|
if (!$renderer) {
|
||||||
error_log("ROI Theme DEBUG: No renderer for {$componentName}");
|
roi_debug_log("ROI Theme DEBUG: No renderer for {$componentName}");
|
||||||
return '';
|
return '';
|
||||||
}
|
}
|
||||||
|
|
||||||
error_log("ROI Theme DEBUG: Calling render() for {$componentName}");
|
roi_debug_log("ROI Theme DEBUG: Calling render() for {$componentName}");
|
||||||
$output = $renderer->render($component);
|
$output = $renderer->render($component);
|
||||||
error_log("ROI Theme DEBUG: render() returned " . strlen($output) . " chars for {$componentName}");
|
roi_debug_log("ROI Theme DEBUG: render() returned " . strlen($output) . " chars for {$componentName}");
|
||||||
return $output;
|
return $output;
|
||||||
|
|
||||||
} catch (\Exception $e) {
|
} catch (\Exception $e) {
|
||||||
|
|||||||
Reference in New Issue
Block a user