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
|
||||
|
||||
// =============================================================================
|
||||
// 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
|
||||
// =============================================================================
|
||||
@@ -181,7 +203,7 @@ function roi_render_component(string $componentName): string {
|
||||
global $wpdb;
|
||||
|
||||
// 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 {
|
||||
// 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);
|
||||
break;
|
||||
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);
|
||||
error_log("ROI Theme DEBUG: HeroRenderer created successfully");
|
||||
roi_debug_log("ROI Theme DEBUG: HeroRenderer created successfully");
|
||||
break;
|
||||
|
||||
// Componentes sin soporte de CSS Crítico (below-the-fold)
|
||||
@@ -339,13 +361,13 @@ function roi_render_component(string $componentName): string {
|
||||
}
|
||||
|
||||
if (!$renderer) {
|
||||
error_log("ROI Theme DEBUG: No renderer for {$componentName}");
|
||||
roi_debug_log("ROI Theme DEBUG: No renderer for {$componentName}");
|
||||
return '';
|
||||
}
|
||||
|
||||
error_log("ROI Theme DEBUG: Calling render() for {$componentName}");
|
||||
roi_debug_log("ROI Theme DEBUG: Calling render() for {$componentName}");
|
||||
$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;
|
||||
|
||||
} catch (\Exception $e) {
|
||||
|
||||
Reference in New Issue
Block a user